if (params->cur_key == NULL) {
new_output = smalloc(sizeof(i3_output));
new_output->name = NULL;
+ new_output->active = false;
+ new_output->primary = false;
+ new_output->visible = false;
new_output->ws = 0,
+ new_output->statusline_width = 0;
+ new_output->statusline_short_text = false;
memset(&new_output->rect, 0, sizeof(rect));
memset(&new_output->bar, 0, sizeof(surface_t));
memset(&new_output->buffer, 0, sizeof(surface_t));
+ memset(&new_output->statusline_buffer, 0, sizeof(surface_t));
new_output->workspaces = smalloc(sizeof(struct ws_head));
TAILQ_INIT(new_output->workspaces);
return walk;
}
+
+/*
+ * Returns true if the output has the currently focused workspace
+ *
+ */
+bool output_has_focus(i3_output *output) {
+ i3_ws *ws_walk;
+ TAILQ_FOREACH(ws_walk, output->workspaces, tailq) {
+ if (ws_walk->focused) {
+ return true;
+ }
+ }
+ return false;
+}