[california/wip/731543-attendees] Default button stuff



commit 13b95ba95f8f561a6460cd22ff4f6db67705b9d9
Author: Jim Nelson <jim yorba org>
Date:   Wed Nov 12 18:50:42 2014 -0800

    Default button stuff

 src/host/host-attendees-editor.vala |   23 ++++++++++++++++++++---
 src/rc/attendees-editor.ui          |    6 +++++-
 2 files changed, 25 insertions(+), 4 deletions(-)
---
diff --git a/src/host/host-attendees-editor.vala b/src/host/host-attendees-editor.vala
index 9031e83..51a12db 100644
--- a/src/host/host-attendees-editor.vala
+++ b/src/host/host-attendees-editor.vala
@@ -73,17 +73,34 @@ public class AttendeesEditor : Gtk.Box, Toolkit.Card {
     }
     
     [GtkCallback]
+    private bool on_add_guest_entry_focus_in_event() {
+        accept_button.has_default = false;
+        add_guest_button.has_default = true;
+        
+        return false;
+    }
+    
+    [GtkCallback]
+    private bool on_add_guest_entry_focus_out_event() {
+        add_guest_button.has_default = false;
+        accept_button.has_default = true;
+        
+        return false;
+    }
+    
+    [GtkCallback]
     private void on_add_guest_button_clicked() {
-        if (!URI.is_valid_mailbox(add_guest_entry.text))
+        string mailbox = add_guest_entry.text.strip();
+        if (!URI.is_valid_mailbox(mailbox))
             return;
         
         try {
             // add to model (which adds to listbox) and clear entry
             guest_model.add(new Component.Person(Component.Person.Relationship.ATTENDEE,
-                URI.generate_mailto(add_guest_entry.text)));
+                URI.generate_mailto(mailbox)));
             add_guest_entry.text = "";
         } catch (Error err) {
-            debug("Unable to generate mailto: %s", err.message);
+            debug("Unable to generate mailto from \"%s\": %s", mailbox, err.message);
         }
     }
     
diff --git a/src/rc/attendees-editor.ui b/src/rc/attendees-editor.ui
index 00a064a..cfb058c 100644
--- a/src/rc/attendees-editor.ui
+++ b/src/rc/attendees-editor.ui
@@ -33,8 +33,11 @@
             <property name="visible">True</property>
             <property name="can_focus">True</property>
             <property name="tooltip_text" translatable="yes">For example, bob example com</property>
+            <property name="activates_default">True</property>
             <property name="placeholder_text" translatable="yes">Email address</property>
             <property name="input_purpose">email</property>
+            <signal name="focus-in-event" handler="on_add_guest_entry_focus_in_event" 
object="CaliforniaHostAttendeesEditor" swapped="no"/>
+            <signal name="focus-out-event" handler="on_add_guest_entry_focus_out_event" 
object="CaliforniaHostAttendeesEditor" swapped="no"/>
           </object>
           <packing>
             <property name="expand">True</property>
@@ -47,6 +50,8 @@
             <property name="label" translatable="yes">A_dd Guest</property>
             <property name="visible">True</property>
             <property name="can_focus">True</property>
+            <property name="can_default">True</property>
+            <property name="has_default">True</property>
             <property name="receives_default">True</property>
             <property name="use_underline">True</property>
             <property name="xalign">0.60000002384185791</property>
@@ -139,7 +144,6 @@
             <property name="visible">True</property>
             <property name="can_focus">True</property>
             <property name="can_default">True</property>
-            <property name="has_default">True</property>
             <property name="receives_default">True</property>
             <property name="use_underline">True</property>
             <signal name="clicked" handler="on_accept_button_clicked" object="CaliforniaHostAttendeesEditor" 
swapped="no"/>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]