⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 248459 in webkit


Ignore:
Timestamp:
Aug 8, 2019, 10:01:24 PM (7 years ago)
Author:
Kocsen Chung
Message:

Cherry-pick r248455. rdar://problem/54109873

[iOS WK2] Hide previews when an inner overflow or frame scrollview scrolls
https://bugs.webkit.org/show_bug.cgi?id=200552
rdar://problem/54086338

Reviewed by Wenson Hsieh.

Give UITargetedPreview the UIScrollView that the target element is inside of,
so it can clean up if the user starts to scroll that view.

  • Platform/spi/ios/UIKitSPI.h:
  • UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView _createTargetedPreviewIfPossible]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248455 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Location:
branches/safari-608.1-branch/Source/WebKit
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/safari-608.1-branch/Source/WebKit/ChangeLog

    r248458 r248459  
     12019-08-08  Kocsen Chung  <kocsen_chung@apple.com>
     2
     3        Cherry-pick r248455. rdar://problem/54109873
     4
     5    [iOS WK2] Hide previews when an inner overflow or frame scrollview scrolls
     6    https://bugs.webkit.org/show_bug.cgi?id=200552
     7    rdar://problem/54086338
     8   
     9    Reviewed by Wenson Hsieh.
     10   
     11    Give UITargetedPreview the UIScrollView that the target element is inside of,
     12    so it can clean up if the user starts to scroll that view.
     13   
     14    * Platform/spi/ios/UIKitSPI.h:
     15    * UIProcess/ios/WKContentViewInteraction.mm:
     16    (-[WKContentView _createTargetedPreviewIfPossible]):
     17   
     18   
     19    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248455 268f45cc-cd09-0410-ab3c-d52691b4dbfc
     20
     21    2019-08-08  Simon Fraser  <simon.fraser@apple.com>
     22
     23            [iOS WK2] Hide previews when an inner overflow or frame scrollview scrolls
     24            https://bugs.webkit.org/show_bug.cgi?id=200552
     25            rdar://problem/54086338
     26
     27            Reviewed by Wenson Hsieh.
     28
     29            Give UITargetedPreview the UIScrollView that the target element is inside of,
     30            so it can clean up if the user starts to scroll that view.
     31
     32            * Platform/spi/ios/UIKitSPI.h:
     33            * UIProcess/ios/WKContentViewInteraction.mm:
     34            (-[WKContentView _createTargetedPreviewIfPossible]):
     35
    1362019-08-08  Kocsen Chung  <kocsen_chung@apple.com>
    237
  • branches/safari-608.1-branch/Source/WebKit/Platform/spi/ios/UIKitSPI.h

    r247618 r248459  
    113113#endif
    114114
     115#if __has_include(<UIKit/UITargetedPreview_Private.h>)
     116#import <UIKit/UITargetedPreview_Private.h>
     117#endif
     118
    115119#else // USE(APPLE_INTERNAL_SDK)
    116120
     
    11551159#endif
    11561160
     1161#if USE(UICONTEXTMENU)
     1162@interface UITargetedPreview (Radar54086338)
     1163@property (nonatomic, strong, setter=_setOverridePositionTrackingView:) UIView *overridePositionTrackingView;
     1164@end
     1165#endif // USE(UICONTEXTMENU)
     1166
    11571167@interface UIResponder ()
    11581168- (UIResponder *)firstResponder;
  • branches/safari-608.1-branch/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm

    r248429 r248459  
    81538153        targetedPreview = createFallbackTargetedPreview(self, self.containerViewForTargetedPreviews, _positionInformation.bounds);
    81548154
     8155    if (_positionInformation.containerScrollingNodeID) {
     8156        UIScrollView *positionTrackingView = _webView.scrollView;
     8157        if (auto* scrollingCoordinator = _page->scrollingCoordinatorProxy())
     8158            positionTrackingView = scrollingCoordinator->scrollViewForScrollingNodeID(_positionInformation.containerScrollingNodeID);
     8159
     8160        if ([targetedPreview respondsToSelector:@selector(_setOverridePositionTrackingView:)])
     8161            [targetedPreview _setOverridePositionTrackingView:positionTrackingView];
     8162    }
     8163
    81558164    _contextMenuInteractionTargetedPreview = WTFMove(targetedPreview);
    81568165    return _contextMenuInteractionTargetedPreview.get();
Note: See TracChangeset for help on using the changeset viewer.