[nautilus] rename-file-popover: implement redesign



commit dbeeec05343b9df66237fb1ab21448de6a0510a0
Author: Peter Eisenmann <p3732 getgoogleoff me>
Date:   Sun Oct 3 01:13:11 2021 +0200

    rename-file-popover: implement redesign
    
    Implements Alan's proposed redesign for the rename dialog,
    that also allows displaying longer file names.
    
    Implements GNOME/nautilus#1986
    
    Relates GNOME/nautilus#46

 src/nautilus-rename-file-popover-controller.c    | 18 +++---
 src/resources/ui/nautilus-rename-file-popover.ui | 76 +++++++++---------------
 2 files changed, 38 insertions(+), 56 deletions(-)
---
diff --git a/src/nautilus-rename-file-popover-controller.c b/src/nautilus-rename-file-popover-controller.c
index 8cc76c7fe..3d2390e29 100644
--- a/src/nautilus-rename-file-popover-controller.c
+++ b/src/nautilus-rename-file-popover-controller.c
@@ -27,8 +27,8 @@
 #include "nautilus-file-private.h"
 
 
-#define RENAME_ENTRY_MIN_CHARS 20
-#define RENAME_ENTRY_MAX_CHARS 35
+#define RENAME_ENTRY_MIN_CHARS 30
+#define RENAME_ENTRY_MAX_CHARS 50
 
 struct _NautilusRenameFilePopoverController
 {
@@ -39,7 +39,7 @@ struct _NautilusRenameFilePopoverController
 
     GtkWidget *rename_file_popover;
     GtkWidget *name_entry;
-    GtkWidget *name_label;
+    GtkWidget *title_label;
 
     gulong closed_handler_id;
     gulong file_changed_handler_id;
@@ -293,7 +293,7 @@ nautilus_rename_file_popover_controller_new (void)
     GtkWidget *error_label;
     GtkWidget *name_entry;
     GtkWidget *activate_button;
-    GtkWidget *name_label;
+    GtkWidget *title_label;
 
     builder = gtk_builder_new_from_resource ("/org/gnome/nautilus/ui/nautilus-rename-file-popover.ui");
     rename_file_popover = GTK_WIDGET (gtk_builder_get_object (builder, "rename_file_popover"));
@@ -301,7 +301,7 @@ nautilus_rename_file_popover_controller_new (void)
     error_label = GTK_WIDGET (gtk_builder_get_object (builder, "error_label"));
     name_entry = GTK_WIDGET (gtk_builder_get_object (builder, "name_entry"));
     activate_button = GTK_WIDGET (gtk_builder_get_object (builder, "rename_button"));
-    name_label = GTK_WIDGET (gtk_builder_get_object (builder, "name_label"));
+    title_label = GTK_WIDGET (gtk_builder_get_object (builder, "title_label"));
 
     self = g_object_new (NAUTILUS_TYPE_RENAME_FILE_POPOVER_CONTROLLER,
                          "error-revealer", error_revealer,
@@ -312,7 +312,7 @@ nautilus_rename_file_popover_controller_new (void)
 
     self->rename_file_popover = g_object_ref_sink (rename_file_popover);
     self->name_entry = name_entry;
-    self->name_label = name_label;
+    self->title_label = title_label;
 
     gtk_popover_set_default_widget (GTK_POPOVER (rename_file_popover), name_entry);
 
@@ -376,9 +376,9 @@ nautilus_rename_file_popover_controller_show_for_file   (NautilusRenameFilePopov
                                                          G_CALLBACK (name_entry_on_event),
                                                          self);
 
-    gtk_label_set_text (GTK_LABEL (self->name_label),
-                        self->target_is_folder ? _("Folder name") :
-                        _("File name"));
+    gtk_label_set_text (GTK_LABEL (self->title_label),
+                        self->target_is_folder ? _("Rename Folder") :
+                        _("Rename File"));
 
     edit_name = nautilus_file_get_edit_name (self->target_file);
 
diff --git a/src/resources/ui/nautilus-rename-file-popover.ui 
b/src/resources/ui/nautilus-rename-file-popover.ui
index 8d85ec006..1e04e2cdb 100644
--- a/src/resources/ui/nautilus-rename-file-popover.ui
+++ b/src/resources/ui/nautilus-rename-file-popover.ui
@@ -6,59 +6,31 @@
     <property name="can-focus">False</property>
     <property name="position">bottom</property>
     <child>
-      <object class="GtkGrid">
+      <object class="GtkBox">
         <property name="visible">True</property>
         <property name="can-focus">False</property>
-        <property name="margin-start">10</property>
-        <property name="margin-end">10</property>
-        <property name="margin-top">10</property>
-        <property name="margin-bottom">10</property>
-        <property name="row-spacing">6</property>
-        <property name="column-spacing">6</property>
+        <property name="margin-start">18</property>
+        <property name="margin-end">18</property>
+        <property name="margin-top">18</property>
+        <property name="margin-bottom">18</property>
+        <property name="orientation">vertical</property>
         <child>
-          <object class="GtkLabel" id="name_label">
+          <object class="GtkLabel" id="title_label">
             <property name="visible">True</property>
             <property name="can-focus">False</property>
-            <property name="halign">start</property>
-            <property name="label" translatable="yes">Name</property>
-            <property name="mnemonic-widget">name_entry</property>
-            <attributes>
-              <attribute name="weight" value="bold"/>
-            </attributes>
+            <property name="margin-bottom">12</property>
+            <style>
+              <class name="title-2"/>
+            </style>
           </object>
-          <packing>
-            <property name="left-attach">0</property>
-            <property name="top-attach">0</property>
-            <property name="width">2</property>
-          </packing>
         </child>
         <child>
           <object class="GtkEntry" id="name_entry">
             <property name="visible">True</property>
             <property name="can-focus">True</property>
             <property name="can-default">True</property>
+            <property name="margin-bottom">12</property>
           </object>
-          <packing>
-            <property name="left-attach">0</property>
-            <property name="top-attach">1</property>
-          </packing>
-        </child>
-        <child>
-          <object class="GtkButton" id="rename_button">
-            <property name="label" translatable="yes">_Rename</property>
-            <property name="visible">True</property>
-            <property name="sensitive">False</property>
-            <property name="can-focus">False</property>
-            <property name="receives-default">False</property>
-            <property name="use-underline">True</property>
-            <style>
-              <class name="suggested-action"/>
-            </style>
-          </object>
-          <packing>
-            <property name="left-attach">1</property>
-            <property name="top-attach">1</property>
-          </packing>
         </child>
         <child>
           <object class="GtkRevealer" id="error_revealer">
@@ -68,17 +40,27 @@
               <object class="GtkLabel" id="error_label">
                 <property name="visible">True</property>
                 <property name="can-focus">False</property>
-                <property name="margin-top">4</property>
-                <property name="margin-bottom">4</property>
+                <property name="margin-bottom">12</property>
+                <property name="max-width-chars">0</property>
+                <property name="wrap">True</property>
                 <property name="xalign">0</property>
               </object>
             </child>
           </object>
-          <packing>
-            <property name="left-attach">0</property>
-            <property name="top-attach">2</property>
-            <property name="width">2</property>
-          </packing>
+        </child>
+        <child>
+          <object class="GtkButton" id="rename_button">
+            <property name="label" translatable="yes">_Rename</property>
+            <property name="visible">True</property>
+            <property name="sensitive">False</property>
+            <property name="can-focus">True</property>
+            <property name="receives-default">False</property>
+            <property name="halign">end</property>
+            <property name="use-underline">True</property>
+            <style>
+              <class name="suggested-action"/>
+            </style>
+          </object>
         </child>
       </object>
     </child>


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