mirror of
https://github.com/brl/mutter.git
synced 2024-12-01 20:30:41 -05:00
keybindings: Seal off the keybindings manager into its own structure
This helps clean up MetaDisplay, and also helps us move it into a backend-specific thing in the future.
This commit is contained in:
parent
f88c20f335
commit
cfb85d9a9a
@ -174,9 +174,6 @@ struct _MetaDisplay
|
|||||||
guint autoraise_timeout_id;
|
guint autoraise_timeout_id;
|
||||||
MetaWindow* autoraise_window;
|
MetaWindow* autoraise_window;
|
||||||
|
|
||||||
/* Alt+click button grabs */
|
|
||||||
ClutterModifierType window_grab_modifiers;
|
|
||||||
|
|
||||||
/* current window operation */
|
/* current window operation */
|
||||||
MetaGrabOp grab_op;
|
MetaGrabOp grab_op;
|
||||||
MetaWindow *grab_window;
|
MetaWindow *grab_window;
|
||||||
@ -211,21 +208,7 @@ struct _MetaDisplay
|
|||||||
guint32 last_bell_time;
|
guint32 last_bell_time;
|
||||||
int grab_resize_timeout_id;
|
int grab_resize_timeout_id;
|
||||||
|
|
||||||
/* Keybindings stuff */
|
MetaKeyBindingManager key_binding_manager;
|
||||||
GHashTable *key_bindings;
|
|
||||||
GHashTable *key_bindings_index;
|
|
||||||
int min_keycode;
|
|
||||||
int max_keycode;
|
|
||||||
KeySym *keymap;
|
|
||||||
int keysyms_per_keycode;
|
|
||||||
unsigned int ignored_modifier_mask;
|
|
||||||
unsigned int hyper_mask;
|
|
||||||
unsigned int super_mask;
|
|
||||||
unsigned int meta_mask;
|
|
||||||
MetaKeyCombo overlay_key_combo;
|
|
||||||
gboolean overlay_key_only_pressed;
|
|
||||||
MetaKeyCombo *iso_next_group_combos;
|
|
||||||
int n_iso_next_group_combos;
|
|
||||||
|
|
||||||
/* Monitor cache */
|
/* Monitor cache */
|
||||||
unsigned int monitor_cache_invalidated : 1;
|
unsigned int monitor_cache_invalidated : 1;
|
||||||
|
@ -90,6 +90,29 @@ typedef struct
|
|||||||
gboolean builtin:1;
|
gboolean builtin:1;
|
||||||
} MetaKeyPref;
|
} MetaKeyPref;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
Display *xdisplay;
|
||||||
|
|
||||||
|
GHashTable *key_bindings;
|
||||||
|
GHashTable *key_bindings_index;
|
||||||
|
int min_keycode;
|
||||||
|
int max_keycode;
|
||||||
|
KeySym *keymap;
|
||||||
|
int keysyms_per_keycode;
|
||||||
|
unsigned int ignored_modifier_mask;
|
||||||
|
unsigned int hyper_mask;
|
||||||
|
unsigned int super_mask;
|
||||||
|
unsigned int meta_mask;
|
||||||
|
MetaKeyCombo overlay_key_combo;
|
||||||
|
gboolean overlay_key_only_pressed;
|
||||||
|
MetaKeyCombo *iso_next_group_combos;
|
||||||
|
int n_iso_next_group_combos;
|
||||||
|
|
||||||
|
/* Alt+click button grabs */
|
||||||
|
ClutterModifierType window_grab_modifiers;
|
||||||
|
} MetaKeyBindingManager;
|
||||||
|
|
||||||
void meta_display_init_keys (MetaDisplay *display);
|
void meta_display_init_keys (MetaDisplay *display);
|
||||||
void meta_display_shutdown_keys (MetaDisplay *display);
|
void meta_display_shutdown_keys (MetaDisplay *display);
|
||||||
void meta_screen_grab_keys (MetaScreen *screen);
|
void meta_screen_grab_keys (MetaScreen *screen);
|
||||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user