[gnome-calendar] utils: Pass GcalCalendar to ask_recurrence_modification_type()



commit 5e4bbe446f636fe2fa7528ab8602988bcc2320ff
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Sat Sep 14 21:35:02 2019 -0300

    utils: Pass GcalCalendar to ask_recurrence_modification_type()
    
    The method ask_recurrence_modification_type() currently
    receives an ESource, and tried to fetch the ECalClient
    from the ESource by using g_object_get_data().
    
    However, since we moved to GcalCalendar, we do not set
    this data field in ESource.
    
    Receive a GcalCalendar instead, and use the appropriate
    function gcal_calendar_get_client() instead.

 src/gui/gcal-window.c       |  4 +---
 src/utils/gcal-utils.c      | 12 ++++++------
 src/utils/gcal-utils.h      |  2 +-
 src/views/gcal-month-cell.c |  4 +---
 src/views/gcal-week-grid.c  |  4 +---
 src/views/gcal-year-view.c  |  4 +---
 6 files changed, 11 insertions(+), 19 deletions(-)
---
diff --git a/src/gui/gcal-window.c b/src/gui/gcal-window.c
index 653a63ea..c35e617d 100644
--- a/src/gui/gcal-window.c
+++ b/src/gui/gcal-window.c
@@ -662,7 +662,6 @@ edit_dialog_closed (GtkDialog *dialog,
   GcalEvent *event;
   GcalView *view;
   GList *widgets;
-  ESource *source;
 
   GCAL_ENTRY;
 
@@ -673,7 +672,6 @@ edit_dialog_closed (GtkDialog *dialog,
   view = GCAL_VIEW (window->views[window->active_view]);
   mod = GCAL_RECURRENCE_MOD_THIS_ONLY;
   calendar = gcal_event_get_calendar (event);
-  source = gcal_calendar_get_source (calendar);
 
   if (!gcal_edit_dialog_get_recurrence_changed (edit_dialog) &&
       gcal_event_has_recurrence (event) &&
@@ -681,7 +679,7 @@ edit_dialog_closed (GtkDialog *dialog,
        response != GTK_RESPONSE_CANCEL &&
        response != GTK_RESPONSE_DELETE_EVENT &&
        gcal_event_has_recurrence (event) &&
-       !ask_recurrence_modification_type (GTK_WIDGET (dialog), &mod, source)))
+       !ask_recurrence_modification_type (GTK_WIDGET (dialog), &mod, calendar)))
     {
       return;
     }
diff --git a/src/utils/gcal-utils.c b/src/utils/gcal-utils.c
index 003a61f5..c4aad0ad 100644
--- a/src/utils/gcal-utils.c
+++ b/src/utils/gcal-utils.c
@@ -922,15 +922,15 @@ is_source_enabled (ESource *source)
  * @modtype is assigned, %FALSE otherwise.
  */
 gboolean
-ask_recurrence_modification_type (GtkWidget      *parent,
+ask_recurrence_modification_type (GtkWidget             *parent,
                                   GcalRecurrenceModType *modtype,
-                                  ESource        *source)
+                                  GcalCalendar          *calendar)
 {
-  GtkWidget *dialog;
   GtkDialogFlags flags;
-  gint result;
+  ECalClient *client;
+  GtkWidget *dialog;
   gboolean is_set;
-  EClient *client;
+  gint result;
 
   flags = GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT;
   *modtype = GCAL_RECURRENCE_MOD_THIS_ONLY;
@@ -948,7 +948,7 @@ ask_recurrence_modification_type (GtkWidget      *parent,
                           GTK_RESPONSE_ACCEPT,
                           NULL);
 
-  client = g_object_get_data (G_OBJECT (source), "client");
+  client = gcal_calendar_get_client (calendar);
 
   if (!e_client_check_capability (E_CLIENT (client), E_CAL_STATIC_CAPABILITY_NO_THISANDFUTURE))
     gtk_dialog_add_button (GTK_DIALOG (dialog), _("_Subsequent events"), GTK_RESPONSE_OK);
diff --git a/src/utils/gcal-utils.h b/src/utils/gcal-utils.h
index 5d01e3b9..163d8d41 100644
--- a/src/utils/gcal-utils.h
+++ b/src/utils/gcal-utils.h
@@ -107,7 +107,7 @@ gboolean             is_source_enabled                           (ESource
 
 gboolean             ask_recurrence_modification_type            (GtkWidget             *parent,
                                                                   GcalRecurrenceModType *modtype,
-                                                                  ESource               *source);
+                                                                  GcalCalendar          *calendar);
 
 gboolean             is_workday                                  (guint                      day);
 
diff --git a/src/views/gcal-month-cell.c b/src/views/gcal-month-cell.c
index 2503d50f..c4480328 100644
--- a/src/views/gcal-month-cell.c
+++ b/src/views/gcal-month-cell.c
@@ -209,7 +209,6 @@ gcal_month_cell_drag_drop (GtkWidget      *widget,
   GtkWidget *event_widget;
   GDateTime *start_dt, *end_dt;
   GcalEvent *event;
-  ESource *source;
   gint diff;
   gint start_month, current_month;
   gint start_year, current_year;
@@ -227,10 +226,9 @@ gcal_month_cell_drag_drop (GtkWidget      *widget,
 
   event = gcal_event_widget_get_event (GCAL_EVENT_WIDGET (event_widget));
   calendar = gcal_event_get_calendar (event);
-  source = gcal_calendar_get_source (calendar);
 
   if (gcal_event_has_recurrence (event) &&
-      !ask_recurrence_modification_type (widget, &mod, source))
+      !ask_recurrence_modification_type (widget, &mod, calendar))
     {
       goto out;
     }
diff --git a/src/views/gcal-week-grid.c b/src/views/gcal-week-grid.c
index 2c4944f1..e656dc4f 100644
--- a/src/views/gcal-week-grid.c
+++ b/src/views/gcal-week-grid.c
@@ -981,7 +981,6 @@ gcal_week_grid_drag_drop (GtkWidget      *widget,
   GcalCalendar *calendar;
   GtkWidget *event_widget;
   GcalEvent *event;
-  ESource *source;
   GTimeSpan timespan = 0;
   gboolean ltr;
   gint drop_cell;
@@ -1012,10 +1011,9 @@ gcal_week_grid_drag_drop (GtkWidget      *widget,
 
   event = gcal_event_widget_get_event (GCAL_EVENT_WIDGET (event_widget));
   calendar = gcal_event_get_calendar (event);
-  source = gcal_calendar_get_source (calendar);
 
   if (gcal_event_has_recurrence (event) &&
-      !ask_recurrence_modification_type (widget, &mod, source))
+      !ask_recurrence_modification_type (widget, &mod, calendar))
     {
       goto out;
     }
diff --git a/src/views/gcal-year-view.c b/src/views/gcal-year-view.c
index a0292415..30b80482 100644
--- a/src/views/gcal-year-view.c
+++ b/src/views/gcal-year-view.c
@@ -1515,16 +1515,14 @@ navigator_drag_drop_cb (GcalYearView   *self,
           GcalEvent *event;
           GDateTime *start_dt, *end_dt;
           GDateTime *drop_date;
-          ESource *source;
 
           event_widget = GCAL_EVENT_WIDGET (gtk_drag_get_source_widget (context));
           event = gcal_event_widget_get_event (event_widget);
           calendar = gcal_event_get_calendar (event);
-          source = gcal_calendar_get_source (calendar);
           mod = GCAL_RECURRENCE_MOD_THIS_ONLY;
 
           if (gcal_event_has_recurrence (event) &&
-              !ask_recurrence_modification_type (GTK_WIDGET (self), &mod, source))
+              !ask_recurrence_modification_type (GTK_WIDGET (self), &mod, calendar))
             {
               goto out;
             }


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