Clients shouldn't attempt to track modifier state independently
since it's already tracked in the modifier mask.
---
 clients/window.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/clients/window.c b/clients/window.c
index e917ce6..538571e 100644
--- a/clients/window.c
+++ b/clients/window.c
@@ -1581,7 +1581,7 @@ input_handle_key(void *data, struct wl_input_device 
*input_device,
                if (state)
                        window_set_maximized(window,
                                             window->type != TYPE_MAXIMIZED);
-       } else if (window->key_handler) {
+       } else if (window->key_handler && !d->xkb->map->modmap[code]) {
                (*window->key_handler)(window, input, time, key,
                                       sym, state, window->user_data);
        }
-- 
1.7.4.1

_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to