aboutsummaryrefslogtreecommitdiffstats
path: root/sway/tree/view.c
diff options
context:
space:
mode:
authorLibravatar Ryan Dwyer <ryandwyer1@gmail.com>2018-09-02 18:25:45 +1000
committerLibravatar Ryan Dwyer <ryandwyer1@gmail.com>2018-09-02 18:25:45 +1000
commit6fb03817c9d2bd29697a91f92d680b0c6a2c5996 (patch)
treefb510fe69ef12a9de9d299fa1543c32b49a16e8e /sway/tree/view.c
parentImplement focus_on_window_activation (diff)
downloadsway-6fb03817c9d2bd29697a91f92d680b0c6a2c5996.tar.gz
sway-6fb03817c9d2bd29697a91f92d680b0c6a2c5996.tar.zst
sway-6fb03817c9d2bd29697a91f92d680b0c6a2c5996.zip
Rename fowa enum and use switch in view_request_activate
Diffstat (limited to 'sway/tree/view.c')
-rw-r--r--sway/tree/view.c34
1 files changed, 17 insertions, 17 deletions
diff --git a/sway/tree/view.c b/sway/tree/view.c
index c6ed68f6..6bd0ef67 100644
--- a/sway/tree/view.c
+++ b/sway/tree/view.c
@@ -281,25 +281,25 @@ void view_set_activated(struct sway_view *view, bool activated) {
281} 281}
282 282
283void view_request_activate(struct sway_view *view) { 283void view_request_activate(struct sway_view *view) {
284 if (config->focus_on_window_activation == FOWA_NONE) {
285 return;
286 }
287 if (config->focus_on_window_activation == FOWA_FOCUS) {
288 struct sway_seat *seat = input_manager_current_seat(input_manager);
289 seat_set_focus(seat, view->swayc);
290 return;
291 }
292 if (config->focus_on_window_activation == FOWA_URGENT) {
293 view_set_urgent(view, true);
294 return;
295 }
296 // FOWA_SMART
297 struct sway_container *ws = container_parent(view->swayc, C_WORKSPACE); 284 struct sway_container *ws = container_parent(view->swayc, C_WORKSPACE);
298 if (workspace_is_visible(ws)) { 285 struct sway_seat *seat = input_manager_current_seat(input_manager);
299 struct sway_seat *seat = input_manager_current_seat(input_manager); 286
300 seat_set_focus(seat, view->swayc); 287 switch (config->focus_on_window_activation) {
301 } else { 288 case FOWA_SMART:
289 if (workspace_is_visible(ws)) {
290 seat_set_focus(seat, view->swayc);
291 } else {
292 view_set_urgent(view, true);
293 }
294 break;
295 case FOWA_URGENT:
302 view_set_urgent(view, true); 296 view_set_urgent(view, true);
297 break;
298 case FOWA_FOCUS:
299 seat_set_focus(seat, view->swayc);
300 break;
301 case FOWA_NONE:
302 break;
303 } 303 }
304} 304}
305 305