mirror of
https://github.com/brl/mutter.git
synced 2025-04-15 06:39:38 +00:00
keybindings: Keep a pointer to the backend
A few less singleton getting. https://bugzilla.gnome.org/show_bug.cgi?id=787016
This commit is contained in:
parent
0e62b71959
commit
27d6c063ad
@ -91,6 +91,8 @@ typedef struct
|
|||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
|
MetaBackend *backend;
|
||||||
|
|
||||||
GHashTable *key_bindings;
|
GHashTable *key_bindings;
|
||||||
GHashTable *key_bindings_index;
|
GHashTable *key_bindings_index;
|
||||||
xkb_mod_mask_t ignored_modifier_mask;
|
xkb_mod_mask_t ignored_modifier_mask;
|
||||||
|
@ -229,8 +229,7 @@ key_combo_key (MetaResolvedKeyCombo *resolved_combo,
|
|||||||
static void
|
static void
|
||||||
reload_modmap (MetaKeyBindingManager *keys)
|
reload_modmap (MetaKeyBindingManager *keys)
|
||||||
{
|
{
|
||||||
MetaBackend *backend = meta_get_backend ();
|
struct xkb_keymap *keymap = meta_backend_get_keymap (keys->backend);
|
||||||
struct xkb_keymap *keymap = meta_backend_get_keymap (backend);
|
|
||||||
struct xkb_state *scratch_state;
|
struct xkb_state *scratch_state;
|
||||||
xkb_mod_mask_t scroll_lock_mask;
|
xkb_mod_mask_t scroll_lock_mask;
|
||||||
xkb_mod_mask_t dummy_mask;
|
xkb_mod_mask_t dummy_mask;
|
||||||
@ -347,7 +346,6 @@ get_keycodes_for_keysym (MetaKeyBindingManager *keys,
|
|||||||
int keysym,
|
int keysym,
|
||||||
MetaResolvedKeyCombo *resolved_combo)
|
MetaResolvedKeyCombo *resolved_combo)
|
||||||
{
|
{
|
||||||
MetaBackend *backend = meta_get_backend ();
|
|
||||||
struct xkb_keymap *keymap;
|
struct xkb_keymap *keymap;
|
||||||
xkb_layout_index_t layout_index;
|
xkb_layout_index_t layout_index;
|
||||||
xkb_level_index_t layout_level;
|
xkb_level_index_t layout_level;
|
||||||
@ -364,8 +362,8 @@ get_keycodes_for_keysym (MetaKeyBindingManager *keys,
|
|||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
keymap = meta_backend_get_keymap (backend);
|
keymap = meta_backend_get_keymap (keys->backend);
|
||||||
layout_index = meta_backend_get_keymap_layout_group (backend);
|
layout_index = meta_backend_get_keymap_layout_group (keys->backend);
|
||||||
|
|
||||||
for (layout_level = 0; layout_level < keys->keymap_num_levels; layout_level++)
|
for (layout_level = 0; layout_level < keys->keymap_num_levels; layout_level++)
|
||||||
{
|
{
|
||||||
@ -405,8 +403,7 @@ determine_keymap_num_levels_iter (struct xkb_keymap *keymap,
|
|||||||
static void
|
static void
|
||||||
determine_keymap_num_levels (MetaKeyBindingManager *keys)
|
determine_keymap_num_levels (MetaKeyBindingManager *keys)
|
||||||
{
|
{
|
||||||
MetaBackend *backend = meta_get_backend ();
|
struct xkb_keymap *keymap = meta_backend_get_keymap (keys->backend);
|
||||||
struct xkb_keymap *keymap = meta_backend_get_keymap (backend);
|
|
||||||
|
|
||||||
keys->keymap_num_levels = 0;
|
keys->keymap_num_levels = 0;
|
||||||
xkb_keymap_key_for_each (keymap, determine_keymap_num_levels_iter, &keys->keymap_num_levels);
|
xkb_keymap_key_for_each (keymap, determine_keymap_num_levels_iter, &keys->keymap_num_levels);
|
||||||
@ -996,7 +993,7 @@ meta_change_button_grab (MetaKeyBindingManager *keys,
|
|||||||
if (meta_is_wayland_compositor ())
|
if (meta_is_wayland_compositor ())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
MetaBackendX11 *backend = META_BACKEND_X11 (meta_get_backend ());
|
MetaBackendX11 *backend = META_BACKEND_X11 (keys->backend);
|
||||||
Display *xdisplay = meta_backend_x11_get_xdisplay (backend);
|
Display *xdisplay = meta_backend_x11_get_xdisplay (backend);
|
||||||
|
|
||||||
unsigned char mask_bits[XIMaskLen (XI_LASTEVENT)] = { 0 };
|
unsigned char mask_bits[XIMaskLen (XI_LASTEVENT)] = { 0 };
|
||||||
@ -1767,7 +1764,7 @@ process_overlay_key (MetaDisplay *display,
|
|||||||
MetaWindow *window)
|
MetaWindow *window)
|
||||||
{
|
{
|
||||||
MetaKeyBindingManager *keys = &display->key_binding_manager;
|
MetaKeyBindingManager *keys = &display->key_binding_manager;
|
||||||
MetaBackend *backend = meta_get_backend ();
|
MetaBackend *backend = keys->backend;
|
||||||
Display *xdisplay;
|
Display *xdisplay;
|
||||||
|
|
||||||
if (META_IS_BACKEND_X11 (backend))
|
if (META_IS_BACKEND_X11 (backend))
|
||||||
@ -4164,6 +4161,8 @@ meta_display_init_keys (MetaDisplay *display)
|
|||||||
MetaBackend *backend = meta_get_backend ();
|
MetaBackend *backend = meta_get_backend ();
|
||||||
MetaKeyHandler *handler;
|
MetaKeyHandler *handler;
|
||||||
|
|
||||||
|
keys->backend = backend;
|
||||||
|
|
||||||
/* Keybindings */
|
/* Keybindings */
|
||||||
keys->ignored_modifier_mask = 0;
|
keys->ignored_modifier_mask = 0;
|
||||||
keys->hyper_mask = 0;
|
keys->hyper_mask = 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user