Title: [176342] branches/safari-600.3-branch/Source/WebKit2
- Revision
- 176342
- Author
- [email protected]
- Date
- 2014-11-19 14:10:52 -0800 (Wed, 19 Nov 2014)
Log Message
Merge r176238. rdar://problem/18990674
Modified Paths
Diff
Modified: branches/safari-600.3-branch/Source/WebKit2/ChangeLog (176341 => 176342)
--- branches/safari-600.3-branch/Source/WebKit2/ChangeLog 2014-11-19 22:07:48 UTC (rev 176341)
+++ branches/safari-600.3-branch/Source/WebKit2/ChangeLog 2014-11-19 22:10:52 UTC (rev 176342)
@@ -1,5 +1,25 @@
2014-11-19 Dana Burkart <[email protected]>
+ Merge r176238. rdar://problem/18990674
+
+ 2014-11-17 Conrad Shultz <[email protected]>
+
+ Page previews should be loaded sooner
+ https://bugs.webkit.org/show_bug.cgi?id=138814
+
+ Reviewed by Tim Horton.
+
+ * UIProcess/mac/WKActionMenuController.mm:
+ (-[WKActionMenuController willOpenMenu:withEvent:]):
+ Send -_createPreviewPopover..
+ (-[WKActionMenuController _previewURLFromActionMenu:]):
+ Relocate some logic to the new -_createPreviewPopover; gate early return on popover visibility.
+ (-[WKActionMenuController _createPreviewPopover]):
+ Renamed from -_createPreviewPopoverForURL:originRect:; explicitly send -loadView to warm up the preview view.
+ (-[WKActionMenuController _createPreviewPopoverForURL:originRect:]): Deleted.
+
+2014-11-19 Dana Burkart <[email protected]>
+
Merge r176237. rdar://problem/18900839
2014-11-17 Beth Dakin <[email protected]>
Modified: branches/safari-600.3-branch/Source/WebKit2/UIProcess/mac/WKActionMenuController.mm (176341 => 176342)
--- branches/safari-600.3-branch/Source/WebKit2/UIProcess/mac/WKActionMenuController.mm 2014-11-19 22:07:48 UTC (rev 176341)
+++ branches/safari-600.3-branch/Source/WebKit2/UIProcess/mac/WKActionMenuController.mm 2014-11-19 22:10:52 UTC (rev 176342)
@@ -210,6 +210,9 @@
}
if (![self isMenuForTextContent]) {
+#if WK_API_ENABLED
+ [self _createPreviewPopover];
+#endif
_page->clearSelection();
return;
}
@@ -320,23 +323,28 @@
- (void)_previewURLFromActionMenu:(id)sender
{
+ ASSERT(_previewPopover);
+
// We might already have a preview showing if the menu item was highlighted earlier.
- if (_previewPopover)
+ if ([_previewPopover isShown])
return;
RefPtr<WebHitTestResult> hitTestResult = [self _webHitTestResult];
- NSURL *url = "" _web_URLWithWTFString:hitTestResult->absoluteLinkURL()];
NSRect originRect = hitTestResult->elementBoundingBox();
- [self _createPreviewPopoverForURL:url originRect:originRect];
[_previewPopover showRelativeToRect:originRect ofView:_wkView preferredEdge:NSMaxYEdge];
}
-- (void)_createPreviewPopoverForURL:(NSURL *)url originRect:(NSRect)originRect
+- (void)_createPreviewPopover
{
+ RefPtr<WebHitTestResult> hitTestResult = [self _webHitTestResult];
+ NSURL *url = "" _web_URLWithWTFString:hitTestResult->absoluteLinkURL()];
+ NSRect originRect = hitTestResult->elementBoundingBox();
+
NSSize popoverSize = [self _preferredSizeForPopoverPresentedFromOriginRect:originRect];
CGFloat actualPopoverToViewScale = popoverSize.width / NSWidth(_wkView.bounds);
_previewViewController = adoptNS([[WKPagePreviewViewController alloc] initWithPageURL:url mainViewSize:_wkView.bounds.size popoverToViewScale:actualPopoverToViewScale]);
_previewViewController->_delegate = self;
+ [_previewViewController loadView];
_previewPopover = adoptNS([[NSPopover alloc] init]);
[_previewPopover setBehavior:NSPopoverBehaviorApplicationDefined];
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes