mirror of
https://github.com/NickHu/sway
synced 2024-12-27 21:58:11 +01:00
fixed active_workspace update on focus change
This commit is contained in:
parent
a90bd212a1
commit
a31f23f90c
3 changed files with 11 additions and 3 deletions
|
@ -20,6 +20,8 @@ static void update_focus(swayc_t *c) {
|
|||
// Case where output changes
|
||||
case C_OUTPUT:
|
||||
wlc_output_focus(c->handle);
|
||||
//Set new workspace to the outputs focused workspace
|
||||
active_workspace = c->focused;
|
||||
break;
|
||||
|
||||
// Case where workspace changes
|
||||
|
|
|
@ -179,8 +179,14 @@ static bool handle_view_created(wlc_handle handle) {
|
|||
if (!focused || focused->type == C_OUTPUT) {
|
||||
focused = get_focused_container(&root_container);
|
||||
}
|
||||
sway_log(L_DEBUG, "creating view %ld with type %x, state %x, with parent %ld",
|
||||
handle, wlc_view_get_type(handle), wlc_view_get_state(handle), parent);
|
||||
sway_log(L_DEBUG, "handle:%ld type:%x state:%x parent:%ld "
|
||||
"mask:%d (x:%d y:%d w:%d h:%d) title:%s "
|
||||
"class:%s appid:%s",
|
||||
handle, wlc_view_get_type(handle), wlc_view_get_state(handle), parent,
|
||||
wlc_view_get_mask(handle), wlc_view_get_geometry(handle)->origin.x,
|
||||
wlc_view_get_geometry(handle)->origin.y,wlc_view_get_geometry(handle)->size.w,
|
||||
wlc_view_get_geometry(handle)->size.h, wlc_view_get_title(handle),
|
||||
wlc_view_get_class(handle), wlc_view_get_app_id(handle));
|
||||
|
||||
// TODO properly figure out how each window should be handled.
|
||||
switch (wlc_view_get_type(handle)) {
|
||||
|
@ -319,6 +325,7 @@ static bool handle_key(wlc_handle view, uint32_t time, const struct wlc_modifier
|
|||
sway_log(L_DEBUG, "modifier %x: state %d: key %d, sym: %d",
|
||||
modifiers->mods, state, key, sym);
|
||||
|
||||
//Revert floating container back to original position on keypress
|
||||
if (state == WLC_KEY_STATE_PRESSED && (dragging || resizing)) {
|
||||
reset_floating(get_focused_view(&root_container));
|
||||
}
|
||||
|
|
|
@ -183,7 +183,6 @@ void workspace_switch(swayc_t *workspace) {
|
|||
return;
|
||||
}
|
||||
sway_log(L_DEBUG, "Switching to workspace %p:%s", workspace, workspace->name);
|
||||
active_workspace = workspace;
|
||||
set_focused_container(get_focused_view(workspace));
|
||||
arrange_windows(workspace, -1, -1);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue