diff options
| author | Aleksei Bavshin <alebastr89@gmail.com> | 2023-12-26 22:26:02 -0800 | 
|---|---|---|
| committer | Ronan Pigott <ronan@rjp.ie> | 2024-02-17 00:54:30 -0700 | 
| commit | d19810eba8959f052d91fd6609cef6adf36b3951 (patch) | |
| tree | 90b727f8cb792b06bf9aa1cc527d254c6c23edbf /sway/tree/view.c | |
| parent | f6d22f8e6886edfeca3ecbb695b02079e81ce360 (diff) | |
| download | sway-d19810eba8959f052d91fd6609cef6adf36b3951.tar.xz | |
xdg-activation: distinguish activation and urgency requests
Check if the app that requested a token has provided a valid input
serial and a focused surface. Downgrade activation request to urgency
otherwise.
This is mostly in line with what other Wayland compositors decided to
do, and offers a better security than the original logic.
Diffstat (limited to 'sway/tree/view.c')
| -rw-r--r-- | sway/tree/view.c | 6 | 
1 files changed, 6 insertions, 0 deletions
| diff --git a/sway/tree/view.c b/sway/tree/view.c index 5525bf63..4a0d8069 100644 --- a/sway/tree/view.c +++ b/sway/tree/view.c @@ -412,6 +412,12 @@ void view_request_activate(struct sway_view *view, struct sway_seat *seat) {  	transaction_commit_dirty();  } +void view_request_urgent(struct sway_view *view) { +	if (config->focus_on_window_activation != FOWA_NONE) { +		view_set_urgent(view, true); +	} +} +  void view_set_csd_from_server(struct sway_view *view, bool enabled) {  	sway_log(SWAY_DEBUG, "Telling view %p to set CSD to %i", view, enabled);  	if (view->xdg_decoration) { | 
