]> git.0d.be Git - empathy.git/commitdiff
account-widget-sip: add UI to configure the keepalive-mechanism and keepalive-interva...
authorGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Mon, 16 Nov 2009 17:51:42 +0000 (17:51 +0000)
committerGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Mon, 23 Nov 2009 15:06:37 +0000 (16:06 +0100)
libempathy-gtk/empathy-account-widget-sip.c
libempathy-gtk/empathy-account-widget-sip.ui

index 3a50ceda7e00e388fe480c9b0a82ecd495f70722..fba053f333ac0f00cbd68d28ffe39e87053c0660 100644 (file)
@@ -43,6 +43,7 @@ typedef struct {
   GtkWidget *spinbutton_stun_part;
   GtkWidget *checkbutton_discover_stun;
   GtkWidget *combobox_transport;
+  GtkWidget *combobox_keep_alive_mechanism;
 } EmpathyAccountWidgetSip;
 
 static void
@@ -115,6 +116,7 @@ empathy_account_widget_sip_build (EmpathyAccountWidget *self,
           "spinbutton_port", "port",
           "checkbutton_loose-routing", "loose-routing",
           "checkbutton_discover-binding", "discover-binding",
+          "spinbutton_keepalive-interval", "keepalive-interval",
           NULL);
 
       account_widget_sip_discover_stun_toggled_cb (
@@ -150,6 +152,26 @@ empathy_account_widget_sip_build (EmpathyAccountWidget *self,
           settings->combobox_transport, 1, 2, 6, 7);
 
       gtk_widget_show (settings->combobox_transport);
+
+      /* Create the 'keep-alive mechanism' combo box */
+      settings->combobox_keep_alive_mechanism = gtk_combo_box_new_text ();
+
+      gtk_combo_box_append_text (
+          GTK_COMBO_BOX (settings->combobox_keep_alive_mechanism), "auto");
+      gtk_combo_box_append_text (
+          GTK_COMBO_BOX (settings->combobox_keep_alive_mechanism), "register");
+      gtk_combo_box_append_text (
+          GTK_COMBO_BOX (settings->combobox_keep_alive_mechanism), "options");
+      gtk_combo_box_append_text (
+          GTK_COMBO_BOX (settings->combobox_keep_alive_mechanism), "none");
+
+      account_widget_setup_widget (self,
+          settings->combobox_keep_alive_mechanism, "keepalive-mechanism");
+
+      gtk_table_attach_defaults (GTK_TABLE (table_advanced),
+          settings->combobox_keep_alive_mechanism, 1, 2, 9, 10);
+
+      gtk_widget_show (settings->combobox_keep_alive_mechanism);
     }
 
   self->ui_details->widget = vbox_settings;
index 6471d9c04887a6c051ff07a8a7373f276c978848..1bfeafe5c35ed8ea6f25bfe943f4f671f88dd318 100644 (file)
             <child>
               <object class="GtkTable" id="table_advanced_sip_settings">
                 <property name="visible">True</property>
-                <property name="n_rows">9</property>
+                <property name="n_rows">11</property>
                 <property name="n_columns">2</property>
                 <property name="column_spacing">6</property>
                 <property name="row_spacing">6</property>
@@ -328,9 +328,48 @@ username.</property>
                     <property name="bottom_attach">9</property>
                   </packing>
                 </child>
+                <child>
+                  <object class="GtkLabel" id="label_keepalive-mechanism">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Keep-alive Mechanism:</property>
+                  </object>
+                  <packing>
+                    <property name="top_attach">9</property>
+                    <property name="bottom_attach">10</property>
+                  </packing>
+                </child>
                 <child>
                   <placeholder/>
                 </child>
+                <child>
+                  <placeholder/>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="label_keepalive-interval">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Keep-alive Interval (seconds)</property>
+                  </object>
+                  <packing>
+                    <property name="top_attach">10</property>
+                    <property name="bottom_attach">11</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkSpinButton" id="spinbutton_keepalive-interval">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="invisible_char">&#x2022;</property>
+                    <property name="adjustment">adjustment3</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="right_attach">2</property>
+                    <property name="top_attach">10</property>
+                    <property name="bottom_attach">11</property>
+                  </packing>
+                </child>
               </object>
             </child>
           </object>
@@ -445,4 +484,9 @@ username.</property>
     <property name="step_increment">1</property>
     <property name="page_increment">10</property>
   </object>
+  <object class="GtkAdjustment" id="adjustment3">
+    <property name="upper">10000</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
 </interface>