summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanny Baumann <dannybaumann@web.de>2009-01-02 13:07:43 +0100
committerDanny Baumann <dannybaumann@web.de>2009-01-02 13:36:44 +0100
commit79502a57fbaa7d1fce703374db6ee5635f062b06 (patch)
tree3e85e9c44d35c5ffed02b83a7b0462ce0500bbf3
parenta49301e30f966f4b4ffaf9ab8bf6f62357e72d66 (diff)
Apply fixed placement rules even for unmovable windows.
-rw-r--r--plugins/place.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/plugins/place.c b/plugins/place.c
index 5bff58a5..bbacfb21 100644
--- a/plugins/place.c
+++ b/plugins/place.c
@@ -1136,13 +1136,16 @@ placeDoWindowPlacement (CompWindow *w,
PLACE_SCREEN (s);
- strategy = placeGetStrategyForWindow (w);
-
- if (strategy == NoPlacement)
- return FALSE;
-
if (placeMatchPosition (w, &x, &y, &keepInWorkarea))
+ {
strategy = keepInWorkarea ? ConstrainOnly : NoPlacement;
+ }
+ else
+ {
+ strategy = placeGetStrategyForWindow (w);
+ if (strategy == NoPlacement)
+ return FALSE;
+ }
output = placeGetPlacementOutput (w, strategy, x, y);
workArea = output->workArea;