diff options
author | Brian Cameron <brian.cameron@sun.com> | 2006-05-22 23:15:50 +0000 |
---|---|---|
committer | Brian Cameron <bcameron@src.gnome.org> | 2006-05-22 23:15:50 +0000 |
commit | a9c725fc8393772ba6c93674f7df3e3ea6c6856b (patch) | |
tree | 3b30ee235c1aa8b5c16b5949e7d3586fd57a71b8 /gui | |
parent | b24cef7551da6f2ec24000ba1daf613f010aa3ce (diff) | |
download | gdm-a9c725fc8393772ba6c93674f7df3e3ea6c6856b.tar.gz |
Fix so that the entry field always has focus after a button press, which
2006-05-22 Brian Cameron <brian.cameron@sun.com>
* gui/greeter/greeter_events.c: Fix so that the entry field
always has focus after a button press, which wasn't working
if the buttons were GTK+ style.
Diffstat (limited to 'gui')
-rw-r--r-- | gui/greeter/greeter_events.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gui/greeter/greeter_events.c b/gui/greeter/greeter_events.c index a9e396ef..34b96040 100644 --- a/gui/greeter/greeter_events.c +++ b/gui/greeter/greeter_events.c @@ -182,6 +182,21 @@ greeter_item_event_handler (GnomeCanvasItem *item, if (info->mouse_over && info->id && callback_hash) greeter_item_run_action_callback (info->id); + + /* Make sure entry has focus if a type BUTTON has been pressed. */ + if (info->item_type == GREETER_ITEM_TYPE_BUTTON) { + GreeterItemInfo *entry_info = greeter_lookup_id ("user-pw-entry"); + GtkWidget *entry = GNOME_CANVAS_WIDGET (entry_info->item)->widget; + + if (entry_info && entry_info->item && + GNOME_IS_CANVAS_WIDGET (entry_info->item) && + GTK_IS_ENTRY (GNOME_CANVAS_WIDGET (entry_info->item)->widget)) + { + /* Make sure entry has focus after button press */ + gtk_widget_grab_focus (entry); + } + } + break; default: |