]> Dogcows Code - chaz/openbox/commitdiff
try moving the move_onscreen with the rude into the place routine so it only gets...
authorMikael Magnusson <mikachu@comhem.se>
Sun, 6 Feb 2005 01:43:37 +0000 (01:43 +0000)
committerMikael Magnusson <mikachu@comhem.se>
Sun, 6 Feb 2005 01:43:37 +0000 (01:43 +0000)
openbox/client.c
openbox/place.c

index 2b30bddf8686dad04f09a27e890e02c019b0f4cf..037894668aca89b009690f5dc8ebeb1461196875 100644 (file)
@@ -344,16 +344,6 @@ void client_manage(Window window)
 
         place_client(self, &x, &y);
 
-           
-        /* make sure the window is visible. */
-        client_find_onscreen(self, &x, &y,
-                             self->frame->area.width,
-                             self->frame->area.height,
-                             /* non-normal clients has less rules, and
-                                windows that are being restored from a session
-                                do also. we can assume you want it back where
-                                you saved it */
-                             client_normal(self) && !self->session);
         if (x != ox || y != oy)         
             client_move(self, x, y);
     }
@@ -628,7 +618,7 @@ gboolean client_find_onscreen(ObClient *self, gint *x, gint *y, gint w, gint h,
     /* This here doesn't let windows even a pixel outside the screen,
      * not applied to all windows. Not sure if it's going to stay at all.
      * I wonder if disabling this will break struts somehow? Let's find out. */
-    if (0 && rude) {
+    if (rude) {
         /* avoid the xinerama monitor divide while we're at it,
          * remember to fix the placement stuff to avoid it also and
          * then remove this XXX */
index 6669a28e4c5fa42723c064e3acb527ed2c8f5ffc..86af6b9d78a7815597f734be8aa2637da12542e9 100644 (file)
@@ -385,6 +385,15 @@ void place_client(ObClient *client, gint *x, gint *y)
          place_smart(client, x, y, SMART_FOCUSED) ||
          place_random(client, x, y)))
     {
+        /* make sure the window is visible. */
+        client_find_onscreen(client, x, y,
+                             client->frame->area.width,
+                             client->frame->area.height,
+                             /* non-normal clients has less rules, and
+                                windows that are being restored from a session
+                                do also. we can assume you want it back where
+                                you saved it */
+                             client_normal(client) && !client->session);
         /* get where the client should be */
         frame_frame_gravity(client->frame, x, y);
     } else
This page took 0.026511 seconds and 4 git commands to generate.