From 19243991667d0a216b1014e8fe16503af6c11016 Mon Sep 17 00:00:00 2001 From: taiyu Date: Fri, 28 Aug 2015 22:51:36 -0700 Subject: #148 fix, choose non-floating view for inserting container --- sway/handlers.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sway/handlers.c b/sway/handlers.c index 8b127d35..75f6a785 100644 --- a/sway/handlers.c +++ b/sway/handlers.c @@ -163,6 +163,18 @@ static bool handle_view_created(wlc_handle handle) { } if (!focused || focused->type == C_OUTPUT) { focused = get_focused_container(&root_container); + // Move focus from floating view + if (focused->is_floating) { + // To workspace if there are no children + if (focused->parent->children->length == 0) { + focused = focused->parent; + } + // TODO find a better way of doing this + // Or to focused container + else { + focused = get_focused_container(focused->parent->children->items[0]); + } + } } sway_log(L_DEBUG, "handle:%ld type:%x state:%x parent:%ld " "mask:%d (x:%d y:%d w:%d h:%d) title:%s " -- cgit v1.2.3-54-g00ecf