]> git.lizzy.rs Git - bspwm.git/blobdiff - types.c
Remove `--float-upcoming` from `control`
[bspwm.git] / types.c
diff --git a/types.c b/types.c
index 0f2bc946459bb30cf62997b9ba522e73e8ddb06d..96a389186019babb13baaced8cfca306392ac281 100644 (file)
--- a/types.c
+++ b/types.c
@@ -23,16 +23,13 @@ node_t *make_node(void)
     return n;
 }
 
-monitor_t *make_monitor(xcb_rectangle_t *rect)
+monitor_t *make_monitor(xcb_rectangle_t rect)
 {
     monitor_t *m = malloc(sizeof(monitor_t));
     snprintf(m->name, sizeof(m->name), "%s%02d", DEFAULT_MON_NAME, ++monitor_uid);
     m->prev = m->next = NULL;
     m->desk = m->last_desk = NULL;
-    if (rect != NULL)
-        m->rectangle = *rect;
-    else
-        warn("no rectangle was given for monitor '%s'\n", m->name);
+    m->rectangle = rect;
     m->top_padding = m->right_padding = m->bottom_padding = m->left_padding = 0;
     m->wired = true;
     return m;
@@ -54,7 +51,7 @@ monitor_t *get_monitor_by_id(xcb_randr_output_t id)
     return NULL;
 }
 
-monitor_t *add_monitor(xcb_rectangle_t *rect)
+monitor_t *add_monitor(xcb_rectangle_t rect)
 {
     monitor_t *m = make_monitor(rect);
     if (mon == NULL) {
@@ -125,7 +122,9 @@ void transfer_desktop(monitor_t *ms, monitor_t *md, desktop_t *d)
         desktop_show(d);
     }
 
+    ewmh_update_wm_desktops();
     ewmh_update_desktop_names();
+    ewmh_update_current_desktop();
     put_status();
 }
 
@@ -174,15 +173,9 @@ void swap_monitors(monitor_t *m1, monitor_t *m2)
     m2->prev = p1 == m2 ? m1 : p1;
     m2->next = n1 == m2 ? m1 : n1;
 
-
-#define UPDATE_WM_DESKTOP(m) \
-    for (desktop_t *d = m->desk_head; d != NULL; d = d->next) \
-        ewmh_update_wm_desktop(d);
-UPDATE_WM_DESKTOP(m1)
-UPDATE_WM_DESKTOP(m2)
-#undef UPDATE_WM_DESKTOP
-
+    ewmh_update_wm_desktops();
     ewmh_update_desktop_names();
+    ewmh_update_current_desktop();
     put_status();
 }
 
@@ -197,6 +190,7 @@ desktop_t *make_desktop(const char *name)
     d->prev = d->next = NULL;
     d->root = d->focus = NULL;
     d->history = make_focus_history();
+    d->window_gap = WINDOW_GAP;
     return d;
 }
 
@@ -296,9 +290,9 @@ void swap_desktops(monitor_t *m, desktop_t *d1, desktop_t *d2)
     d2->prev = p1 == d2 ? d1 : p1;
     d2->next = n1 == d2 ? d1 : n1;
 
-    ewmh_update_wm_desktop(d1);
-    ewmh_update_wm_desktop(d2);
+    ewmh_update_wm_desktops();
     ewmh_update_desktop_names();
+    ewmh_update_current_desktop();
     put_status();
 }
 
@@ -326,6 +320,8 @@ rule_t *make_rule(void)
     r->effect.floating = false;
     r->effect.follow = false;
     r->effect.focus = false;
+    r->effect.unmanage = false;
+    r->one_shot = false;
     r->effect.desc[0] = '\0';
     r->prev = NULL;
     r->next = NULL;