mutter/src/core
Olivier Fourdan 76f2579e44 keybinding: Check for handler functions as well
With the addition of the locate-pointer special keybinding (defaults to
the [Control] key), we have now two separate special modifier keys which
can be triggered separately, one for the locate-pointer action and
another one for overlay.

When processing those special modifier keys, mutter must ensure that the
key was pressed alone, being a modifier, the key could otherwise be part
of another key combo.

As result, if both special modifiers keys are pressed simultaneously,
mutter will try to trigger the function for the second key being
pressed, and since those special modifier keys have no default handler
function set, that will crash mutter.

Check if the handler has a function associated and treat the keybinding
as not found if no handler function is set, as with the special modifier
keys.

https://gitlab.gnome.org/GNOME/mutter/issues/823
2019-09-24 17:08:20 +02:00
..
bell.c frame: Remove flashing support 2019-03-12 00:27:07 +00:00
bell.h frame: Remove flashing support 2019-03-12 00:27:07 +00:00
boxes-private.h boxes: Fix spelling in API 2019-03-17 14:12:40 +00:00
boxes.c boxes: Fix calculation of rounded rectangles 2019-05-29 00:07:15 +02:00
constraints.c constraints: Don't use intersection when sliding with custom rule 2019-03-17 14:12:40 +00:00
constraints.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
core.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
core.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
delete.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
display-private.h core: Manage only X11 windows when (re)starting 2019-08-06 00:41:36 +00:00
display.c x11: Minor refactor of input focus handling code 2019-09-13 20:55:57 +00:00
edge-resistance.c Use free_full on GSList's instead of foreach + free 2019-05-15 14:49:56 -05:00
edge-resistance.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
events.c events: No UI frame button press events for Wayland 2019-08-19 09:16:04 +02:00
events.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
frame.c core: Fix multiple reparent requests handling 2019-09-02 15:50:37 +00:00
frame.h frame: Remove flashing support 2019-03-12 00:27:07 +00:00
keybindings-private.h keybindings: Do not grab the locate-pointer key if unnecessary 2019-07-18 13:10:32 +00:00
keybindings.c keybinding: Check for handler functions as well 2019-09-24 17:08:20 +02:00
main-private.h wayland: Add setting/api to check the policy to set up the X11 display 2019-08-06 00:41:36 +00:00
main.c main: Add test initialization function 2019-08-27 16:34:01 +00:00
meta-accel-parse.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-accel-parse.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-border.c MetaBorder: Use float constants and functions instead of double variants 2016-02-16 19:02:48 +08:00
meta-border.h Move out generic math parts out of the native barrier implementation 2016-02-16 19:02:48 +08:00
meta-clipboard-manager.c Make MetaSelection, MetaSelectionSource and MetaMemorySelectionSource public 2019-05-02 16:31:45 +02:00
meta-clipboard-manager.h core: Add clipboard manager 2019-05-02 16:22:45 +02:00
meta-close-dialog-default-private.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-close-dialog-default.c Use a consistent style for enum braces 2019-02-28 09:31:01 +01:00
meta-close-dialog.c Use a consistent style for enum braces 2019-02-28 09:31:01 +01:00
meta-fraction.c Add MetaFraction for dealing with fractions 2017-08-29 14:39:04 +08:00
meta-fraction.h Add MetaFraction for dealing with fractions 2017-08-29 14:39:04 +08:00
meta-gesture-tracker-private.h Use a consistent style for enum braces 2019-02-28 09:31:01 +01:00
meta-gesture-tracker.c Use a consistent style for enum braces 2019-02-28 09:31:01 +01:00
meta-inhibit-shortcuts-dialog-default-private.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-inhibit-shortcuts-dialog-default.c Use a consistent style for enum braces 2019-02-28 09:31:01 +01:00
meta-inhibit-shortcuts-dialog.c core: add MetaInhibitShortcutsDialog 2017-08-02 11:58:55 +02:00
meta-launch-context.c x11: Add meta_x11_get_display_name() function 2019-08-06 00:41:36 +00:00
meta-selection-source-memory.c Make MetaSelection, MetaSelectionSource and MetaMemorySelectionSource public 2019-05-02 16:31:45 +02:00
meta-selection-source.c Make MetaSelection, MetaSelectionSource and MetaMemorySelectionSource public 2019-05-02 16:31:45 +02:00
meta-selection.c Make MetaSelection, MetaSelectionSource and MetaMemorySelectionSource public 2019-05-02 16:31:45 +02:00
meta-sound-player.c sound-player: Don't deadlock in finish_cb 2019-03-05 12:07:41 +00:00
meta-workspace-manager-private.h Move workspace related code from MetaDisplay to MetaWorkspaceManager 2018-07-06 19:47:17 +02:00
meta-workspace-manager.c workspace-manager: Fix a documentation warning 2019-07-12 22:01:27 +02:00
mutter.c plugin: Rename the .so file from plugin.so to libplugin.so 2018-11-06 17:17:36 +01:00
place.c place: Assign anchor rect using automatic copy 2019-05-21 08:50:09 +00:00
place.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
prefs.c keybindings: Do not grab the locate-pointer key if unnecessary 2019-07-18 13:10:32 +00:00
restart-helper.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
restart.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
stack-tracker.c core: Split x11-display initialization in 2 signals 2019-09-11 22:30:13 +02:00
stack-tracker.h meta: Hide libmutter symbols by default and selectively export them 2019-01-23 14:18:13 +01:00
stack.c core: Trace various window management actions 2019-09-02 17:36:00 +00:00
stack.h stack: Style and introspection doc fixes 2019-07-08 11:46:52 +02:00
startup-notification-private.h meta, startup-notification: Make type declarations public 2019-01-24 16:38:09 +00:00
startup-notification.c Use free_full on GSList's instead of foreach + free 2019-05-15 14:49:56 -05:00
util-private.h meta: Hide libmutter symbols by default and selectively export them 2019-01-23 14:18:13 +01:00
util.c later: Add tracing 2019-08-31 12:22:39 +00:00
window-private.h core: Fix multiple reparent requests handling 2019-09-02 15:50:37 +00:00
window.c core: Trace various window management actions 2019-09-02 17:36:00 +00:00
workspace-private.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
workspace.c core: Trace various window management actions 2019-09-02 17:36:00 +00:00