Skip to content

window: Stop event propagation for events that show gnome-shell window-menu

Jonas Dreßler requested to merge verdre/mutter:fix-shell-window-menu into main

meta_window_handle_ungrabbed_event() triggers the show of the window menu in gnome-shell via meta_window_show_menu() on hold of Meta + right mouse button click.

Since meta_display_handle_event() was refactored lately and now forwards a lot more events to Clutter (including the one triggering the window menu), gnome-shell now sees this event after the menu has opened, figures that the source-actor is outside of the menu, and immediately closes the menu again.

This is the correct behavior from the PopupMenuManager on the gnome-shell side, it is the responsibility of the event handler that opens the menu (aka meta_window_handle_ungrabbed_event()) to return CLUTTER_EVENT_STOP and stop event propagation.

So fix this issue by adding a return value to meta_window_handle_ungrabbed_event() and stopping event propagation in case the event opened the window menu.

Merge request reports