master
taiyu 9 years ago
parent de5196dc1e
commit b05317c3a6

@ -341,7 +341,7 @@ swayc_t *swayc_parent_by_type(swayc_t *container, enum swayc_types type) {
} }
do { do {
container = container->parent; container = container->parent;
} while(container && container->type != type); } while (container && container->type != type);
return container; return container;
} }
@ -402,18 +402,23 @@ swayc_t *swayc_active_workspace(void) {
} }
swayc_t *swayc_active_workspace_for(swayc_t *cont) { swayc_t *swayc_active_workspace_for(swayc_t *cont) {
if (! cont) { if (!cont) {
return NULL; return NULL;
} }
switch (cont->type) { switch (cont->type) {
/* set root -> output */ case C_ROOT:
case C_ROOT: cont = cont->focused; cont = cont->focused;
/* set output -> workspace */ /* Fallthrough */
case C_OUTPUT: cont = cont->focused;
/* return workspace */ case C_OUTPUT:
case C_WORKSPACE: return cont; cont = cont->focused;
/* Find parent workspace */ /* Fallthrough */
default: return swayc_parent_by_type(cont, C_WORKSPACE);
case C_WORKSPACE:
return cont;
default:
return swayc_parent_by_type(cont, C_WORKSPACE);
} }
} }

Loading…
Cancel
Save