Fix fullscreen focus bug and corresponding test flaw

As the workspace might be reached via recursion (e.g. moving from the edge
of a fullscreen split container), it's necessary to check for a fullscreen
container whenever a workspace is reached.
This commit is contained in:
Deiz
2012-10-06 16:41:04 -04:00
committed by Michael Stapelberg
parent 7a280f5691
commit e07803999f
3 changed files with 21 additions and 17 deletions

View File

@ -1297,14 +1297,6 @@ void cmd_exec(I3_CMD, char *nosn, char *command) {
*
*/
void cmd_focus_direction(I3_CMD, char *direction) {
if (focused &&
focused->type != CT_WORKSPACE &&
focused->fullscreen_mode != CF_NONE) {
LOG("Cannot change focus while in fullscreen mode.\n");
ysuccess(false);
return;
}
DLOG("direction = *%s*\n", direction);
if (strcmp(direction, "left") == 0)
@ -1331,14 +1323,6 @@ void cmd_focus_direction(I3_CMD, char *direction) {
*
*/
void cmd_focus_window_mode(I3_CMD, char *window_mode) {
if (focused &&
focused->type != CT_WORKSPACE &&
focused->fullscreen_mode != CF_NONE) {
LOG("Cannot change focus while in fullscreen mode.\n");
ysuccess(false);
return;
}
DLOG("window_mode = %s\n", window_mode);
Con *ws = con_get_workspace(focused);