Commit 96c8b65e authored by Jan Djärv's avatar Jan Djärv

* nsterm.m (sendEvent:): Skip mouse moved if no dialog and no Emacs

frame have focus.

Fixes: debbugs:14895
parent 75bdb32a
2013-07-21 Jan Djärv <jan.h.d@swipnet.se>
* nsterm.m (sendEvent:): Skip mouse moved if no dialog and no Emacs
frame have focus (Bug#14895).
2013-07-21 Paul Eggert <eggert@cs.ucla.edu>
Avoid vfork-related deadlock more cleanly.
......
......@@ -4416,6 +4416,7 @@ - (void)sendEvent: (NSEvent *)theEvent
{
int type = [theEvent type];
NSWindow *window = [theEvent window];
/* NSTRACE (sendEvent); */
/*fprintf (stderr, "received event of type %d\t%d\n", type);*/
......@@ -4469,6 +4470,23 @@ - (void)sendEvent: (NSEvent *)theEvent
}
}
#ifdef NS_IMPL_COCOA
/* If no dialog and none of our frames have focus and it is a move, skip it.
It is a mouse move in an auxillary menu, i.e. on the top right on OSX,
such as Wifi, sound, date or similar.
This prevents "spooky" highlightning in the frame under the menu. */
if (type == NSMouseMoved && [NSApp modalWindow] == nil)
{
struct ns_display_info *di;
BOOL has_focus = NO;
for (di = x_display_list; ! has_focus && di; di = di->next)
has_focus = di->x_focus_frame != 0;
if (! has_focus)
return;
}
#endif
[super sendEvent: theEvent];
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment