toytoolkit: Allow operation without a keymap

In preparation for upcoming changes, we want to make sure that apps
written with the toy toolkit continue to operate properly if no XKB
keymap is received.  If there's no XKB keymap, then we shouldn't
try to figure out keyboard modifier states (since we probably don't
even have equivalents of PC-style modifiers).

Reviewed-by: Singh, Satyeshwar <satyeshwar.singh@intel.com>
Reviewed-by: Bob Paauwe <bob.j.paauwe@intel.com>
dev
Matt Roper 12 years ago committed by Kristian Høgsberg
parent 14494625b5
commit e61561fd9c
  1. 4
      clients/window.c

@ -3067,6 +3067,10 @@ keyboard_handle_modifiers(void *data, struct wl_keyboard *keyboard,
struct input *input = data; struct input *input = data;
xkb_mod_mask_t mask; xkb_mod_mask_t mask;
/* If we're not using a keymap, then we don't handle PC-style modifiers */
if (!input->xkb.keymap)
return;
xkb_state_update_mask(input->xkb.state, mods_depressed, mods_latched, xkb_state_update_mask(input->xkb.state, mods_depressed, mods_latched,
mods_locked, 0, 0, group); mods_locked, 0, 0, group);
mask = xkb_state_serialize_mods(input->xkb.state, mask = xkb_state_serialize_mods(input->xkb.state,

Loading…
Cancel
Save