ui/gtk: Restore keyboard focus after Page change

-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTv6RdAAoJEEy22O7T6HE4jMUQANscE1w8llXtYFqBuGjzj9Yw
 45OnIQ6XAiZb7g6MPvKIwCyM7EemmJHV/joR7NqcSl9LsY02vg0eaS4rn4dSsGBM
 6esKTolQ8SgFkNSRsLxUj5+857cxBFMNDhgzId860m3OYYsETEd0pqn26UVAlJkt
 BQrikoGCuQW3Z45xv4xH4nrU2VfsLqz5EP/o6nshnljbswbrTFawA/tQ0vXBk6iy
 PEUwN9WiOhOrZfRd8YoRuo7hXth1tZO5954HJBlzXXsdm2fxypJ/rJj+s8gCXFpm
 zf7fAjwRWhF3pX/SBN1orX7x6rmC4qnQDAxGOkweLTS4gFB1ID99LsmCueUPIGF8
 Rbcogxi9Fg0koZjhZVbQDjLm1/7fPWxDK+kqMSS/O1HST7MG4IzeRJAkfnF/wFV+
 Mt07Q5gVGch4ESJytQj4yO8anJH+94229kjooQGShyH549mRx86InwD2LuEwlndk
 9W3FeZw8SATpwlP3aewngLZtoiuf5LeKriGQWAP0gI0TgxKCqkv9zC/xsST1cx8c
 rForOK1LH3tNSnDkAvVK5O4+x2Slv2ZTrvKN2bNTz8vQAFxyaArPpsVR8PK/oaUF
 HAKntzVFuAnas/4I/pUl7t5d+TOFPeHPLG6Kcmjpw5ds+bnckmza0D0NsqABp3Dd
 w+fgr2tv+a59i+sl41Ca
 =KN7k
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/kraxel/tags/pull-gtk-20140711-1' into staging

ui/gtk: Restore keyboard focus after Page change

# gpg: Signature made Fri 11 Jul 2014 09:46:21 BST using RSA key ID D3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
# gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>"
# gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>"

* remotes/kraxel/tags/pull-gtk-20140711-1:
  ui/gtk: Restore keyboard focus after Page change

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Peter Maydell 2014-07-11 13:48:07 +01:00
commit 22df3452dc

View File

@ -992,13 +992,16 @@ static void gd_menu_switch_vc(GtkMenuItem *item, void *opaque)
{
GtkDisplayState *s = opaque;
VirtualConsole *vc = gd_vc_find_by_menu(s);
GtkNotebook *nb = GTK_NOTEBOOK(s->notebook);
GtkWidget *child;
gint page;
gtk_release_modifiers(s);
if (vc) {
page = gtk_notebook_page_num(GTK_NOTEBOOK(s->notebook),
vc->tab_item);
gtk_notebook_set_current_page(GTK_NOTEBOOK(s->notebook), page);
page = gtk_notebook_page_num(nb, vc->tab_item);
gtk_notebook_set_current_page(nb, page);
child = gtk_notebook_get_nth_page(nb, page);
gtk_widget_grab_focus(child);
}
}