From 2a9bd4410cf2e9796a0e77fae0308267ae352ebb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Danielle=20For=C3=A9?= <danielle@elementary.io>
Date: Wed, 11 Sep 2024 13:36:58 -0700
Subject: [PATCH 1/4] Fix expanding window

---
 src/Views/AbstractInstallerView.vala | 6 +++++-
 src/Views/CheckView.vala             | 3 ---
 src/Views/DiskView.vala              | 2 --
 src/Views/DriversView.vala           | 1 -
 src/Views/EncryptView.vala           | 5 -----
 src/Views/ErrorView.vala             | 4 ----
 src/Views/SuccessView.vala           | 3 ---
 src/Widgets/DecryptMenu.vala         | 1 -
 src/Widgets/DescriptionRow.vala      | 1 -
 src/Widgets/InstallTypeGrid.vala     | 1 -
 10 files changed, 5 insertions(+), 22 deletions(-)

diff --git a/src/Views/AbstractInstallerView.vala b/src/Views/AbstractInstallerView.vala
index 7ffb33f9e..3fc30fe14 100644
--- a/src/Views/AbstractInstallerView.vala
+++ b/src/Views/AbstractInstallerView.vala
@@ -25,13 +25,17 @@ public abstract class AbstractInstallerView : Adw.NavigationPage {
 
         content_area = new Gtk.Box (VERTICAL, 24);
 
+        var content_clamp = new Adw.Clamp () {
+            child = content_area
+        };
+
         var box = new Gtk.Box (HORIZONTAL, 12) {
             homogeneous = true,
             hexpand = true,
             vexpand = true,
         };
         box.append (title_area);
-        box.append (content_area);
+        box.append (content_clamp);
 
         action_box_end = new Gtk.Box (HORIZONTAL, 6) {
             halign = END,
diff --git a/src/Views/CheckView.vala b/src/Views/CheckView.vala
index 947bccb4b..09d092be3 100644
--- a/src/Views/CheckView.vala
+++ b/src/Views/CheckView.vala
@@ -182,15 +182,12 @@ public class Installer.CheckView : AbstractInstallerView {
             };
 
             var title_label = new Gtk.Label (title) {
-                hexpand = true,
-                max_width_chars = 1,
                 wrap = true,
                 xalign = 0
             };
             title_label.add_css_class (Granite.STYLE_CLASS_H3_LABEL);
 
             var description_label = new Gtk.Label (description) {
-                max_width_chars = 1, // Make Gtk wrap, but not expand the window
                 use_markup = true,
                 wrap = true,
                 xalign = 0
diff --git a/src/Views/DiskView.vala b/src/Views/DiskView.vala
index 6d92fa70a..4ad9bc1ee 100644
--- a/src/Views/DiskView.vala
+++ b/src/Views/DiskView.vala
@@ -50,7 +50,6 @@ public class Installer.DiskView : AbstractInstallerView {
         var install_desc_label = new Gtk.Label (
             _("This will erase all data on the selected drive. If you have not backed your data up, you can cancel the installation and use Demo Mode.")
         ) {
-            max_width_chars = 45,
             wrap = true,
             xalign = 0
         };
@@ -70,7 +69,6 @@ public class Installer.DiskView : AbstractInstallerView {
         load_spinner.start ();
 
         var load_label = new Gtk.Label (_("Getting the current configuration…")) {
-            max_width_chars = 45,
             wrap = true
         };
         load_label.add_css_class (Granite.STYLE_CLASS_H3_LABEL);
diff --git a/src/Views/DriversView.vala b/src/Views/DriversView.vala
index c9cc4d94b..ebb53d57e 100644
--- a/src/Views/DriversView.vala
+++ b/src/Views/DriversView.vala
@@ -28,7 +28,6 @@
         var title_label = new Gtk.Label (title);
 
         var description_label = new Gtk.Label (_("Broadcom® Wi-Fi adapters, NVIDIA® graphics, and some virtual machines may not function properly without additional drivers. Most devices do not require additional drivers.")) {
-            max_width_chars = 1, // Make Gtk wrap, but not expand the window
             wrap = true,
             xalign = 0
         };
diff --git a/src/Views/EncryptView.vala b/src/Views/EncryptView.vala
index 9694527c5..2a303f58b 100644
--- a/src/Views/EncryptView.vala
+++ b/src/Views/EncryptView.vala
@@ -52,8 +52,6 @@ public class EncryptView : AbstractInstallerView {
         var title_label = new Gtk.Label (title);
 
         var details_label = new Gtk.Label (_("Encrypt this device's drive if required for added protection, but be sure you understand:")) {
-            hexpand = true,
-            max_width_chars = 1, // Make Gtk wrap, but not expand the window
             wrap = true,
             xalign = 0
         };
@@ -88,9 +86,7 @@ public class EncryptView : AbstractInstallerView {
         var description = new Gtk.Label (
             _("If you forget the encryption password, <b>you will not be able to recover data.</b> This is a unique password for this device, not the password for your user account.")
         ) {
-            hexpand = true,
             margin_bottom = 12,
-            max_width_chars = 1, // Make Gtk wrap, but not expand the window
             use_markup = true,
             wrap = true,
             xalign = 0
@@ -280,7 +276,6 @@ public class EncryptView : AbstractInstallerView {
             label_widget = new Gtk.Label (label) {
                 halign = END,
                 justify = RIGHT,
-                max_width_chars = 55,
                 use_markup = true,
                 wrap = true,
                 xalign = 1
diff --git a/src/Views/ErrorView.vala b/src/Views/ErrorView.vala
index bffdfc6bf..b66bf2fcd 100644
--- a/src/Views/ErrorView.vala
+++ b/src/Views/ErrorView.vala
@@ -34,7 +34,6 @@ public class ErrorView : AbstractInstallerView {
 
         var description_label = new Gtk.Label (_("Installing %s failed, possibly due to a hardware error. The device may not restart properly. You can try the following:").printf (Utils.get_pretty_name ())) {
             margin_bottom = 12,
-            max_width_chars = 1, // Make Gtk wrap, but not expand the window
             wrap = true,
             xalign = 0
         };
@@ -45,7 +44,6 @@ public class ErrorView : AbstractInstallerView {
 
         var try_label = new Gtk.Label (_("Try the installation again")) {
             hexpand = true,
-            max_width_chars = 1, // Make Gtk wrap, but not expand the window
             wrap = true,
             xalign = 0
         };
@@ -55,7 +53,6 @@ public class ErrorView : AbstractInstallerView {
         };
 
         var launch_label = new Gtk.Label (_("Use Demo Mode and try to manually recover")) {
-            max_width_chars = 1, // Make Gtk wrap, but not expand the window
             wrap = true,
             xalign = 0
         };
@@ -65,7 +62,6 @@ public class ErrorView : AbstractInstallerView {
         };
 
         var restart_label = new Gtk.Label (_("Restart the device and boot from another drive")) {
-            max_width_chars = 1, // Make Gtk wrap, but not expand the window
             wrap = true,
             xalign = 0
         };
diff --git a/src/Views/SuccessView.vala b/src/Views/SuccessView.vala
index 8384ef50b..32d9b9770 100644
--- a/src/Views/SuccessView.vala
+++ b/src/Views/SuccessView.vala
@@ -30,15 +30,12 @@ public class SuccessView : AbstractInstallerView {
         var title_label = new Gtk.Label (title);
 
         var primary_label = new Gtk.Label (_("%s has been installed").printf (Utils.get_pretty_name ())) {
-            hexpand = true,
-            max_width_chars = 1,
             wrap = true,
             xalign = 0
         };
         primary_label.add_css_class (Granite.STYLE_CLASS_H3_LABEL);
 
         secondary_label = new Gtk.Label (null) {
-            max_width_chars = 1, // Make Gtk wrap, but not expand the window
             use_markup = true,
             wrap = true,
             xalign = 0
diff --git a/src/Widgets/DecryptMenu.vala b/src/Widgets/DecryptMenu.vala
index 43d3bf41d..5eb1b1ff9 100644
--- a/src/Widgets/DecryptMenu.vala
+++ b/src/Widgets/DecryptMenu.vala
@@ -69,7 +69,6 @@ public class Installer.DecryptMenu: Gtk.Popover {
 
         var secondary_label = new Gtk.Label (_("Enter the partition's encryption password and set a device name for the decrypted partition."));
         secondary_label.halign = Gtk.Align.START;
-        secondary_label.max_width_chars = 50;
         secondary_label.selectable = true;
         secondary_label.wrap = true;
         secondary_label.xalign = 0;
diff --git a/src/Widgets/DescriptionRow.vala b/src/Widgets/DescriptionRow.vala
index 057189132..a9ace185e 100644
--- a/src/Widgets/DescriptionRow.vala
+++ b/src/Widgets/DescriptionRow.vala
@@ -26,7 +26,6 @@ public class DescriptionRow : Gtk.Box {
 
         var description_label = new Gtk.Label (description) {
             hexpand = true,
-            max_width_chars = 1, // Make Gtk wrap, but not expand the window
             use_markup = true,
             wrap = true,
             xalign = 0
diff --git a/src/Widgets/InstallTypeGrid.vala b/src/Widgets/InstallTypeGrid.vala
index da04f8635..b82bfbade 100644
--- a/src/Widgets/InstallTypeGrid.vala
+++ b/src/Widgets/InstallTypeGrid.vala
@@ -44,7 +44,6 @@ public class Installer.InstallTypeButton : Gtk.CheckButton {
         title_label.add_css_class (Granite.STYLE_CLASS_H3_LABEL);
 
         var subtitle_label = new Gtk.Label (subtitle) {
-            max_width_chars = 1, // Make Gtk wrap, but not expand the window
             wrap = true,
             xalign = 0
         };

From 4ffdd9ae5aba259685b8bd3fa92b507d10bfe8e4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Danielle=20For=C3=A9?= <danielle@elementary.io>
Date: Wed, 11 Sep 2024 13:41:42 -0700
Subject: [PATCH 2/4] Fix password feedback alignment

---
 src/Views/EncryptView.vala | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/Views/EncryptView.vala b/src/Views/EncryptView.vala
index 2a303f58b..cc6e8af06 100644
--- a/src/Views/EncryptView.vala
+++ b/src/Views/EncryptView.vala
@@ -274,7 +274,7 @@ public class EncryptView : AbstractInstallerView {
 
         construct {
             label_widget = new Gtk.Label (label) {
-                halign = END,
+                hexpand = true,
                 justify = RIGHT,
                 use_markup = true,
                 wrap = true,

From 1aec5279830e094730d975cd2973e3727cf2ab2a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Danielle=20For=C3=A9?= <danielle@elementary.io>
Date: Wed, 11 Sep 2024 15:11:33 -0700
Subject: [PATCH 3/4] Update installer.metainfo.xml.in

---
 data/installer.metainfo.xml.in | 1 +
 1 file changed, 1 insertion(+)

diff --git a/data/installer.metainfo.xml.in b/data/installer.metainfo.xml.in
index 8b4a569f6..648db544d 100644
--- a/data/installer.metainfo.xml.in
+++ b/data/installer.metainfo.xml.in
@@ -65,6 +65,7 @@
       </description>
       <issues>
         <issue url="https://github.com/elementary/installer/issues/538">Screen Reader ignores each view’s title text</issue>
+        <issue url="https://github.com/elementary/installer/issues/793">Clicking a partition in the custom install glitches the installer window</issue>
       </issues>
     </release>
 

From 96659d76bcb840a7631b5f07cda81e7c26b14091 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Danielle=20For=C3=A9?= <danielle@elementary.io>
Date: Thu, 12 Sep 2024 13:20:07 -0700
Subject: [PATCH 4/4] Update installer.metainfo.xml.in

---
 data/installer.metainfo.xml.in | 1 -
 1 file changed, 1 deletion(-)

diff --git a/data/installer.metainfo.xml.in b/data/installer.metainfo.xml.in
index 648db544d..8b4a569f6 100644
--- a/data/installer.metainfo.xml.in
+++ b/data/installer.metainfo.xml.in
@@ -65,7 +65,6 @@
       </description>
       <issues>
         <issue url="https://github.com/elementary/installer/issues/538">Screen Reader ignores each view’s title text</issue>
-        <issue url="https://github.com/elementary/installer/issues/793">Clicking a partition in the custom install glitches the installer window</issue>
       </issues>
     </release>