[gnome-control-center/gnome-3-8] sharing: avoid conflicts with the sensitivity of the remote control options



commit 85455ceed54dca816f784f04880ed4c4837d9001
Author: Thomas Wood <thomas wood intel com>
Date:   Fri Jun 28 12:22:16 2013 +0100

    sharing: avoid conflicts with the sensitivity of the remote control options
    
    Resolve the conflict between the GSettings bindings and the "Remote
    Control" switch both attempting to set the sensitivity of the remote
    control options by allowing the "Remote Control" switch to set the
    sensitivity on the container of the other switches.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=703189

 panels/sharing/cc-sharing-panel.c |   10 +--
 panels/sharing/sharing.ui         |  244 ++++++++++++++++++++-----------------
 2 files changed, 135 insertions(+), 119 deletions(-)
---
diff --git a/panels/sharing/cc-sharing-panel.c b/panels/sharing/cc-sharing-panel.c
index 8684019..5e0aa9b 100644
--- a/panels/sharing/cc-sharing-panel.c
+++ b/panels/sharing/cc-sharing-panel.c
@@ -784,17 +784,11 @@ cc_sharing_panel_setup_screen_sharing_dialog (CcSharingPanel *self)
                                          WID ("screen-sharing-status-label"));
 
   cc_sharing_panel_bind_switch_to_widgets (WID ("remote-view-switch"),
-                                           WID ("remote-control-switch"),
-                                           WID ("remote-control-label"),
-                                           WID ("remote-control-grid"),
+                                           WID ("remote-control-box"),
                                            NULL);
 
   cc_sharing_panel_bind_switch_to_widgets (WID ("remote-control-switch"),
-                                           WID ("approve-all-connections-switch"),
-                                           WID ("remote-control-require-password-switch"),
-                                           WID ("remote-control-require-password-label"),
-                                           WID ("approve-all-connections-label"),
-                                           WID ("password-grid"),
+                                           WID ("remote-control-grid"),
                                            NULL);
 
   cc_sharing_panel_bind_switch_to_widgets (WID ("remote-control-require-password-switch"),
diff --git a/panels/sharing/sharing.ui b/panels/sharing/sharing.ui
index a9c0032..9b1d6f5 100644
--- a/panels/sharing/sharing.ui
+++ b/panels/sharing/sharing.ui
@@ -1056,19 +1056,6 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkSwitch" id="remote-control-switch">
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="halign">end</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">1</property>
-                    <property name="top_attach">2</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
-                  </packing>
-                </child>
-                <child>
                   <object class="GtkLabel" id="label20">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
@@ -1088,100 +1075,81 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="remote-control-label">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="label" translatable="yes">Remote Control</property>
-                    <property name="mnemonic_widget">remote-control-switch</property>
-                    <attributes>
-                     <attribute name="weight" value="bold"/>
-                    </attributes>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">2</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkGrid" id="remote-control-grid">
+                  <object class="GtkBox" id="remote-control-box">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="row_spacing">12</property>
+                    <property name="orientation">vertical</property>
+                    <property name="spacing">12</property>
                     <child>
-                      <object class="GtkLabel" id="remote-control-require-password-label">
+                      <object class="GtkBox" id="box1">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="halign">start</property>
-                        <property name="label" translatable="yes">Require Password</property>
-                        <property name="mnemonic_widget">remote-control-require-password-switch</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">1</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkLabel" id="approve-all-connections-label">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="halign">start</property>
-                        <property name="hexpand">True</property>
-                        <property name="label" translatable="yes">Approve All Connections</property>
-                        <property name="use_markup">True</property>
-                        <property name="mnemonic_widget">approve-all-connections-switch</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkSwitch" id="remote-control-require-password-switch">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="halign">end</property>
-                      </object>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="top_attach">1</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkSwitch" id="approve-all-connections-switch">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="halign">end</property>
+                        <child>
+                          <object class="GtkLabel" id="remote-control-label">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="halign">start</property>
+                            <property name="hexpand">True</property>
+                            <property name="label" translatable="yes">Remote Control</property>
+                            <property name="mnemonic_widget">remote-control-switch</property>
+                            <attributes>
+                              <attribute name="weight" value="bold"/>
+                            </attributes>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">True</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkSwitch" id="remote-control-switch">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="halign">end</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">True</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
                       </object>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
+                        <property name="expand">False</property>
+                        <property name="fill">True</property>
+                        <property name="position">0</property>
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkGrid" id="password-grid">
+                      <object class="GtkGrid" id="remote-control-grid">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="row_spacing">6</property>
-                        <property name="column_spacing">6</property>
+                        <property name="row_spacing">12</property>
+                        <child>
+                          <object class="GtkLabel" id="remote-control-require-password-label">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="halign">start</property>
+                            <property name="label" translatable="yes">Require Password</property>
+                            <property 
name="mnemonic_widget">remote-control-require-password-switch</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">0</property>
+                            <property name="top_attach">1</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
                         <child>
-                          <object class="GtkLabel" id="remote-control-password-label">
+                          <object class="GtkLabel" id="approve-all-connections-label">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
                             <property name="halign">start</property>
                             <property name="hexpand">True</property>
-                            <property name="label" translatable="yes">Password</property>
-                            <property name="mnemonic_widget">remote-control-password-entry</property>
+                            <property name="label" translatable="yes">Approve All Connections</property>
+                            <property name="use_markup">True</property>
+                            <property name="mnemonic_widget">approve-all-connections-switch</property>
                           </object>
                           <packing>
                             <property name="left_attach">0</property>
@@ -1191,53 +1159,107 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkEntry" id="remote-control-password-entry">
+                          <object class="GtkSwitch" id="remote-control-require-password-switch">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="visibility">False</property>
-                            <property name="invisible_char">●</property>
-                            <property name="shadow_type">none</property>
-                            <property name="invisible_char_set">True</property>
-                            <property name="input_purpose">password</property>
+                            <property name="halign">end</property>
                           </object>
                           <packing>
                             <property name="left_attach">1</property>
-                            <property name="top_attach">0</property>
+                            <property name="top_attach">1</property>
                             <property name="width">1</property>
                             <property name="height">1</property>
                           </packing>
                         </child>
                         <child>
-                          <placeholder/>
-                        </child>
-                        <child>
-                          <object class="GtkCheckButton" id="show-password-checkbutton">
-                            <property name="label" translatable="yes">Show Password</property>
+                          <object class="GtkSwitch" id="approve-all-connections-switch">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="receives_default">False</property>
-                            <property name="xalign">0</property>
-                            <property name="draw_indicator">True</property>
+                            <property name="halign">end</property>
                           </object>
                           <packing>
                             <property name="left_attach">1</property>
-                            <property name="top_attach">1</property>
+                            <property name="top_attach">0</property>
                             <property name="width">1</property>
                             <property name="height">1</property>
                           </packing>
                         </child>
+                        <child>
+                          <object class="GtkGrid" id="password-grid">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="row_spacing">6</property>
+                            <property name="column_spacing">6</property>
+                            <child>
+                              <object class="GtkLabel" id="remote-control-password-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="halign">start</property>
+                                <property name="hexpand">True</property>
+                                <property name="label" translatable="yes">Password</property>
+                                <property name="mnemonic_widget">remote-control-password-entry</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">0</property>
+                                <property name="top_attach">0</property>
+                                <property name="width">1</property>
+                                <property name="height">1</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkEntry" id="remote-control-password-entry">
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="visibility">False</property>
+                                <property name="invisible_char">●</property>
+                                <property name="shadow_type">none</property>
+                                <property name="input_purpose">password</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="top_attach">0</property>
+                                <property name="width">1</property>
+                                <property name="height">1</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkCheckButton" id="show-password-checkbutton">
+                                <property name="label" translatable="yes">Show Password</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="xalign">0</property>
+                                <property name="draw_indicator">True</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="top_attach">1</property>
+                                <property name="width">1</property>
+                                <property name="height">1</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="left_attach">0</property>
+                            <property name="top_attach">2</property>
+                            <property name="width">2</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
                       </object>
                       <packing>
-                        <property name="left_attach">0</property>
-                        <property name="top_attach">2</property>
-                        <property name="width">2</property>
-                        <property name="height">1</property>
+                        <property name="expand">False</property>
+                        <property name="fill">True</property>
+                        <property name="position">1</property>
                       </packing>
                     </child>
                   </object>
                   <packing>
                     <property name="left_attach">0</property>
-                    <property name="top_attach">3</property>
+                    <property name="top_attach">2</property>
                     <property name="width">2</property>
                     <property name="height">1</property>
                   </packing>


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