desk->layout = l;
}
}
- /* } else if (strcmp(cmd, "insert") == 0) { */
- /* static unsigned int fake_id = 1; */
- /* client_t *c = make_client((xcb_window_t) fake_id++); */
- /* node_t *n = make_node(); */
- /* n->client = c; */
- /* insert_node(desk, n); */
} else if (strcmp(cmd, "shift") == 0) {
char *dir = strtok(NULL, TOKEN_SEP);
if (dir != NULL) {
toggle_fullscreen(desk->focus->client);
return;
} else if (strcmp(cmd, "toggle_floating") == 0) {
+ split_mode = MODE_AUTOMATIC;
toggle_floating(desk->focus);
+ } else if (strcmp(cmd, "toggle_locked") == 0) {
+ if (desk->focus != NULL)
+ toggle_locked(desk->focus->client);
} else if (strcmp(cmd, "ratio") == 0) {
char *value = strtok(NULL, TOKEN_SEP);
if (value != NULL && desk->focus != NULL)
sscanf(value, "%lf", &desk->focus->split_ratio);
+ } else if (strcmp(cmd, "cancel") == 0) {
+ split_mode = MODE_AUTOMATIC;
+ window_draw_border(desk->focus, true);
+ return;
} else if (strcmp(cmd, "presel") == 0) {
+ if (desk->focus == NULL || !is_tiled(desk->focus->client) || desk->layout != LAYOUT_TILED)
+ return;
char *dir = strtok(NULL, TOKEN_SEP);
if (dir != NULL) {
direction_t d;
if (parse_direction(dir, &d)) {
split_mode = MODE_MANUAL;
split_dir = d;
- draw_triple_border(desk->focus, active_border_color_pxl);
+ window_draw_border(desk->focus, true);
}
}
return;
- } else if (strcmp(cmd, "locate") == 0) {
- char *wid = strtok(NULL, TOKEN_SEP);
- if (wid != NULL) {
- window_location_t loc;
- xcb_window_t win = atoi(wid);
- if (locate_window(win, &loc))
- sprintf(rsp, "%s", loc.desktop->name);
-
- }
} else if (strcmp(cmd, "push") == 0 || strcmp(cmd, "pull") == 0) {
char *dir = strtok(NULL, TOKEN_SEP);
if (dir != NULL) {
desktop_t *d = find_desktop(name);
transfer_node(desk, d, desk->focus);
}
+ } else if (strcmp(cmd, "rename") == 0) {
+ char *cur_name = strtok(NULL, TOKEN_SEP);
+ if (cur_name != NULL) {
+ desktop_t *d = find_desktop(cur_name);
+ if (d != NULL) {
+ char *new_name = strtok(NULL, TOKEN_SEP);
+ if (new_name != NULL) {
+ strcpy(d->name, new_name);
+ ewmh_update_desktop_names();
+ }
+ }
+ }
} else if (strcmp(cmd, "use") == 0) {
char *name = strtok(NULL, TOKEN_SEP);
if (name != NULL) {
cycle_desktop(d);
}
}
- return;
} else if (strcmp(cmd, "cycle") == 0) {
+ if (desk->focus != NULL && desk->focus->client->fullscreen)
+ return;
char *dir = strtok(NULL, TOKEN_SEP);
if (dir != NULL) {
cycle_dir_t d;
}
return;
} else if (strcmp(cmd, "alternate") == 0) {
- alternate_desktop();
+ select_desktop(last_desk);
} else if (strcmp(cmd, "add") == 0) {
char *name = strtok(NULL, TOKEN_SEP);
if (name != NULL) {
}
return;
} else if (strcmp(cmd, "focus") == 0) {
+ if (desk->focus != NULL && desk->focus->client->fullscreen)
+ return;
char *dir = strtok(NULL, TOKEN_SEP);
if (dir != NULL) {
direction_t d;
return;
} else if (strcmp(cmd, "reload") == 0) {
load_settings();
+ run_autostart();
+ } else if (strcmp(cmd, "reload_autostart") == 0) {
+ run_autostart();
+ } else if (strcmp(cmd, "reload_settings") == 0) {
+ load_settings();
} else if (strcmp(cmd, "quit") == 0) {
quit();
return;
} else if (strcmp(name, "bottom_padding") == 0) {
sscanf(value, "%i", &bottom_padding);
update_root_dimensions();
- } else if (strcmp(name, "normal_border_color") == 0) {
- strcpy(normal_border_color, value);
- normal_border_color_pxl = get_color(normal_border_color);
} else if (strcmp(name, "active_border_color") == 0) {
strcpy(active_border_color, value);
active_border_color_pxl = get_color(active_border_color);
+ } else if (strcmp(name, "normal_border_color") == 0) {
+ strcpy(normal_border_color, value);
+ normal_border_color_pxl = get_color(normal_border_color);
} else if (strcmp(name, "inner_border_color") == 0) {
strcpy(inner_border_color, value);
inner_border_color_pxl = get_color(inner_border_color);
} else if (strcmp(name, "presel_border_color") == 0) {
strcpy(presel_border_color, value);
presel_border_color_pxl = get_color(presel_border_color);
- } else if (strcmp(name, "locked_border_color") == 0) {
- strcpy(locked_border_color, value);
- locked_border_color_pxl = get_color(locked_border_color);
+ } else if (strcmp(name, "active_locked_border_color") == 0) {
+ strcpy(active_locked_border_color, value);
+ active_locked_border_color_pxl = get_color(active_locked_border_color);
+ } else if (strcmp(name, "normal_locked_border_color") == 0) {
+ strcpy(normal_locked_border_color, value);
+ normal_locked_border_color_pxl = get_color(normal_locked_border_color);
+ } else if (strcmp(name, "urgent_border_color") == 0) {
+ strcpy(urgent_border_color, value);
+ urgent_border_color_pxl = get_color(urgent_border_color);
} else if (strcmp(name, "adaptive_window_border") == 0) {
bool b;
if (parse_bool(value, &b))
sprintf(rsp, "%i\n", top_padding);
else if (strcmp(name, "bottom_padding") == 0)
sprintf(rsp, "%i\n", bottom_padding);
- else if (strcmp(name, "normal_border_color") == 0)
- sprintf(rsp, "%s (0x%06X)\n", normal_border_color, normal_border_color_pxl);
else if (strcmp(name, "active_border_color") == 0)
- sprintf(rsp, "%s (0x%06X)\n", active_border_color, active_border_color_pxl);
+ sprintf(rsp, "%s (%06X)\n", active_border_color, active_border_color_pxl);
+ else if (strcmp(name, "normal_border_color") == 0)
+ sprintf(rsp, "%s (%06X)\n", normal_border_color, normal_border_color_pxl);
else if (strcmp(name, "inner_border_color") == 0)
- sprintf(rsp, "%s (0x%06X)\n", inner_border_color, inner_border_color_pxl);
+ sprintf(rsp, "%s (%06X)\n", inner_border_color, inner_border_color_pxl);
else if (strcmp(name, "outer_border_color") == 0)
- sprintf(rsp, "%s (0x%06X)\n", outer_border_color, outer_border_color_pxl);
+ sprintf(rsp, "%s (%06X)\n", outer_border_color, outer_border_color_pxl);
else if (strcmp(name, "presel_border_color") == 0)
- sprintf(rsp, "%s (0x%06X)\n", presel_border_color, presel_border_color_pxl);
- else if (strcmp(name, "locked_border_color") == 0)
- sprintf(rsp, "%s (0x%06X)\n", locked_border_color, locked_border_color_pxl);
+ sprintf(rsp, "%s (%06X)\n", presel_border_color, presel_border_color_pxl);
+ else if (strcmp(name, "active_locked_border_color") == 0)
+ sprintf(rsp, "%s (%06X)\n", active_locked_border_color, active_locked_border_color_pxl);
+ else if (strcmp(name, "normal_locked_border_color") == 0)
+ sprintf(rsp, "%s (%06X)\n", normal_locked_border_color, normal_locked_border_color_pxl);
+ else if (strcmp(name, "urgent_border_color") == 0)
+ sprintf(rsp, "%s (%06X)\n", urgent_border_color, urgent_border_color_pxl);
else if (strcmp(name, "wm_name") == 0)
sprintf(rsp, "%s\n", wm_name);
else if (strcmp(name, "adaptive_window_border") == 0)
bool parse_cycle_direction(char *s, cycle_dir_t *d)
{
if (strcmp(s, "prev") == 0) {
- *d = DIR_PREV;
+ *d = CYCLE_PREV;
return true;
} else if (strcmp(s, "next") == 0) {
- *d = DIR_NEXT;
+ *d = CYCLE_NEXT;
return true;
}
return false;