X-Git-Url: http://git.openbox.org/?p=mikachu%2Fopenbox.git;a=blobdiff_plain;f=openbox%2Fplace.c;h=d2d66e02ff8617f4ec6e331159fb7e320ea078bf;hp=48e4fb16a8d0a17873a56d8af34dde8fef056735;hb=53b8c86a608021b3adaf15fcf330aed3f82158e7;hpb=f6fb70a4b95d0289aa642bc4c2dd0fba31511e94 diff --git a/openbox/place.c b/openbox/place.c index 48e4fb1..d2d66e0 100644 --- a/openbox/place.c +++ b/openbox/place.c @@ -27,8 +27,6 @@ #include "debug.h" #include "place_overlap.h" -extern ObDock *dock; - static Rect *choose_pointer_monitor(ObClient *c) { return screen_area(c->desktop, screen_monitor_pointer(), NULL); @@ -402,7 +400,7 @@ static gboolean place_least_overlap(ObClient *c, Rect *head, int *x, int *y, /* Assemble the list of windows that could overlap with @c in the user's current view. */ GSList* potential_overlap_clients = NULL; - gint n_client_rects = 0; + gint n_client_rects = config_dock_hide ? 0 : 1; /* if we're "showing desktop", ignore all existing windows */ if (!screen_showing_desktop) { @@ -434,6 +432,8 @@ static gboolean place_least_overlap(ObClient *c, Rect *head, int *x, int *y, GSList* it; guint i = 0; + if (!config_dock_hide) + dock_get_area(&client_rects[i++]); for (it = potential_overlap_clients; it != NULL; it = g_slist_next(it)) { ObClient* potential_overlap_client = (ObClient*)it->data; client_rects[i] = potential_overlap_client->frame->area;