[gnome-calendar] window: simplify constructor



commit 36a39e6c5c828b96bee007cfe29a0ac916d9705d
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Thu Sep 7 13:21:09 2017 -0300

    window: simplify constructor
    
    We don't need to pass information that can easily be
    retrieved by the GSettings instance from GcalManager.

 src/gcal-application.c |   16 ++--------------
 src/gcal-window.c      |   19 +++++++++----------
 src/gcal-window.h      |    3 +--
 3 files changed, 12 insertions(+), 26 deletions(-)
---
diff --git a/src/gcal-application.c b/src/gcal-application.c
index bc31aba..1aa9ca0 100644
--- a/src/gcal-application.c
+++ b/src/gcal-application.c
@@ -180,12 +180,10 @@ static void
 gcal_application_activate (GApplication *application)
 {
   GcalApplication *self;
-  GSettings *settings;
 
   GCAL_ENTRY;
 
   self = GCAL_APPLICATION (application);
-  settings = gcal_manager_get_settings (self->manager);
 
   if (!self->provider)
     {
@@ -215,18 +213,8 @@ gcal_application_activate (GApplication *application)
                                                          gcal_manager_get_system_timezone (self->manager));
         }
 
-      self->window = gcal_window_new_with_view_and_date (GCAL_APPLICATION (application),
-                                                         g_settings_get_enum (settings, "active-view"),
-                                                         self->initial_date);
-
-      g_signal_connect (self->window, "destroy", G_CALLBACK (gtk_widget_destroyed), &(self->window));
-
-      g_settings_bind (settings,
-                       "active-view",
-                       self->window,
-                       "active-view",
-                       G_SETTINGS_BIND_SET | G_SETTINGS_BIND_GET);
-
+      self->window = gcal_window_new_with_date (GCAL_APPLICATION (application), self->initial_date);
+      g_signal_connect (self->window, "destroy", G_CALLBACK (gtk_widget_destroyed), &self->window);
       gtk_widget_show (self->window);
     }
 
diff --git a/src/gcal-window.c b/src/gcal-window.c
index e505ea8..8bd8f5d 100644
--- a/src/gcal-window.c
+++ b/src/gcal-window.c
@@ -1355,6 +1355,11 @@ gcal_window_set_property (GObject      *object,
     case PROP_MANAGER:
       if (g_set_object (&self->manager, g_value_get_object (value)))
         {
+          g_settings_bind (gcal_manager_get_settings (self->manager),
+                           "active-view",
+                           self,
+                           "active-view",
+                           G_SETTINGS_BIND_SET | G_SETTINGS_BIND_GET);
 
           if (!gcal_manager_get_loading (self->manager))
             {
@@ -1669,20 +1674,17 @@ gcal_window_init (GcalWindow *self)
 
 /* Public API */
 /**
- * gcal_window_new_with_view_and_date:
+ * gcal_window_new_with_date:
  * @app: a #GcalApplication
- * @view_type: a #GcalWindowViewType
  * @date: the active date
  *
- * Creates a #GcalWindow, positions it at @date and shows
- * @view_type view by default.
+ * Creates a #GcalWindow, positions it at @date.
  *
  * Returns: (transfer full): a #GcalWindow
  */
 GtkWidget*
-gcal_window_new_with_view_and_date (GcalApplication    *app,
-                                    GcalWindowViewType  view_type,
-                                    icaltimetype       *date)
+gcal_window_new_with_date (GcalApplication *app,
+                           icaltimetype    *date)
 {
   GcalManager *manager;
   GcalWindow *win;
@@ -1697,9 +1699,6 @@ gcal_window_new_with_view_and_date (GcalApplication    *app,
   /* loading size */
   load_geometry (win);
 
-  if (view_type == GCAL_WINDOW_VIEW_DAY)
-    view_changed (NULL, NULL, win);
-
   return GTK_WIDGET (win);
 }
 
diff --git a/src/gcal-window.h b/src/gcal-window.h
index 2f689da..5d6b155 100644
--- a/src/gcal-window.h
+++ b/src/gcal-window.h
@@ -32,8 +32,7 @@ G_BEGIN_DECLS
 
 G_DECLARE_FINAL_TYPE (GcalWindow, gcal_window, GCAL, WINDOW, GtkApplicationWindow)
 
-GtkWidget*           gcal_window_new_with_view_and_date         (GcalApplication     *app,
-                                                                 GcalWindowViewType   view_type,
+GtkWidget*           gcal_window_new_with_date                  (GcalApplication     *app,
                                                                  icaltimetype        *date);
 
 void                 gcal_window_new_event                      (GcalWindow          *self);


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