Merge pull request #502 from mikkeloscar/lock-reset-input

Reset input state when locking compositor
This commit is contained in:
Drew DeVault 2016-03-04 13:47:08 -05:00
commit 181b6b31a4

View file

@ -5,6 +5,7 @@
#include "wayland-swaylock-server-protocol.h" #include "wayland-swaylock-server-protocol.h"
#include "layout.h" #include "layout.h"
#include "log.h" #include "log.h"
#include "input_state.h"
#include "extensions.h" #include "extensions.h"
struct desktop_shell_state desktop_shell; struct desktop_shell_state desktop_shell;
@ -123,6 +124,8 @@ static void set_lock_surface(struct wl_client *client, struct wl_resource *resou
wlc_view_set_state(view->handle, WLC_BIT_FULLSCREEN, true); wlc_view_set_state(view->handle, WLC_BIT_FULLSCREEN, true);
workspace->fullscreen = view; workspace->fullscreen = view;
desktop_shell.is_locked = true; desktop_shell.is_locked = true;
// reset input state
input_init();
set_focused_container(view); set_focused_container(view);
arrange_windows(workspace, -1, -1); arrange_windows(workspace, -1, -1);
list_add(desktop_shell.lock_surfaces, surface); list_add(desktop_shell.lock_surfaces, surface);