more specific solution to tooltips appearing on neighboring views, refs #15072

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73642 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor 2013-03-11 10:08:19 +00:00
parent 2be6dfe6c5
commit bc6626eb73
2 changed files with 9 additions and 2 deletions

View File

@ -3590,6 +3590,13 @@ void wxGenericTreeCtrl::OnMouse( wxMouseEvent &event )
wxTreeEvent
hevent(wxEVT_COMMAND_TREE_ITEM_GETTOOLTIP, this, hoverItem);
// setting a tooltip upon leaving a view is getting the tooltip displayed
// on the neighbouring view ...
#ifdef __WXOSX__
if ( event.Leaving() )
SetToolTip(NULL);
else
#endif
if ( GetEventHandler()->ProcessEvent(hevent) )
{
// If the user permitted the tooltip change, update it, otherwise

View File

@ -1180,7 +1180,7 @@ void wxWidgetCocoaImpl::mouseEvent(WX_NSEvent event, WXWidget slf, void *_cmd)
{
// we are getting moved events for all windows in the hierarchy, not something wx expects
// therefore we only handle it for the deepest child in the hierarchy
if ( 1 /* [event type] == NSMouseMoved */ )
if ( [event type] == NSMouseMoved )
{
NSView* hitview = [[[slf window] contentView] hitTest:[event locationInWindow]];
if ( hitview == NULL || hitview != slf)
@ -2522,7 +2522,7 @@ void wxWidgetCocoaImpl::InstallEventHandler( WXWidget control )
}
NSTrackingAreaOptions options = NSTrackingMouseEnteredAndExited|NSTrackingCursorUpdate|NSTrackingMouseMoved|NSTrackingActiveAlways|NSTrackingInVisibleRect;
NSTrackingArea* area = [[NSTrackingArea alloc] initWithRect: NSZeroRect options: options owner: m_osxView userInfo: nil];
NSTrackingArea* area = [[NSTrackingArea alloc] initWithRect: NSZeroRect options: options owner: m_osxView userInfo: nil];
[m_osxView addTrackingArea: area];
[area release];
}