[gnome-control-center/add-printers-dialog-entry-grab-focus: 3/3] printers: Focus search entry in new printer dialog
- From: Felipe Borges <felipeborges src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center/add-printers-dialog-entry-grab-focus: 3/3] printers: Focus search entry in new printer dialog
- Date: Thu, 10 May 2018 16:47:54 +0000 (UTC)
commit f3257ce82a1f7db6eac649fa5d26d487ea946a85
Author: Marek Kasik <mkasik redhat com>
Date: Thu May 10 14:13:38 2018 +0200
printers: Focus search entry in new printer dialog
Focus search entry in the new printer dialog once user starts to type
so he does not need to click on it.
Closes #41
panels/printers/new-printer-dialog.ui | 1 +
panels/printers/pp-new-printer-dialog.c | 16 ++++++++++++++++
2 files changed, 17 insertions(+)
---
diff --git a/panels/printers/new-printer-dialog.ui b/panels/printers/new-printer-dialog.ui
index 0e9a8110a..437220542 100644
--- a/panels/printers/new-printer-dialog.ui
+++ b/panels/printers/new-printer-dialog.ui
@@ -153,6 +153,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="transition-type">none</property>
+ <property name="has_focus">True</property>
<style>
<class name="view"/>
</style>
diff --git a/panels/printers/pp-new-printer-dialog.c b/panels/printers/pp-new-printer-dialog.c
index 7a15a455f..e7857fc01 100644
--- a/panels/printers/pp-new-printer-dialog.c
+++ b/panels/printers/pp-new-printer-dialog.c
@@ -506,6 +506,20 @@ authenticate_samba_server (GtkButton *button,
}
}
+static gboolean
+stack_key_press_cb (GtkWidget *widget,
+ GdkEvent *event,
+ gpointer user_data)
+{
+ PpNewPrinterDialog *dialog = (PpNewPrinterDialog *) user_data;
+ PpNewPrinterDialogPrivate *priv = dialog->priv;
+
+ gtk_widget_grab_focus (WID ("search-entry"));
+ gtk_main_do_event (event);
+
+ return TRUE;
+}
+
static void
pp_new_printer_dialog_init (PpNewPrinterDialog *dialog)
{
@@ -556,6 +570,8 @@ pp_new_printer_dialog_init (PpNewPrinterDialog *dialog)
widget = WID ("unlock-button");
g_signal_connect (widget, "clicked", G_CALLBACK (authenticate_samba_server), dialog);
+ g_signal_connect (WID ("stack"), "key-press-event", G_CALLBACK (stack_key_press_cb), dialog);
+
/* Authentication form widgets */
g_signal_connect (WID ("username-entry"), "changed", G_CALLBACK (auth_entries_changed), dialog);
g_signal_connect (WID ("password-entry"), "changed", G_CALLBACK (auth_entries_changed), dialog);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]