[PATCH 1/2] Rework all the dialogs after you click Done on the storage spoke (#903501).

Chris Lumens clumens at redhat.com
Wed Feb 6 19:06:02 UTC 2013


(1) Change a lot of wording and button text to make it clear what happens next.

(2) Allow going to the reclaim dialog even if you have enough space to begin
with.

(3) Get rid of the custom partitioning checkbox, and make it a button instead.

(4) Get rid of the modify software selection button from one dialog, since
there's now too many buttons.
---
 pyanaconda/ui/gui/spokes/storage.glade | 192 ++++++++++++---------------------
 pyanaconda/ui/gui/spokes/storage.py    | 192 +++++++++++++++++----------------
 2 files changed, 166 insertions(+), 218 deletions(-)

diff --git a/pyanaconda/ui/gui/spokes/storage.glade b/pyanaconda/ui/gui/spokes/storage.glade
index 72c1ebf..c38a738 100644
--- a/pyanaconda/ui/gui/spokes/storage.glade
+++ b/pyanaconda/ui/gui/spokes/storage.glade
@@ -31,7 +31,6 @@
                 <property name="halign">start</property>
                 <property name="border_width">6</property>
                 <property name="use_underline">True</property>
-                <signal name="clicked" handler="on_cancel_clicked" swapped="no"/>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -49,18 +48,19 @@
                 <property name="receives_default">True</property>
                 <property name="border_width">6</property>
                 <property name="use_underline">True</property>
-                <signal name="clicked" handler="on_continue_clicked" swapped="no"/>
               </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">True</property>
                 <property name="position">1</property>
+                <property name="non_homogeneous">True</property>
               </packing>
             </child>
           </object>
           <packing>
             <property name="expand">False</property>
             <property name="fill">True</property>
+            <property name="pack_type">end</property>
             <property name="position">0</property>
           </packing>
         </child>
@@ -92,7 +92,7 @@
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="xalign">0</property>
-                <property name="label" translatable="yes">Here we'll describe what your options are.</property>
+                <property name="label">Here we'll describe what your options are.</property>
                 <property name="wrap">True</property>
                 <attributes>
                   <attribute name="font-desc" value="Cantarell 11"/>
@@ -105,6 +105,59 @@
               </packing>
             </child>
             <child>
+              <object class="GtkRadioButton" id="options1_autopart_radio">
+                <property name="label">Here's the autopart label.</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_underline">True</property>
+                <property name="xalign">0</property>
+                <property name="active">True</property>
+                <property name="draw_indicator">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkRadioButton" id="options1_reclaim_radio">
+                <property name="label">Here's the reclaim label.</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_underline">True</property>
+                <property name="xalign">0</property>
+                <property name="active">True</property>
+                <property name="draw_indicator">True</property>
+                <property name="group">options1_autopart_radio</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">3</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkRadioButton" id="options1_custom_radio">
+                <property name="label">Here's the custom label.</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_underline">True</property>
+                <property name="xalign">0</property>
+                <property name="active">True</property>
+                <property name="draw_indicator">True</property>
+                <property name="group">options1_autopart_radio</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">4</property>
+              </packing>
+            </child>
+            <child>
               <object class="GtkExpander" id="options1_expander">
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
@@ -162,25 +215,7 @@
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">True</property>
-                <property name="position">2</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkCheckButton" id="options1_custom_check">
-                <property name="label" translatable="yes">Let me customize the _partitioning of the disks instead.</property>
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="receives_default">False</property>
-                <property name="use_underline">True</property>
-                <property name="xalign">0</property>
-                <property name="draw_indicator">True</property>
-                <signal name="toggled" handler="on_custom_toggled" swapped="no"/>
-              </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">True</property>
-                <property name="pack_type">end</property>
-                <property name="position">3</property>
+                <property name="position">5</property>
               </packing>
             </child>
           </object>
@@ -225,7 +260,6 @@
                 <property name="receives_default">True</property>
                 <property name="border_width">6</property>
                 <property name="use_underline">True</property>
-                <signal name="clicked" handler="on_cancel_clicked" swapped="no"/>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -235,43 +269,43 @@
               </packing>
             </child>
             <child>
-              <object class="GtkButton" id="options2_modify_sw_button">
-                <property name="label" translatable="yes">_Modify software selection</property>
+              <object class="GtkButton" id="options2_custom_button">
+                <property name="label" translatable="yes">_Custom partitioning</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="receives_default">True</property>
-                <property name="tooltip_text" translatable="yes">Please wait... software metadata still loading.</property>
                 <property name="border_width">6</property>
                 <property name="use_underline">True</property>
-                <signal name="clicked" handler="on_modify_sw_clicked" swapped="no"/>
               </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">True</property>
                 <property name="position">1</property>
+                <property name="non_homogeneous">True</property>
               </packing>
             </child>
             <child>
               <object class="GtkButton" id="options2_reclaim_button">
-                <property name="label" translatable="yes">Reclaim _space</property>
+                <property name="label" translatable="yes">_Reclaim space</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="has_focus">True</property>
                 <property name="receives_default">True</property>
                 <property name="border_width">6</property>
                 <property name="use_underline">True</property>
-                <signal name="clicked" handler="on_reclaim_clicked" swapped="no"/>
               </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">True</property>
                 <property name="position">2</property>
+                <property name="non_homogeneous">True</property>
               </packing>
             </child>
           </object>
           <packing>
             <property name="expand">False</property>
             <property name="fill">True</property>
+            <property name="pack_type">end</property>
             <property name="position">0</property>
           </packing>
         </child>
@@ -397,42 +431,6 @@
                     <property name="height">1</property>
                   </packing>
                 </child>
-                <child>
-                  <object class="GtkLabel" id="options2_disks_size_label">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="xalign">1</property>
-                    <property name="label" translatable="yes">disks size</property>
-                    <attributes>
-                      <attribute name="font-desc" value="Cantarell Bold 11"/>
-                      <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="GtkLabel" id="options2_disks_size_desc_label">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Space in selected disks reclaimable by deleting existing partitions.</property>
-                    <property name="wrap">True</property>
-                    <attributes>
-                      <attribute name="font-desc" value="Cantarell 11"/>
-                    </attributes>
-                  </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>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -518,24 +516,6 @@
                 <property name="position">4</property>
               </packing>
             </child>
-            <child>
-              <object class="GtkCheckButton" id="options2_custom_check">
-                <property name="label" translatable="yes">I don't need help; let me customize disk _partitioning.</property>
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="receives_default">False</property>
-                <property name="use_underline">True</property>
-                <property name="xalign">0</property>
-                <property name="draw_indicator">True</property>
-                <signal name="toggled" handler="on_custom_toggled" swapped="no"/>
-              </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">True</property>
-                <property name="pack_type">end</property>
-                <property name="position">5</property>
-              </packing>
-            </child>
           </object>
           <packing>
             <property name="expand">False</property>
@@ -547,7 +527,7 @@
     </child>
     <action-widgets>
       <action-widget response="0">options2_cancel_button</action-widget>
-      <action-widget response="2">options2_modify_sw_button</action-widget>
+      <action-widget response="5">options2_custom_button</action-widget>
       <action-widget response="3">options2_reclaim_button</action-widget>
     </action-widgets>
   </object>
@@ -579,7 +559,6 @@
                 <property name="receives_default">True</property>
                 <property name="border_width">6</property>
                 <property name="use_underline">True</property>
-                <signal name="clicked" handler="on_quit_clicked" swapped="no"/>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -597,12 +576,12 @@
                 <property name="tooltip_text" translatable="yes">Please wait... software metadata still loading.</property>
                 <property name="border_width">6</property>
                 <property name="use_underline">True</property>
-                <signal name="clicked" handler="on_modify_sw_clicked" swapped="no"/>
               </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">True</property>
                 <property name="position">1</property>
+                <property name="non_homogeneous">True</property>
               </packing>
             </child>
             <child>
@@ -614,18 +593,19 @@
                 <property name="receives_default">True</property>
                 <property name="border_width">6</property>
                 <property name="use_underline">True</property>
-                <signal name="clicked" handler="on_cancel_clicked" swapped="no"/>
               </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">True</property>
                 <property name="position">2</property>
+                <property name="non_homogeneous">True</property>
               </packing>
             </child>
           </object>
           <packing>
             <property name="expand">False</property>
             <property name="fill">True</property>
+            <property name="pack_type">end</property>
             <property name="position">0</property>
           </packing>
         </child>
@@ -749,42 +729,6 @@
                     <property name="height">1</property>
                   </packing>
                 </child>
-                <child>
-                  <object class="GtkLabel" id="options3_disks_size_label">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="xalign">1</property>
-                    <property name="label" translatable="yes">disks size</property>
-                    <attributes>
-                      <attribute name="font-desc" value="Cantarell Bold 11"/>
-                      <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="GtkLabel" id="options3_disks_size_desc_label">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Space in selected disks reclaimable by deleting existing partitions.</property>
-                    <property name="wrap">True</property>
-                    <attributes>
-                      <attribute name="font-desc" value="Cantarell 11"/>
-                    </attributes>
-                  </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>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -1028,9 +972,9 @@
                         <property name="halign">end</property>
                         <property name="valign">end</property>
                         <property name="hexpand">True</property>
+                        <property name="use_underline">True</property>
                         <property name="xalign">1</property>
                         <property name="draw_indicator">True</property>
-                        <property name="use_underline">True</property>
                       </object>
                       <packing>
                         <property name="left_attach">1</property>
diff --git a/pyanaconda/ui/gui/spokes/storage.py b/pyanaconda/ui/gui/spokes/storage.py
index 69ed7fd..ece68e0 100644
--- a/pyanaconda/ui/gui/spokes/storage.py
+++ b/pyanaconda/ui/gui/spokes/storage.py
@@ -124,11 +124,19 @@ class InstallOptions1Dialog(GUIObject):
     mainWidgetName = "options1_dialog"
     uiFile = "spokes/storage.glade"
 
+    # Response ID codes for all the various buttons on all the dialogs.
     RESPONSE_CANCEL = 0
     RESPONSE_CONTINUE = 1
     RESPONSE_MODIFY_SW = 2
     RESPONSE_RECLAIM = 3
     RESPONSE_QUIT = 4
+    RESPONSE_CUSTOM = 5
+
+    # Which radiobutton is selected on the options1 dialog?
+    RESPONSE_CONTINUE_NONE = -1
+    RESPONSE_CONTINUE_AUTOPART = 0
+    RESPONSE_CONTINUE_RECLAIM = 1
+    RESPONSE_CONTINUE_CUSTOM = 2
 
     def __init__(self, *args, **kwargs):
         self.payload = kwargs.pop("payload", None)
@@ -139,28 +147,51 @@ class InstallOptions1Dialog(GUIObject):
         self.window.destroy()
         return rc
 
-    def refresh(self, required_space, disks_size, disk_free, fs_free, autopart,
-                autoPartType):
-        self.custom = not autopart
-        self.custom_checkbutton = self.builder.get_object("options1_custom_check")
-        self.custom_checkbutton.set_active(self.custom)
-
+    def refresh(self, required_space, disk_free, fs_free, autoPartType):
         self.autoPartType = autoPartType
         self.autoPartTypeCombo = self.builder.get_object("options1_combo")
         self.autoPartTypeCombo.set_active(self.autoPartType)
 
         options_label = self.builder.get_object("options1_label")
 
-        options_text = (_("You have plenty of space to install <b>%s</b>, so "
-                          "we can automatically\n"
-                          "configure the rest of the installation for you.")
-                        % productName)
+        options_text = _("You have <b>%(freeSpace)s</b> of free space, which is "
+                         "enough to install %(productName)s.  What would you "
+                         "like to do?") % {"freeSpace": disk_free, "productName": productName}
         options_label.set_markup(options_text)
 
-    def _set_free_space_labels(self, disks_size, disk_free, fs_free):
-        disks_size_text = size_str(disks_size)
-        self.disks_size_label.set_text(disks_size_text)
+        label = self.builder.get_object("options1_autopart_radio").get_children()[0]
+        label.set_markup(_("<span font-desc=\"Cantarell 11\">A_utomatically "
+                           "configure my %(productName)s installation to the "
+                           "disk(s) I selected and return me to the main "
+                           "menu.</span>") % {"productName": productName})
+        label.set_line_wrap(True)
+        label.set_use_underline(True)
+
+        label = self.builder.get_object("options1_reclaim_radio").get_children()[0]
+        label.set_markup(_("<span font-desc=\"Cantarell 11\">I want more space. "
+                           "_Guide me through shrinking and/or removing partitions "
+                           "so I can have more space for %(productName)s.</span>") % {"productName": productName})
+        label.set_line_wrap(True)
+        label.set_use_underline(True)
+
+        label = self.builder.get_object("options1_custom_radio").get_children()[0]
+        label.set_markup(_("<span font-desc=\"Cantarell 11\">I want to review/_modify "
+                           "my disk partitions before continuing.</span>"))
+        label.set_line_wrap(True)
+        label.set_use_underline(True)
+
+    @property
+    def continue_response(self):
+        if self.builder.get_object("options1_autopart_radio").get_active():
+            return self.RESPONSE_CONTINUE_AUTOPART
+        elif self.builder.get_object("options1_reclaim_radio").get_active():
+            return self.RESPONSE_CONTINUE_RECLAIM
+        elif self.builder.get_object("options1_custom_radio").get_active():
+            return self.RESPONSE_CONTINUE_CUSTOM
+        else:
+            return self.RESPONSE_CONTINUE_NONE
 
+    def _set_free_space_labels(self, disk_free, fs_free):
         disk_free_text = size_str(disk_free)
         self.disk_free_label.set_text(disk_free_text)
 
@@ -203,27 +234,6 @@ class InstallOptions1Dialog(GUIObject):
             GLib.timeout_add_seconds(1, self._check_for_storage_thread, modify_button)
 
     # signal handlers
-    def on_cancel_clicked(self, button):
-        # return to the spoke without making any changes
-        print "CANCEL CLICKED"
-
-    def on_quit_clicked(self, button):
-        print "QUIT CLICKED"
-
-    def on_modify_sw_clicked(self, button):
-        # switch to the software selection hub
-        print "MODIFY SOFTWARE CLICKED"
-
-    def on_reclaim_clicked(self, button):
-        # show reclaim screen/dialog
-        print "RECLAIM CLICKED"
-
-    def on_continue_clicked(self, button):
-        print "CONTINUE CLICKED"
-
-    def on_custom_toggled(self, checkbutton):
-        self.custom = checkbutton.get_active()
-
     def on_type_changed(self, combo):
         self.autoPartType = combo.get_active()
 
@@ -231,12 +241,7 @@ class InstallOptions2Dialog(InstallOptions1Dialog):
     builderObjects = ["options2_dialog"]
     mainWidgetName = "options2_dialog"
 
-    def refresh(self, required_space, disks_size, disk_free, fs_free, autopart,
-                autoPartType):
-        self.custom = not autopart
-        self.custom_checkbutton = self.builder.get_object("options2_custom_check")
-        self.custom_checkbutton.set_active(self.custom)
-
+    def refresh(self, required_space, disk_free, fs_free, autoPartType):
         self.autoPartType = autoPartType
         self.autoPartTypeCombo = self.builder.get_object("options2_combo")
         self.autoPartTypeCombo.set_active(self.autoPartType)
@@ -248,30 +253,24 @@ class InstallOptions2Dialog(InstallOptions1Dialog):
 
         self.disk_free_label = self.builder.get_object("options2_disk_free_label")
         self.fs_free_label = self.builder.get_object("options2_fs_free_label")
-        self.disks_size_label = self.builder.get_object("options2_disks_size_label")
-        self._set_free_space_labels(disks_size, disk_free, fs_free)
+        self._set_free_space_labels(disk_free, fs_free)
 
-        label_text = (_("<b>You don't have enough space available to install "
-                        "%s</b>, but we can help you\n"
-                        "reclaim space by shrinking or removing existing partitions.")
-                      % productName)
+        label_text = _("<b>You don't have enough space available to install "
+                       "%s</b>.  You can shrink or remove existing partitions "
+                       "via our guided reclaim space tool, or you can adjust your "
+                       "partitions on your own in the custom partitioning "
+                       "interface.") % productName
         self.builder.get_object("options2_label2").set_markup(label_text)
 
-        self._add_button_watcher("options2_modify_sw_button")
-
-    def on_custom_toggled(self, checkbutton):
-        super(InstallOptions2Dialog, self).on_custom_toggled(checkbutton)
-        self.builder.get_object("options2_cancel_button").set_sensitive(not self.custom)
-        sensitive = not self.custom and self._software_is_ready()
-        self.builder.get_object("options2_modify_sw_button").set_sensitive(sensitive)
+    @property
+    def continue_response(self):
+        return self.RESPONSE_CONTINUE_NONE
 
 class InstallOptions3Dialog(InstallOptions1Dialog):
     builderObjects = ["options3_dialog"]
     mainWidgetName = "options3_dialog"
 
-    def refresh(self, required_space, disks_size, disk_free, fs_free, autopart,
-                autoPartType):
-        self.custom = not autopart
+    def refresh(self, required_space, disk_free, fs_free, autoPartType):
         sw_text = self._get_sw_needs_text(required_space)
         label_text = (_("%s\nYou don't have enough space available to install "
                         "<b>%s</b>, even if you used all of the free space\n"
@@ -281,8 +280,7 @@ class InstallOptions3Dialog(InstallOptions1Dialog):
 
         self.disk_free_label = self.builder.get_object("options3_disk_free_label")
         self.fs_free_label = self.builder.get_object("options3_fs_free_label")
-        self.disks_size_label = self.builder.get_object("options3_disks_size_label")
-        self._set_free_space_labels(disks_size, disk_free, fs_free)
+        self._set_free_space_labels(disk_free, fs_free)
 
         label_text = _("<b>You don't have enough space available to install "
                        "%s</b>, even if you used all of the free space\n"
@@ -294,6 +292,10 @@ class InstallOptions3Dialog(InstallOptions1Dialog):
 
         self._add_button_watcher("options3_modify_sw_button")
 
+    @property
+    def continue_response(self):
+        return self.RESPONSE_CONTINUE_NONE
+
 class StorageChecker(object):
     errors = []
     warnings = []
@@ -637,6 +639,23 @@ class StorageSpoke(NormalSpoke, StorageChecker):
 
         return rc
 
+    def _check_encrypted(self):
+        # even if they're not doing autopart, setting autopart.encrypted
+        # establishes a default of encrypting new devices
+        encrypt_button = self.builder.get_object("encryption_checkbutton")
+        self.encrypted = encrypt_button.get_active()
+
+        if not self.encrypted:
+            return True
+
+        dialog = PassphraseDialog(self.data)
+        rc = self.run_lightbox_dialog(dialog)
+        if rc == 0:
+            return False
+
+        self.passphrase = dialog.passphrase
+        return True
+
     def on_back_clicked(self, button):
         # Remove all non-existing devices if autopart was active when we last
         # refreshed.
@@ -698,28 +717,23 @@ class StorageSpoke(NormalSpoke, StorageChecker):
         else:
             dialog = InstallOptions3Dialog(self.data, payload=self.payload)
 
-        dialog.refresh(required_space, disks_size, disk_free, fs_free, self.autopart, self.autoPartType)
+        dialog.refresh(required_space, disk_free, fs_free, self.autoPartType)
         rc = self.run_lightbox_dialog(dialog)
         if rc == dialog.RESPONSE_CONTINUE:
-            # depending on custom/autopart, either set up autopart or show
-            # custom partitioning ui
-            self.autopart = not dialog.custom
             self.autoPartType = dialog.autoPartType
 
-            # even if they're not doing autopart, setting autopart.encrypted
-            # establishes a default of encrypting new devices
-            encrypt_button = self.builder.get_object("encryption_checkbutton")
-            self.encrypted = encrypt_button.get_active()
+            if not self._check_encrypted():
+                return
 
-            if dialog.custom:
+            if dialog.continue_response == dialog.RESPONSE_CONTINUE_AUTOPART:
+                self.autopart = True
+            elif dialog.continue_response == dialog.RESPONSE_CONTINUE_RECLAIM:
+                self.apply()
+                gtk_call_once(self._show_resize_dialog, disks)
+                return
+            elif dialog.continue_response == dialog.RESPONSE_CONTINUE_CUSTOM:
+                self.autopart = False
                 self.skipTo = "CustomPartitioningSpoke"
-            elif self.encrypted:
-                dialog = PassphraseDialog(self.data)
-                rc = self.run_lightbox_dialog(dialog)
-                if rc == 0:
-                    return
-
-                self.passphrase = dialog.passphrase
 
             NormalSpoke.on_back_clicked(self, button)
         elif rc == dialog.RESPONSE_CANCEL:
@@ -730,30 +744,20 @@ class StorageSpoke(NormalSpoke, StorageChecker):
             self.skipTo = "SoftwareSelectionSpoke"
             NormalSpoke.on_back_clicked(self, button)
         elif rc == dialog.RESPONSE_RECLAIM:
-            self.autopart = not dialog.custom
             self.autoPartType = dialog.autoPartType
+            if not self._check_encrypted():
+                return
 
-            # even if they're not doing autopart, setting autopart.encrypted
-            # establishes a default of encrypting new devices
-            encrypt_button = self.builder.get_object("encryption_checkbutton")
-            self.encrypted = encrypt_button.get_active()
-
-            if dialog.custom:
-                self.skipTo = "CustomPartitioningSpoke"
-                NormalSpoke.on_back_clicked(self, button)
-            else:
-                if self.encrypted:
-                    dialog = PassphraseDialog(self.data)
-                    rc = self.run_lightbox_dialog(dialog)
-                    if rc == 0:
-                        return
-
-                    self.passphrase = dialog.passphrase
-
-                self.apply()
-                gtk_call_once(self._show_resize_dialog, disks)
+            self.apply()
+            gtk_call_once(self._show_resize_dialog, disks)
         elif rc == dialog.RESPONSE_QUIT:
             raise SystemExit("user-selected exit")
+        elif rc == dialog.RESPONSE_CUSTOM:
+            self.autopart = False
+            self.autoPartType = dialog.autoPartType
+
+            self.skipTo = "CustomPartitioningSpoke"
+            NormalSpoke.on_back_clicked(self, button)
 
     def _show_resize_dialog(self, disks):
         resizeDialog = ResizeDialog(self.data, self.storage, self.payload)
-- 
1.7.11.2



More information about the anaconda-patches mailing list