test + not wrong
This commit is contained in:
parent
bdf5d409e5
commit
64772cc6d8
1 changed files with 10 additions and 11 deletions
|
@ -375,10 +375,13 @@ static gboolean place_transient(ObClient *client, gint *x, gint *y)
|
|||
|
||||
void place_client(ObClient *client, gint *x, gint *y)
|
||||
{
|
||||
gint rude = 1;
|
||||
/* 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 */
|
||||
gint rude = client_normal(client) && !client->session;
|
||||
if (client->positioned)
|
||||
rude = 0;
|
||||
if (place_transient(client, x, y) ||
|
||||
else if (place_transient(client, x, y) ||
|
||||
((config_place_policy == OB_PLACE_POLICY_MOUSE) ?
|
||||
place_under_mouse(client, x, y) :
|
||||
place_smart(client, x, y, SMART_FULL) ||
|
||||
|
@ -386,17 +389,13 @@ 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
|
||||
g_assert_not_reached(); /* the last one better succeed */
|
||||
/* make sure the window is visible. */
|
||||
client_find_onscreen(client, x, y,
|
||||
client->frame->area.width,
|
||||
client->frame->area.height,
|
||||
rude);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue