self->window, newx, newy, self->area.width, self->area.height);
client_apply_startup_state(self, newx, newy);
- keyboard_grab_for_client(self, TRUE);
mouse_grab_for_client(self, TRUE);
if (activate) {
event_ignore_queued_enters();
}
- keyboard_grab_for_client(self, FALSE);
mouse_grab_for_client(self, FALSE);
/* remove the window from our save set */
mouse_event(client, e);
} else if (e->type == KeyPress) {
keyboard_event((focus_cycle_target ? focus_cycle_target :
- client), e);
+ (client ? client : focus_client)), e);
}
}
}
}
}
-void keyboard_grab_for_client(ObClient *c, gboolean grab)
-{
- grab_for_window(c->window, grab);
-}
-
static void grab_keys(gboolean grab)
{
GList *it;
grab_for_window(screen_support_win, grab);
- for (it = client_list; it; it = g_list_next(it))
- grab_for_window(((ObClient*)it->data)->window, grab);
+ grab_for_window(RootWindow(ob_display, ob_screen), grab);
}
static gboolean chain_timeout(gpointer data)
struct _ObClient **client);
gboolean keyboard_interactively_grabbed();
-void keyboard_grab_for_client(struct _ObClient *c, gboolean grab);
-
#endif