X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fplace.c;h=aac40e8a099249c0620e7513269f556b766c56d8;hb=4bf6b1b551be744be4fbe4d1faab5be12d051378;hp=81fb975272fe31e8f9ea677f6d25a84910cd809f;hpb=dd740b5562806a6b4692c938ad0e903ad89b6193;p=chaz%2Fopenbox diff --git a/openbox/place.c b/openbox/place.c index 81fb9752..aac40e8a 100644 --- a/openbox/place.c +++ b/openbox/place.c @@ -76,7 +76,7 @@ static Rect **pick_head(ObClient *c) /* try direct parent first */ if ((p = client_direct_parent(c))) { add_choice(choice, client_monitor(p)); - ob_debug("placement adding choice %d for parent\n", + ob_debug("placement adding choice %d for parent", client_monitor(p)); } @@ -92,7 +92,7 @@ static Rect **pick_head(ObClient *c) itc->desktop == DESKTOP_ALL || c->desktop == DESKTOP_ALL)) { add_choice(choice, client_monitor(it->data)); - ob_debug("placement adding choice %d for group sibling\n", + ob_debug("placement adding choice %d for group sibling", client_monitor(it->data)); } } @@ -103,7 +103,7 @@ static Rect **pick_head(ObClient *c) if (itc != c) { add_choice(choice, client_monitor(it->data)); ob_debug("placement adding choice %d for group sibling on " - "another desktop\n", client_monitor(it->data)); + "another desktop", client_monitor(it->data)); } } } @@ -113,7 +113,7 @@ static Rect **pick_head(ObClient *c) config_place_monitor != OB_PLACE_MONITOR_MOUSE) { add_choice(choice, client_monitor(focus_client)); - ob_debug("placement adding choice %d for normal focused window\n", + ob_debug("placement adding choice %d for normal focused window", client_monitor(focus_client)); } @@ -125,7 +125,7 @@ static Rect **pick_head(ObClient *c) g_free(monitor); if (contain) { add_choice(choice, i); - ob_debug("placement adding choice %d for mouse pointer\n", i); + ob_debug("placement adding choice %d for mouse pointer", i); break; } } @@ -489,8 +489,9 @@ gboolean place_client(ObClient *client, gint *x, gint *y, gboolean userplaced = FALSE; /* per-app settings override program specified position - * but not user specified */ - if ((client->positioned & USPosition) || + * but not user specified, unless pos_force is enabled */ + if (((client->positioned & USPosition) && + !(settings && settings->pos_given && settings->pos_force)) || ((client->positioned & PPosition) && !(settings && settings->pos_given))) return FALSE;