diff options
-rw-r--r-- | main/src/ui/util/label_hybrid.vala | 10 | ||||
-rw-r--r-- | plugins/openpgp/src/account_settings_widget.vala | 5 |
2 files changed, 13 insertions, 2 deletions
diff --git a/main/src/ui/util/label_hybrid.vala b/main/src/ui/util/label_hybrid.vala index a16bccf7..ab765dd1 100644 --- a/main/src/ui/util/label_hybrid.vala +++ b/main/src/ui/util/label_hybrid.vala @@ -20,6 +20,7 @@ public class LabelHybrid : Stack { public void show_widget() { visible_child_name = "widget"; + get_child_by_name("widget").grab_focus(); } public void show_label() { @@ -86,6 +87,10 @@ public class EntryLabelHybrid : LabelHybrid { } return false; }); + entry.focus_out_event.connect(() => { + show_label(); + return false; + }); } private void update_label() { @@ -134,6 +139,11 @@ public class ComboBoxTextLabelHybrid : LabelHybrid { update_label(); show_label(); }); + combobox.focus_out_event.connect(() => { + update_label(); + show_label(); + return false; + }); button.clicked.connect(() => { combobox.popup(); }); diff --git a/plugins/openpgp/src/account_settings_widget.vala b/plugins/openpgp/src/account_settings_widget.vala index a7ea2887..e5f5aaf1 100644 --- a/plugins/openpgp/src/account_settings_widget.vala +++ b/plugins/openpgp/src/account_settings_widget.vala @@ -31,7 +31,7 @@ private class AccountSettingsWidget : Stack, Plugins.AccountSettingsWidget { } public void deactivate() { - this.set_visible_child_name("label"); + set_visible_child_name("label"); } public void set_account(Account account) { @@ -45,7 +45,8 @@ private class AccountSettingsWidget : Stack, Plugins.AccountSettingsWidget { private void on_button_clicked() { activated(); - this.set_visible_child_name("entry"); + set_visible_child_name("entry"); + combobox.grab_focus(); combobox.popup(); } |