}
if (window) {
+ if (window->override_redirect)
+ return;
+
client_message.response_type = XCB_CLIENT_MESSAGE;
client_message.format = 32;
client_message.window = window->id;
weston_wm_window_schedule_repaint(window);
if (frame_status(window->frame) & FRAME_STATUS_MOVE) {
- shell_interface->move(window->shsurf, seat);
+ if (seat != NULL)
+ shell_interface->move(window->shsurf, seat);
frame_status_clear(window->frame, FRAME_STATUS_MOVE);
}
if (frame_status(window->frame) & FRAME_STATUS_RESIZE) {
- shell_interface->resize(window->shsurf, seat, location);
+ if (seat != NULL)
+ shell_interface->resize(window->shsurf, seat, location);
frame_status_clear(window->frame, FRAME_STATUS_RESIZE);
}
struct theme *t = window->wm->theme;
int vborder, hborder;
- if (window->fullscreen) {
+ if (window->decorate) {
+ hborder = 2 * t->width;
+ vborder = t->titlebar_height + t->width;
+ } else {
hborder = 0;
vborder = 0;
- } else if (window->decorate) {
- hborder = 2 * (t->margin + t->width);
- vborder = 2 * t->margin + t->titlebar_height + t->width;
- } else {
- hborder = 2 * t->margin;
- vborder = 2 * t->margin;
}
if (width > hborder)