desktop-shell: shell: Capture input on fade animation curtain

Shell fades out and in depending on user interactions. When screen
is faded out, first interaction wakes up the shell from idle and screen
fades back in. However, this first interaction is applied to whatever
is "behind" faded screen and it may trigger unwanted actions (first
touch or mouse click on active GUI elements). Behavior is the same for
both idle and lock screen (because unlock dialog is created after the
first interaction).

Update fade animation curtain creation function to capture inputs in
order to prevent unwanted interactions within faded or locked shell.

Fixes issues #147 and #569.

Signed-off-by: Witold Lipieta <witold.lipieta@thaumatec.com>
This commit is contained in:
Witold Lipieta 2024-02-29 13:49:30 +01:00
parent 7e22c28444
commit 215cceb45d

View File

@ -3840,7 +3840,7 @@ shell_fade_create_view(struct desktop_shell *shell)
.surface_committed = black_surface_committed,
.get_label = fade_surface_get_label,
.surface_private = shell,
.capture_input = false,
.capture_input = true,
};
struct weston_curtain *curtain;
bool first = true;