Changeset 195451 in webkit
- Timestamp:
- Jan 22, 2016 8:50:17 AM (8 years ago)
- Location:
- trunk/Source
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/mac/ChangeLog
r195412 r195451 1 2016-01-21 Brent Fulgham <bfulgham@apple.com> 2 3 [Mac] Tooltips do not honor some types of obscuring windows 4 https://bugs.webkit.org/show_bug.cgi?id=153263 5 <rdar://problem/21423972> 6 7 Reviewed by Simon Fraser. 8 9 * WebView/WebHTMLView.mm: 10 (-[WebHTMLView _updateMouseoverWithEvent:]): When the WebView is not the key window, don't 11 display tooltips. 12 1 13 2016-01-19 Ada Chan <adachan@apple.com> 2 14 -
trunk/Source/WebKit/mac/WebView/WebHTMLView.mm
r194496 r195451 1 1 /* 2 * Copyright (C) 2005 , 2006, 2007, 2008, 2009, 2010Apple Inc. All rights reserved.2 * Copyright (C) 2005-2010, 2016 Apple Inc. All rights reserved. 3 3 * (C) 2006, 2007 Graham Dennis (graham.dennis@gmail.com) 4 4 * … … 2137 2137 ) { 2138 2138 coreFrame->eventHandler().mouseMoved(event, [[self _webView] _pressureEvent]); 2139 } else 2139 } else { 2140 [self removeAllToolTips]; 2140 2141 coreFrame->eventHandler().passMouseMovedEventToScrollbars(event, [[self _webView] _pressureEvent]); 2142 } 2141 2143 } 2142 2144 -
trunk/Source/WebKit2/ChangeLog
r195450 r195451 1 2016-01-21 Brent Fulgham <bfulgham@apple.com> 2 3 [Mac] Tooltips do not honor some types of obscuring windows 4 https://bugs.webkit.org/show_bug.cgi?id=153263 5 <rdar://problem/21423972> 6 7 Reviewed by Simon Fraser. 8 9 Recognize that the current WebView is obscured by comparing the current event's Window Number against 10 the Window Number of the current WebView. If they don't match, something is in the way. 11 12 * UIProcess/Cocoa/WebViewImpl.h: 13 * UIProcess/Cocoa/WebViewImpl.mm: 14 (WebKit::WebViewImpl::windowIsFrontWindowUnderMouse): Added. 15 * UIProcess/PageClient.h: 16 (WebKit::PageClient::windowIsFrontWindowUnderMouse): 17 * UIProcess/WebPageProxy.cpp: 18 (WebKit::WebPageProxy::handleMouseEvent): Check if the current WebView is obscured. If it 19 is, clear the tooltip and return. 20 * UIProcess/mac/PageClientImpl.h: 21 * UIProcess/mac/PageClientImpl.mm: 22 (WebKit::PageClientImpl::windowIsFrontWindowUnderMouse): Added. 23 1 24 2016-01-22 Youenn Fablet <youenn.fablet@crf.canon.fr> 2 25 -
trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.h
r195421 r195451 479 479 void webViewImplAdditionsWillDestroyView(); 480 480 481 bool windowIsFrontWindowUnderMouse(NSEvent *); 482 481 483 #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101200 && USE(APPLE_INTERNAL_SDK) 482 484 #import <WebKitAdditions/WebViewImplAdditions.h> -
trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.mm
r195421 r195451 1 1 /* 2 * Copyright (C) 2015 Apple Inc. All rights reserved.2 * Copyright (C) 2015-2016 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 3973 3973 } 3974 3974 3975 bool WebViewImpl::windowIsFrontWindowUnderMouse(NSEvent *event) 3976 { 3977 NSRect eventScreenPosition = [m_view.window convertRectToScreen:NSMakeRect(event.locationInWindow.x, event.locationInWindow.y, 0, 0)]; 3978 NSInteger eventWindowNumber = [NSWindow windowNumberAtPoint:eventScreenPosition.origin belowWindowWithWindowNumber:0]; 3979 3980 return m_view.window.windowNumber != eventWindowNumber; 3981 } 3982 3983 3975 3984 } // namespace WebKit 3976 3985 -
trunk/Source/WebKit2/UIProcess/PageClient.h
r195231 r195451 1 1 /* 2 * Copyright (C) 2010, 2011 Apple Inc. All rights reserved.2 * Copyright (C) 2010, 2011, 2016 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 60 60 class DrawingAreaProxy; 61 61 class NativeWebKeyboardEvent; 62 class NativeWebMouseEvent; 62 63 class RemoteLayerTreeTransaction; 63 64 class ViewSnapshot; … … 358 359 359 360 virtual void didRestoreScrollPosition() = 0; 361 362 virtual bool windowIsFrontWindowUnderMouse(const NativeWebMouseEvent&) { return false; } 360 363 }; 361 364 -
trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp
r195295 r195451 1 1 /* 2 * Copyright (C) 2010, 2011, 2015 Apple Inc. All rights reserved.2 * Copyright (C) 2010, 2011, 2015-2016 Apple Inc. All rights reserved. 3 3 * Copyright (C) 2012 Intel Corporation. All rights reserved. 4 4 * … … 1668 1668 return; 1669 1669 1670 if (m_pageClient.windowIsFrontWindowUnderMouse(event)) 1671 setToolTip(String()); 1672 1670 1673 // NOTE: This does not start the responsiveness timer because mouse move should not indicate interaction. 1671 1674 if (event.type() != WebEvent::MouseMove) -
trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.h
r192898 r195451 1 1 /* 2 * Copyright (C) 2010, 2011 Apple Inc. All rights reserved.2 * Copyright (C) 2010, 2011, 2016 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 240 240 241 241 virtual void didRestoreScrollPosition() override; 242 virtual bool windowIsFrontWindowUnderMouse(const NativeWebMouseEvent&) override; 242 243 }; 243 244 -
trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.mm
r194318 r195451 1 1 /* 2 * Copyright (C) 2010, 2011 Apple Inc. All rights reserved.2 * Copyright (C) 2010, 2011, 2016 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 35 35 #import "NativeWebGestureEvent.h" 36 36 #import "NativeWebKeyboardEvent.h" 37 #import "NativeWebMouseEvent.h" 37 38 #import "NativeWebWheelEvent.h" 38 39 #import "NavigationState.h" … … 831 832 } 832 833 834 bool PageClientImpl::windowIsFrontWindowUnderMouse(const NativeWebMouseEvent& event) 835 { 836 return m_impl->windowIsFrontWindowUnderMouse(event.nativeEvent()); 837 } 838 833 839 } // namespace WebKit 834 840
Note: See TracChangeset
for help on using the changeset viewer.