mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-04-26 00:01:47 -07:00
Fix selecting text and releasing the mouse buttons above the toolbar
* src/xterm.c (handle_one_xevent): Don't send ButtonRelease events to tool bars if there is no selected tool bar item.
This commit is contained in:
parent
6a480c830b
commit
60f66cc2a2
1 changed files with 13 additions and 2 deletions
15
src/xterm.c
15
src/xterm.c
|
|
@ -15812,7 +15812,9 @@ handle_one_xevent (struct x_display_info *dpyinfo,
|
|||
int y = event->xbutton.y;
|
||||
|
||||
window = window_from_coordinates (f, x, y, 0, true, true);
|
||||
tool_bar_p = EQ (window, f->tool_bar_window);
|
||||
tool_bar_p = (EQ (window, f->tool_bar_window)
|
||||
&& (event->xbutton.type != ButtonRelease
|
||||
|| f->last_tool_bar_item != -1));
|
||||
|
||||
if (tool_bar_p && event->xbutton.button < 4)
|
||||
handle_tool_bar_click
|
||||
|
|
@ -17200,7 +17202,16 @@ handle_one_xevent (struct x_display_info *dpyinfo,
|
|||
int y = bv.y;
|
||||
|
||||
window = window_from_coordinates (f, x, y, 0, true, true);
|
||||
tool_bar_p = EQ (window, f->tool_bar_window);
|
||||
/* Ignore button release events if the mouse
|
||||
wasn't previously pressed on the tool bar.
|
||||
We do this because otherwise selecting some
|
||||
text with the mouse and then releasing it on
|
||||
the tool bar doesn't stop selecting text,
|
||||
since the tool bar eats the button up
|
||||
event. */
|
||||
tool_bar_p = (EQ (window, f->tool_bar_window)
|
||||
&& (xev->evtype != XI_ButtonRelease
|
||||
|| f->last_tool_bar_item != -1));
|
||||
|
||||
if (tool_bar_p && xev->detail < 4)
|
||||
handle_tool_bar_click_with_device
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue