Control: reassign -1 cdebconf Control: tags -1 + patch
Holger Wansing <li...@wansing-online.de> wrote: > Kaartic Sivaraam <kaarticsivaraam91...@gmail.com> wrote: > > > > I recently tried to install Debian 9 using the graphical installer. Due > > to some unknown reason my mouse did not work in the graphical > > installer. It wasn't a big deal as I could manage well just with my > > keyboard BUT I was unable to capture a screen shot of an error as the > > option for taking screen shot wasn't accessible through the keyboard > > like the 'Continue' and 'Back' options. It would be nice to make it > > accessible through the keyboard as it would be helpful in situations > > like this. > > Thanks for your mail. > This has already been reported in > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=873857 > > And it turns out that this bug already exists from the very beginning in > Debian 4.0, where the graphical installer was introduced ... I have prepared a patch to fix this (attached) against cdebconf. (I built a netboot gtk image with this patch, and confirmed it works.) Thus, re-assigning to cdebconf and tagging as 'patch'. Maybe we could have this included for Buster? IMO it's unconventional behaviour to have a button which is skipped when TAB-bing through the buttons. And it makes the screenshot button unavailable when using the graphical installer without a mouse. (Some touchpads don't work with d-i, and if you don't have an usb mouse at hand, you may end up with using the g-i without mouse functionality). Holger -- Holger Wansing <hwans...@mailbox.org> PGP-Finterprint: 496A C6E8 1442 4B34 8508 3529 59F1 87CA 156E B076
diff --git a/src/modules/frontend/gtk/screenshot.c b/src/modules/frontend/gtk/screenshot.c index 24bc3dcc..1c854f76 100644 --- a/src/modules/frontend/gtk/screenshot.c +++ b/src/modules/frontend/gtk/screenshot.c @@ -183,6 +183,7 @@ GtkWidget * cdebconf_gtk_create_screenshot_button(struct frontend * fe) { struct frontend_data * fe_data = fe->data; GtkWidget * action_box = fe_data->action_box; + GList * focus_chain; GtkWidget * button; char * label; @@ -199,8 +200,10 @@ GtkWidget * cdebconf_gtk_create_screenshot_button(struct frontend * fe) TRUE /* expand */, TRUE /* fill */, DEFAULT_PADDING); gtk_button_box_set_child_secondary(GTK_BUTTON_BOX(action_box), button, TRUE); - /* Remove the screenshot button from the focus chain. */ - gtk_container_set_focus_chain(GTK_CONTAINER(action_box), NULL); + gtk_container_get_focus_chain(GTK_CONTAINER(action_box), &focus_chain); + focus_chain = g_list_prepend(focus_chain, button); + gtk_container_set_focus_chain(GTK_CONTAINER(action_box), focus_chain); + g_list_free(focus_chain); return button; }