[gnome-notes] window-base: Changes based on MR reviews



commit f8ba11468f497d62a485915485571fa66cbc5fd8
Author: Jonathan Kang <jonathankang gnome org>
Date:   Fri Oct 30 15:48:01 2020 +0800

    window-base: Changes based on MR reviews

 data/resources/bjb-detached-window.ui |  3 +-
 data/resources/bjb-window-base.ui     | 61 +++++------------------------------
 src/bjb-window-base.c                 | 47 +++------------------------
 3 files changed, 13 insertions(+), 98 deletions(-)
---
diff --git a/data/resources/bjb-detached-window.ui b/data/resources/bjb-detached-window.ui
index cae0abd..4f9fe1f 100644
--- a/data/resources/bjb-detached-window.ui
+++ b/data/resources/bjb-detached-window.ui
@@ -25,7 +25,6 @@
                 </child>
               </object>
               <packing>
-                <property name="position">0</property>
                 <property name="pack-type">end</property>
               </packing>
             </child>
@@ -109,7 +108,7 @@
           <object class="GtkLabel" id="last_update_item">
             <property name="visible">True</property>
             <property name="sensitive">False</property>
-            <property name="margin-left">6</property>
+            <property name="margin-start">6</property>
             <property name="xalign">0</property>
           </object>
         </child>
diff --git a/data/resources/bjb-window-base.ui b/data/resources/bjb-window-base.ui
index 1899010..9301b11 100644
--- a/data/resources/bjb-window-base.ui
+++ b/data/resources/bjb-window-base.ui
@@ -1,24 +1,18 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <interface>
   <template class="BjbWindowBase" parent="HdyApplicationWindow">
-    <property name="can_focus">False</property>
     <child>
       <object class="HdyLeaflet" id="main_leaflet">
+        <property name="can-swipe-back">True</property>
         <property name="visible">True</property>
-        <property name="can_focus">False</property>
-        <property name="transition-type">slide</property>
-        <signal name="notify::visible-child" handler="notify_header_visible_child_cb" swapped="yes"/>
-        <signal name="notify::fold" handler="notify_fold_cb" object="BjbWindowBase" after="yes" 
swapped="yes"/>
         <child>
           <object class="GtkBox" id="sidebar_box">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="hexpand">False</property>
             <property name="orientation">vertical</property>
             <child>
               <object class="HdyHeaderBar" id="headerbar">
                 <property name="visible">True</property>
-                <property name="can_focus">False</property>
                 <property name="show-close-button">True</property>
                 <property name="title" translatable="yes">All Notes</property>
                 <child>
@@ -30,14 +24,13 @@
                   </object>
                 </child>
                 <child>
-                  <object class="GtkMenuButton" id="main_button">
+                  <object class="GtkMenuButton" id="main_menu_button">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
                     <property name="tooltip-text" translatable="yes">Open menu</property>
                     <property name="popover">main_menu</property>
                     <property name="receives_default">True</property>
                     <child>
-                      <object class="GtkImage" id="main_button_image">
+                      <object class="GtkImage" id="main_menu_button_image">
                         <property name="visible">True</property>
                         <property name="icon_name">open-menu-symbolic</property>
                       </object>
@@ -48,28 +41,16 @@
                   </packing>
                 </child>
               </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">True</property>
-                <property name="position">0</property>
-              </packing>
             </child>
             <child>
               <object class="BjbSearchToolbar" id="search_bar">
                 <property name="visible">True</property>
-                <property name="can_focus">False</property>
                 <property name="search-mode-enabled">True</property>
               </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">True</property>
-                <property name="position">1</property>
-              </packing>
             </child>
             <child>
               <object class="GtkScrolledWindow">
                 <property name="visible">True</property>
-                <property name="can_focus">True</property>
                 <property name="vexpand">True</property>
                 <property name="width-request">300</property>
                 <property name="hscrollbar_policy">never</property>
@@ -79,32 +60,27 @@
                 <child>
                   <object class="GtkStack" id="main_stack">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
                   </object>
                 </child>
               </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">True</property>
-                <property name="position">2</property>
-              </packing>
             </child>
           </object>
         </child>
         <child>
           <object class="GtkSeparator" id="main_leaflet_separator">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="orientation">vertical</property>
             <style>
               <class name="sidebar"/>
             </style>
           </object>
+          <packing>
+            <property name="navigatable">False</property>
+          </packing>
         </child>
         <child>
           <object class="GtkBox" id="note_box">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="expand">True</property>
             <property name="orientation">vertical</property>
             <child>
@@ -114,13 +90,13 @@
                 <property name="show-close-button">True</property>
                 <child>
                   <object class="GtkRevealer" id="back_revealer">
-                    <property name="can_focus">False</property>
+                    <property name="visible">True</property>
+                    <property name="reveal-child" bind-source="main_leaflet" bind-property="folded" 
bind-flags="sync-create"/>
                     <property name="transition-type">crossfade</property>
                     <property name="transition-duration" bind-source="main_leaflet" 
bind-property="mode-transition-duration" bind-flags="bidirectional|sync-create"/>
                     <child>
                       <object class="GtkButton" id="back_button">
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
                         <signal name="clicked" handler="on_back_button_clicked" swapped="yes"/>
                         <child>
                           <object class="GtkImage">
@@ -135,7 +111,6 @@
                 <child>
                   <object class="GtkMenuButton" id="menu_button">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
                     <property name="tooltip-text" translatable="yes">More options</property>
                     <property name="popover">menu</property>
                     <child>
@@ -146,7 +121,6 @@
                     </child>
                   </object>
                   <packing>
-                    <property name="position">0</property>
                     <property name="pack-type">end</property>
                   </packing>
                 </child>
@@ -159,18 +133,15 @@
   </template>
 
   <object class="GtkPopoverMenu" id="main_menu">
-    <property name="can_focus">False</property>
     <child>
       <object class="GtkBox">
         <property name="visible">True</property>
-        <property name="can_focus">False</property>
         <property name="margin">12</property>
         <property name="orientation">vertical</property>
 
         <child>
           <object class="GtkModelButton">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">Import Notes</property>
             <property name="action-name">app.import-notes</property>
           </object>
@@ -179,7 +150,6 @@
         <child>
           <object class="GtkModelButton">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">View Trash</property>
             <property name="action-name">app.view-trash</property>
           </object>
@@ -206,7 +176,6 @@
         <child>
           <object class="GtkModelButton">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">_Large</property>
             <property name="action-name">app.text-size</property>
             <property name="action-target">'large'</property>
@@ -216,7 +185,6 @@
         <child>
           <object class="GtkModelButton">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">_Medium</property>
             <property name="action-name">app.text-size</property>
             <property name="action-target">'medium'</property>
@@ -226,7 +194,6 @@
         <child>
           <object class="GtkModelButton">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">_Small</property>
             <property name="action-name">app.text-size</property>
             <property name="action-target">'small'</property>
@@ -244,7 +211,6 @@
         <child>
           <object class="GtkModelButton">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">Preferences</property>
             <property name="action-name">app.preferences</property>
           </object>
@@ -253,7 +219,6 @@
         <child>
           <object class="GtkModelButton">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">Keyboard Shortcuts</property>
             <property name="action_name">win.show-help-overlay</property>
           </object>
@@ -262,7 +227,6 @@
         <child>
           <object class="GtkModelButton">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">Help</property>
             <property name="action_name">app.help</property>
           </object>
@@ -271,7 +235,6 @@
         <child>
           <object class="GtkModelButton">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">About Notes</property>
             <property name="action-name">app.about</property>
           </object>
@@ -282,18 +245,15 @@
   </object>
 
   <object class="GtkPopoverMenu" id="menu">
-    <property name="can_focus">False</property>
     <child>
       <object class="GtkBox">
         <property name="visible">True</property>
-        <property name="can_focus">False</property>
         <property name="margin">12</property>
         <property name="orientation">vertical</property>
 
         <child>
           <object class="GtkModelButton" id="new_window_item">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">Open in New Window</property>
             <property name="action-name">win.detach-window</property>
           </object>
@@ -310,7 +270,6 @@
         <child>
           <object class="GtkModelButton" id="undo_item">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">Undo</property>
             <property name="action-name">win.undo</property>
           </object>
@@ -319,7 +278,6 @@
         <child>
           <object class="GtkModelButton" id="redo_item">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">Redo</property>
             <property name="action-name">win.redo</property>
           </object>
@@ -336,7 +294,6 @@
         <child>
           <object class="GtkModelButton" id="notebook_item">
             <property name="visible">True</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">Notebooks</property>
             <property name="action-name">win.view-notebooks</property>
           </object>
@@ -345,7 +302,6 @@
         <child>
           <object class="GtkModelButton" id="email_item">
             <property name="visible">1</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">Email this Note</property>
             <property name="action-name">win.email</property>
           </object>
@@ -354,7 +310,6 @@
         <child>
           <object class="GtkModelButton" id="trash_item">
             <property name="visible">1</property>
-            <property name="can_focus">False</property>
             <property name="text" translatable="yes">Move to Trash</property>
             <property name="action-name">win.trash</property>
           </object>
diff --git a/src/bjb-window-base.c b/src/bjb-window-base.c
index 8f58e8b..ae3cfc3 100644
--- a/src/bjb-window-base.c
+++ b/src/bjb-window-base.c
@@ -66,7 +66,6 @@ struct _BjbWindowBase
 
   HdyLeaflet           *main_leaflet;
   HdyHeaderGroup       *header_group;
-  GtkRevealer          *back_revealer;
   GtkStack             *main_stack;
   GtkWidget            *back_button;
   GtkWidget            *headerbar;
@@ -81,41 +80,6 @@ struct _BjbWindowBase
 /* Gobject */
 G_DEFINE_TYPE (BjbWindowBase, bjb_window_base, HDY_TYPE_APPLICATION_WINDOW)
 
-static void
-switch_to_sidebar (BjbWindowBase *self)
-{
-  hdy_leaflet_set_visible_child (self->main_leaflet, self->sidebar_box);
-}
-
-static void
-switch_to_note_view (BjbWindowBase *self)
-{
-  hdy_leaflet_set_visible_child (self->main_leaflet, self->note_box);
-}
-
-static void
-update_fold_state (BjbWindowBase *self)
-{
-  gboolean folded;
-
-  folded = hdy_leaflet_get_folded (self->main_leaflet);
-
-  gtk_widget_set_visible (GTK_WIDGET(self->back_revealer), folded);
-  gtk_revealer_set_reveal_child (self->back_revealer, folded);
-}
-
-static void
-notify_header_visible_child_cb (BjbWindowBase *self)
-{
-  update_fold_state (self);
-}
-
-static void
-notify_fold_cb (BjbWindowBase *self)
-{
-  update_fold_state (self);
-}
-
 static void
 on_note_renamed (BijiItem      *note,
                  BjbWindowBase *self)
@@ -147,7 +111,7 @@ on_note_list_row_activated (GtkListBox    *box,
 
   if (to_open && BIJI_IS_NOTE_OBJ (to_open))
     {
-      switch_to_note_view (self);
+      hdy_leaflet_navigate (self->main_leaflet, HDY_NAVIGATION_DIRECTION_FORWARD);
 
       /* Only open the note if it's not already opened. */
       if (!biji_note_obj_is_opened (BIJI_NOTE_OBJ (to_open)))
@@ -164,7 +128,7 @@ on_note_list_row_activated (GtkListBox    *box,
 static void
 on_back_button_clicked (BjbWindowBase *self)
 {
-  switch_to_sidebar (self);
+  hdy_leaflet_navigate (self->main_leaflet, HDY_NAVIGATION_DIRECTION_BACK);
 }
 
 static void
@@ -182,7 +146,7 @@ on_new_note_clicked (BjbWindowBase *self)
                                   bjb_settings_get_default_location (self->settings));
 
   /* Go to that note */
-  switch_to_note_view (self);
+  hdy_leaflet_navigate (self->main_leaflet, HDY_NAVIGATION_DIRECTION_FORWARD);
   bjb_window_base_load_note_item (self, BIJI_ITEM (result));
 }
 
@@ -630,7 +594,6 @@ bjb_window_base_class_init (BjbWindowBaseClass *klass)
   gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/Notes/ui/bjb-window-base.ui");
   gtk_widget_class_bind_template_child (widget_class, BjbWindowBase, main_leaflet);
   gtk_widget_class_bind_template_child (widget_class, BjbWindowBase, header_group);
-  gtk_widget_class_bind_template_child (widget_class, BjbWindowBase, back_revealer);
   gtk_widget_class_bind_template_child (widget_class, BjbWindowBase, main_stack);
   gtk_widget_class_bind_template_child (widget_class, BjbWindowBase, back_button);
   gtk_widget_class_bind_template_child (widget_class, BjbWindowBase, headerbar);
@@ -640,8 +603,6 @@ bjb_window_base_class_init (BjbWindowBaseClass *klass)
   gtk_widget_class_bind_template_child (widget_class, BjbWindowBase, search_bar);
   gtk_widget_class_bind_template_child (widget_class, BjbWindowBase, title_entry);
   gtk_widget_class_bind_template_child (widget_class, BjbWindowBase, last_update_item);
-  gtk_widget_class_bind_template_callback (widget_class, notify_header_visible_child_cb);
-  gtk_widget_class_bind_template_callback (widget_class, notify_fold_cb);
   gtk_widget_class_bind_template_callback (widget_class, on_back_button_clicked);
   gtk_widget_class_bind_template_callback (widget_class, on_new_note_clicked);
   gtk_widget_class_bind_template_callback (widget_class, on_title_changed);
@@ -703,7 +664,7 @@ bjb_window_base_switch_to (BjbWindowBase *self, BjbWindowViewType type)
      */
 
     case BJB_WINDOW_BASE_MAIN_VIEW:
-      switch_to_sidebar (self);
+      hdy_leaflet_navigate (self->main_leaflet, HDY_NAVIGATION_DIRECTION_BACK);
       gtk_widget_show (GTK_WIDGET (self->search_bar));
       gtk_stack_set_visible_child_name (self->main_stack, "main-view");
       break;


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