- return;
- if (place_transient(client, x, y))
- return;
- if (place_dialog(client, x, y))
- return;
- if (place_smart(client, x, y))
- return;
- if (place_random(client, x, y))
- return;
- g_assert_not_reached(); /* the last one better succeed */
+ return FALSE;
+ if (place_transient_splash(client, x, y))
+ ret = TRUE;
+ else if (!(
+ place_per_app_setting(client, x, y, settings) ||
+ ((config_place_policy == OB_PLACE_POLICY_MOUSE) ?
+ place_under_mouse(client, x, y) :
+ place_smart(client, x, y, SMART_FULL, FALSE) ||
+ place_smart(client, x, y, SMART_FULL, TRUE) ||
+ place_smart(client, x, y, SMART_GROUP, FALSE) ||
+ place_smart(client, x, y, SMART_GROUP, TRUE) ||
+ place_smart(client, x, y, SMART_FOCUSED, TRUE) ||
+ place_random(client, x, y))))
+ g_assert_not_reached(); /* the last one better succeed */
+ /* get where the client should be */
+ frame_frame_gravity(client->frame, x, y,
+ client->area.width, client->area.height);
+ return ret;