gboolean contain = RECT_CONTAINS(*monitor, px, py);
g_free(monitor);
if (contain)
- return screen_area_monitor(c->desktop, i, NULL);
+ return screen_area(c->desktop, i, NULL);
}
g_assert_not_reached();
}
add_choice(choice, i);
for (i = 0; i < screen_num_monitors; ++i)
- area[i] = screen_area_monitor(c->desktop, choice[i], NULL);
+ area[i] = screen_area(c->desktop, choice[i], NULL);
return area;
}
Rect *r = maxit->data;
/* center it in the area */
- *x = r->x + (r->width - c->frame->area.width) / 2;
- *y = r->y + (r->height - c->frame->area.height) / 2;
+ *x = r->x;
+ *y = r->y;
+ if (config_place_center) {
+ *x += (r->width - c->frame->area.width) / 2;
+ *y += (r->height - c->frame->area.height) / 2;
+ }
ret = TRUE;
}
screen = pick_pointer_head(client);
else if (settings->monitor > 0 &&
(guint)settings->monitor <= screen_num_monitors)
- screen = screen_area_monitor(client->desktop,
- (guint)settings->monitor - 1, NULL);
+ screen = screen_area(client->desktop, (guint)settings->monitor - 1,
+ NULL);
else {
Rect **areas;
guint i;
(config_place_policy == OB_PLACE_POLICY_MOUSE &&
place_under_mouse(client, x, y)) ||
place_nooverlap(client, x, y) ||
- place_under_mouse(client, x, y) ||
place_random(client, x, y);
g_assert(ret);
/* get where the client should be */
- frame_frame_gravity(client->frame, x, y,
- client->area.width, client->area.height);
+ frame_frame_gravity(client->frame, x, y);
return ret;
}