Bug 1177943 - Part 3. Look up dictionary using new 10.8+ interface. r=masayuki draft
authorMakoto Kato <m_kato@ga2.so-net.ne.jp>
Tue, 26 Apr 2016 18:04:41 +0900
changeset 368217 a20d80a8a367fa2f6c4294fb5a1a2eb3a0d18e88
parent 368216 3976d86ec5dbc005399f7171eafdd1c15d0619f6
child 368218 948cf636fd7024cb65176e2de16f28d424d4f98e
push id18471
push userm_kato@ga2.so-net.ne.jp
push dateWed, 18 May 2016 11:49:22 +0000
reviewersmasayuki
bugs1177943
milestone49.0a1
Bug 1177943 - Part 3. Look up dictionary using new 10.8+ interface. r=masayuki From 10.8+, it has new API to look up dictionary async. So I use it. MozReview-Commit-ID: 9kWEsCib4R5
widget/cocoa/nsChildView.mm
--- a/widget/cocoa/nsChildView.mm
+++ b/widget/cocoa/nsChildView.mm
@@ -5448,16 +5448,27 @@ PanGestureTypeForEvent(NSEvent* aEvent)
 
 - (NSRect)firstRectForCharacterRange:(NSRange)aRange
                          actualRange:(NSRangePointer)actualRange
 {
   NS_ENSURE_TRUE(mTextInputHandler, NSMakeRect(0.0, 0.0, 0.0, 0.0));
   return mTextInputHandler->FirstRectForCharacterRange(aRange, actualRange);
 }
 
+- (void)quickLookWithEvent:(NSEvent*)event
+{
+  // Show dictionary by current point
+  WidgetContentCommandEvent
+    contentCommandEvent(true, eContentCommandLookUpDictionary, mGeckoChild);
+  NSPoint point = [self convertPoint:[event locationInWindow] fromView:nil];
+  contentCommandEvent.mRefPoint = mGeckoChild->CocoaPointsToDevPixels(point);
+  mGeckoChild->DispatchWindowEvent(contentCommandEvent);
+  // The widget might have been destroyed.
+}
+
 - (NSInteger)windowLevel
 {
   NS_OBJC_BEGIN_TRY_ABORT_BLOCK_RETURN;
 
   NS_ENSURE_TRUE(mTextInputHandler, [[self window] level]);
   return mTextInputHandler->GetWindowLevel();
 
   NS_OBJC_END_TRY_ABORT_BLOCK_RETURN(NSNormalWindowLevel);