global: Use the new mutter API for focusing the stage window

This way, we aren't "going behind mutter's back" about what the current
focused window is.

https://bugzilla.gnome.org/show_bug.cgi?id=700735
This commit is contained in:
Jasper St. Pierre 2013-05-23 16:26:50 -04:00
parent 6c3096f71f
commit 634ce34e00

View File

@ -541,14 +541,6 @@ focus_window_changed (MetaDisplay *display,
shell_global_set_stage_input_mode (global, SHELL_STAGE_INPUT_MODE_NORMAL); shell_global_set_stage_input_mode (global, SHELL_STAGE_INPUT_MODE_NORMAL);
} }
static void
shell_global_focus_stage (ShellGlobal *global)
{
XSetInputFocus (global->xdisplay, global->stage_xwindow,
RevertToPointerRoot,
shell_global_get_current_time (global));
}
/** /**
* shell_global_set_stage_input_mode: * shell_global_set_stage_input_mode:
* @global: the #ShellGlobal * @global: the #ShellGlobal
@ -588,7 +580,8 @@ shell_global_set_stage_input_mode (ShellGlobal *global,
meta_set_stage_input_region (screen, global->input_region); meta_set_stage_input_region (screen, global->input_region);
if (mode == SHELL_STAGE_INPUT_MODE_FOCUSED) if (mode == SHELL_STAGE_INPUT_MODE_FOCUSED)
shell_global_focus_stage (global); meta_focus_stage_window (global->meta_screen,
shell_global_get_current_time (global));
if (mode != global->input_mode) if (mode != global->input_mode)
{ {