[calls/wip/cdavis/clamp-dial-view: 19/19] new-call-box: Clamp everything




commit aaf87e5e898f2e8e1e60e9ce5315b1f4016fb01f
Author: Christopher Davis <christopherdavis gnome org>
Date:   Tue Nov 23 20:07:39 2021 -0800

    new-call-box: Clamp everything
    
    This prevents items from stretching out of bounds.

 src/ui/new-call-box.ui | 281 ++++++++++++++++++++++++++-----------------------
 1 file changed, 147 insertions(+), 134 deletions(-)
---
diff --git a/src/ui/new-call-box.ui b/src/ui/new-call-box.ui
index f3f6498a..367dad0d 100644
--- a/src/ui/new-call-box.ui
+++ b/src/ui/new-call-box.ui
@@ -12,156 +12,169 @@
     <property name="orientation">vertical</property>
     <property name="visible">True</property>
 
-    <child>
-      <object class="GtkListBox" id="origin_list_box">
-        <property name="visible">True</property>
-        <property name="selection-mode">none</property>
-        <property name="margin-bottom">6</property>
-        <property name="halign">center</property>
-        <child>
-          <object class="HdyComboRow" id="origin_list">
-            <property name="visible">True</property>
-            <signal name="notify::selected-index" handler="notify_selected_index_cb" swapped="yes"/>
-          </object>
-        </child>
-      </object>
-    </child>
-    <child>
-      <object class="GtkEntry" id="address_entry">
-        <property name="visible" bind-source="CallsNewCallBox" bind-property="numeric-input-only" 
bind-flags="sync-create|invert-boolean"/>
-        <property name="xalign">0.5</property>
-        <property name="placeholder-text" translatable="yes">Enter a VoIP address</property>
-        <signal name="activate" handler="address_activate_cb" swapped="yes"/>
-        <signal name="changed" handler="address_changed_cb" swapped="yes"/>
-        <style>
-          <class name="address-entry"/>
-        </style>
-      </object>
-    </child>
-    <child>
-      <object class="GtkEntry" id="keypad_entry">
-        <property name="visible" bind-source="CallsNewCallBox" bind-property="numeric-input-only" 
bind-flags="sync-create"/>
-        <property name="hexpand">True</property>
-        <property name="xalign">0.5</property>
-        <property name="placeholder-text" translatable="yes">Enter a number</property>
-        <signal name="activate" handler="dial_clicked_cb" swapped="yes"/>
-        <style>
-          <class name="phone-number-entry"/>
-        </style>
-      </object>
-    </child>
-    <child>
-      <object class="HdyKeypad" id="keypad">
-        <property name="visible" bind-source="CallsNewCallBox" bind-property="numeric-input-only" 
bind-flags="sync-create"/>
-        <property name="column_spacing">16</property>
-        <property name="row_spacing">10</property>
-        <property name="halign">center</property>
-        <property name="margin_top">18</property>
-        <property name="margin_bottom">18</property>
-        <property name="entry">keypad_entry</property>
-      </object>
-      <packing>
-        <property name="expand">False</property>
-        <property name="fill">True</property>
-      </packing>
-    </child>
     <child>
       <object class="HdyClamp">
         <property name="visible">True</property>
-        <property name="maximum-size">250</property>
+        <property name="vexpand">True</property>
+        <property name="maximum-size">300</property>
         <child>
-          <object class="GtkBox">
-            <property name="visible" bind-source="CallsNewCallBox" bind-property="numeric-input-only" 
bind-flags="sync-create"/>
-            <property name="can_focus">False</property>
-            <property name="orientation">horizontal</property>
-            <child type="center">
-              <object class="GtkButton" id="dial">
-                <property name="always_show_image">True</property>
-                <property name="can_focus">True</property>
-                <property name="receives_default">True</property>
+          <object class="HdyClamp">
+            <property name="visible">True</property>
+            <property name="orientation">vertical</property>
+            <child>
+              <object class="GtkBox">
                 <property name="visible">True</property>
-                <signal name="clicked" handler="dial_clicked_cb" swapped="yes"/>
-                <style>
-                  <class name="suggested-action"/>
-                  <class name="image-button"/>
-                  <class name="dial-button"/>
-                </style>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="a11y-dial">
-                    <property name="accessible-name" translatable="yes">Dial</property>
+                <property name="orientation">vertical</property>
+                <child>
+                  <object class="GtkListBox" id="origin_list_box">
+                    <property name="visible">True</property>
+                    <property name="selection-mode">none</property>
+                    <property name="margin-bottom">6</property>
+                    <property name="halign">center</property>
+                    <child>
+                      <object class="HdyComboRow" id="origin_list">
+                        <property name="visible">True</property>
+                        <signal name="notify::selected-index" handler="notify_selected_index_cb" 
swapped="yes"/>
+                      </object>
+                    </child>
                   </object>
                 </child>
                 <child>
-                  <object class="GtkImage" id="back_image">
-                    <property name="visible">True</property>
-                    <property name="icon-name">call-start-symbolic</property>
-                    <property name="icon-size">5</property>
+                  <object class="GtkEntry" id="address_entry">
+                    <property name="visible" bind-source="CallsNewCallBox" 
bind-property="numeric-input-only" bind-flags="sync-create|invert-boolean"/>
+                    <property name="xalign">0.5</property>
+                    <property name="placeholder-text" translatable="yes">Enter a VoIP address</property>
+                    <signal name="activate" handler="address_activate_cb" swapped="yes"/>
+                    <signal name="changed" handler="address_changed_cb" swapped="yes"/>
+                    <style>
+                      <class name="address-entry"/>
+                    </style>
                   </object>
                 </child>
-              </object>
-            </child>
-            <child>
-              <object class="GtkButton" id="backspace">
-                <property name="always_show_image">True</property>
-                <property name="visible">True</property>
-                <property name="focus-on-click">False</property>
-                <property name="margin_right">15</property>
-                <property name="valign">center</property>
-                <property name="halign">center</property>
-                <signal name="clicked" handler="backspace_clicked_cb" swapped="yes"/>
-                <child internal-child="accessible">
-                  <object class="AtkObject" id="a11y-backspace">
-                    <property name="accessible-name" translatable="yes">Delete character in front of 
cursor</property>
+                <child>
+                  <object class="GtkEntry" id="keypad_entry">
+                    <property name="visible" bind-source="CallsNewCallBox" 
bind-property="numeric-input-only" bind-flags="sync-create"/>
+                    <property name="hexpand">True</property>
+                    <property name="xalign">0.5</property>
+                    <property name="placeholder-text" translatable="yes">Enter a number</property>
+                    <signal name="activate" handler="dial_clicked_cb" swapped="yes"/>
+                    <style>
+                      <class name="phone-number-entry"/>
+                    </style>
                   </object>
                 </child>
-                <style>
-                  <class name="delete-button"/>
-                </style>
                 <child>
-                  <object class="GtkImage">
-                    <property name="visible">True</property>
-                    <property name="icon-name">edit-clear-symbolic</property>
+                  <object class="HdyKeypad" id="keypad">
+                    <property name="visible" bind-source="CallsNewCallBox" 
bind-property="numeric-input-only" bind-flags="sync-create"/>
+                    <property name="column_spacing">16</property>
+                    <property name="row_spacing">10</property>
+                    <property name="halign">center</property>
+                    <property name="margin_top">18</property>
+                    <property name="margin_bottom">18</property>
+                    <property name="entry">keypad_entry</property>
                   </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">True</property>
+                  </packing>
                 </child>
-              </object>
-              <packing>
-                <property name="pack_type">end</property>
-              </packing>
-            </child>
-          </object>
-        </child>
-      </object>
-    </child>
-    <child>
-      <object class="GtkListBox" id="result_list">
-        <property name="visible" bind-source="CallsNewCallBox" bind-property="numeric-input-only" 
bind-flags="sync-create|invert-boolean"/>
-        <property name="margin-top">16</property>
-        <property name="selection-mode">none</property>
-        <child>
-          <object class="HdyActionRow" id="result">
-            <property name="visible">False</property>
-            <property name="title" bind-source="address_entry" bind-property="text"/>
-            <property name="width-request">300</property>
-            <property name="subtitle" translatable="yes">SIP Account</property>
-            <child type="prefix">
-              <object class="HdyAvatar">
-                <property name="visible">True</property>
-                <property name="show-initials">True</property>
-                <property name="size">36</property>
-              </object>
-            </child>
-            <child>
-              <object class="GtkButton" id="dial_result_btn">
-                <property name="visible">True</property>
-                <property name="always_show_image">True</property>
-                <signal name="clicked" handler="dial_result_clicked_cb" swapped="yes"/>
-                <style>
-                  <class name="rounded-button"/>
-                </style>
                 <child>
-                  <object class="GtkImage">
-                    <property name="visible">True</property>
-                    <property name="icon-name">call-start-symbolic</property>
+                  <object class="GtkBox">
+                    <property name="visible" bind-source="CallsNewCallBox" 
bind-property="numeric-input-only" bind-flags="sync-create"/>
+                    <property name="can_focus">False</property>
+                    <property name="orientation">horizontal</property>
+                    <child type="center">
+                      <object class="GtkButton" id="dial">
+                        <property name="always_show_image">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="visible">True</property>
+                        <signal name="clicked" handler="dial_clicked_cb" swapped="yes"/>
+                        <style>
+                          <class name="suggested-action"/>
+                          <class name="image-button"/>
+                          <class name="dial-button"/>
+                        </style>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="a11y-dial">
+                            <property name="accessible-name" translatable="yes">Dial</property>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImage" id="back_image">
+                            <property name="visible">True</property>
+                            <property name="icon-name">call-start-symbolic</property>
+                            <property name="icon-size">5</property>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="backspace">
+                        <property name="always_show_image">True</property>
+                        <property name="visible">True</property>
+                        <property name="focus-on-click">False</property>
+                        <property name="margin_right">15</property>
+                        <property name="valign">center</property>
+                        <property name="halign">center</property>
+                        <signal name="clicked" handler="backspace_clicked_cb" swapped="yes"/>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="a11y-backspace">
+                            <property name="accessible-name" translatable="yes">Delete character in front of 
cursor</property>
+                          </object>
+                        </child>
+                        <style>
+                          <class name="delete-button"/>
+                        </style>
+                        <child>
+                          <object class="GtkImage">
+                            <property name="visible">True</property>
+                            <property name="icon-name">edit-clear-symbolic</property>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="pack_type">end</property>
+                      </packing>
+                    </child>
+                  </object>
+                </child>
+                <child>
+                  <object class="GtkListBox" id="result_list">
+                    <property name="visible" bind-source="CallsNewCallBox" 
bind-property="numeric-input-only" bind-flags="sync-create|invert-boolean"/>
+                    <property name="margin-top">16</property>
+                    <property name="selection-mode">none</property>
+                    <child>
+                      <object class="HdyActionRow" id="result">
+                        <property name="visible">False</property>
+                        <property name="title" bind-source="address_entry" bind-property="text"/>
+                        <property name="width-request">300</property>
+                        <property name="subtitle" translatable="yes">SIP Account</property>
+                        <child type="prefix">
+                          <object class="HdyAvatar">
+                            <property name="visible">True</property>
+                            <property name="show-initials">True</property>
+                            <property name="size">36</property>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkButton" id="dial_result_btn">
+                            <property name="visible">True</property>
+                            <property name="always_show_image">True</property>
+                            <signal name="clicked" handler="dial_result_clicked_cb" swapped="yes"/>
+                            <style>
+                              <class name="rounded-button"/>
+                            </style>
+                            <child>
+                              <object class="GtkImage">
+                                <property name="visible">True</property>
+                                <property name="icon-name">call-start-symbolic</property>
+                              </object>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
                   </object>
                 </child>
               </object>


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