commit bab080cea3d28dad387760d93db55cc711980d9a
parent f97a48d5b75fd80a578af14f19d0b1d954f82fdd
Author: Drew DeVault <sir@cmpwn.com>
Date: Sun, 9 Aug 2015 12:06:46 -0400
Fix up some issues with focus
Diffstat:
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/sway/handlers.c b/sway/handlers.c
@@ -39,8 +39,7 @@ void handle_view_destroyed(wlc_handle view) {
}
void handle_view_focus(wlc_handle view, bool focus) {
- wlc_view_set_state(view, WLC_BIT_ACTIVATED, focus);
- focus_view(get_swayc_for_handle(view, &root_container));
+ return;
}
void handle_view_geometry_request(wlc_handle view, const struct wlc_geometry* geometry) {
diff --git a/sway/layout.c b/sway/layout.c
@@ -161,7 +161,7 @@ void add_view(wlc_handle view_handle) {
view->type = C_VIEW;
add_child(parent, view);
- wlc_view_focus(view_handle);
+ focus_view(view);
arrange_windows(parent, -1, -1);
}
@@ -187,6 +187,10 @@ void destroy_view(swayc_t *view) {
free_swayc(view);
+ if (parent->focused == view) {
+ parent->focused = NULL;
+ }
+
if (parent->children->length != 0) {
focus_view(parent->children->items[0]);
} else {