In make_lispy_position fix Bug#50993 in rudimentary fashion
* src/keyboard.c (make_lispy_position): Do not set posn to tool- or tab-bar when track_mouse is enabled (Bug#50993).
This commit is contained in:
parent
0aa52e94f3
commit
8153f70b9c
1 changed files with 14 additions and 1 deletions
|
@ -5122,7 +5122,20 @@ make_lispy_position (struct frame *f, Lisp_Object x, Lisp_Object y,
|
|||
#endif
|
||||
)
|
||||
{
|
||||
posn = EQ (window_or_frame, f->tab_bar_window) ? Qtab_bar : Qtool_bar;
|
||||
/* FIXME: While track_mouse is non-nil, we do not report this
|
||||
event as something that happened on the tool or tab bar since
|
||||
that would break mouse dragging operations that originate from
|
||||
an ordinary window beneath and expect the window to auto-scroll
|
||||
as soon as the mouse cursor appears above or beneath it
|
||||
(Bug#50993). Since this "fix" might break track_mouse based
|
||||
operations originating from the tool or tab bar itself, such
|
||||
operations should set track_mouse to some special value that
|
||||
would be recognized by the following check.
|
||||
|
||||
This issue should be properly handled by 'mouse-drag-track' and
|
||||
friends, so the below is only a temporary workaround. */
|
||||
if (NILP (track_mouse))
|
||||
posn = EQ (window_or_frame, f->tab_bar_window) ? Qtab_bar : Qtool_bar;
|
||||
/* Kludge alert: for mouse events on the tab bar and tool bar,
|
||||
keyboard.c wants the frame, not the special-purpose window
|
||||
we use to display those, and it wants frame-relative
|
||||
|
|
Loading…
Add table
Reference in a new issue