[gnome-calendar] new-calendar-page: Restore opening Online Accounts panel from label



commit 47bed7bc774598f37b38d6c4b62986d5f642741e
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Tue Jun 25 12:51:14 2019 -0300

    new-calendar-page: Restore opening Online Accounts panel from label

 data/ui/new-calendar-page.ui                         |  2 +-
 src/gui/calendar-management/gcal-new-calendar-page.c | 12 ++++++++++++
 2 files changed, 13 insertions(+), 1 deletion(-)
---
diff --git a/data/ui/new-calendar-page.ui b/data/ui/new-calendar-page.ui
index 173a55ca..d7d2d5e6 100644
--- a/data/ui/new-calendar-page.ui
+++ b/data/ui/new-calendar-page.ui
@@ -205,7 +205,7 @@
             <property name="use_markup">True</property>
             <property name="wrap">True</property>
             <property name="xalign">0</property>
-            <signal name="activate-link" handler="description_label_link_activated" 
object="GcalNewCalendarPage" swapped="no" />
+            <signal name="activate-link" handler="on_web_description_label_link_activated_cb" 
object="GcalNewCalendarPage" swapped="no" />
           </object>
           <packing>
             <property name="left_attach">0</property>
diff --git a/src/gui/calendar-management/gcal-new-calendar-page.c 
b/src/gui/calendar-management/gcal-new-calendar-page.c
index 8d1162b5..e59b3ce6 100644
--- a/src/gui/calendar-management/gcal-new-calendar-page.c
+++ b/src/gui/calendar-management/gcal-new-calendar-page.c
@@ -26,6 +26,7 @@
 #include "gcal-calendar-management-page.h"
 #include "gcal-debug.h"
 #include "gcal-new-calendar-page.h"
+#include "gcal-utils.h"
 
 #define ENTRY_PROGRESS_TIMEOUT 100 // ms
 
@@ -680,6 +681,16 @@ on_local_calendar_name_entry_text_changed_cb (GtkEntry            *entry,
   update_local_source (self);
 }
 
+static void
+on_web_description_label_link_activated_cb (GtkLabel            *label,
+                                            gchar               *uri,
+                                            GcalNewCalendarPage *self)
+{
+  GDBusConnection *connection = g_application_get_dbus_connection (g_application_get_default ());
+
+  gcal_utils_launch_online_accounts_panel (connection, NULL, NULL);
+}
+
 
 /*
  * GcalCalendarManagementPage iface
@@ -841,6 +852,7 @@ gcal_new_calendar_page_class_init (GcalNewCalendarPageClass *klass)
   gtk_widget_class_bind_template_callback (widget_class, on_file_chooser_button_file_set_cb);
   gtk_widget_class_bind_template_callback (widget_class, on_local_calendar_name_entry_text_changed_cb);
   gtk_widget_class_bind_template_callback (widget_class, on_url_entry_text_changed_cb);
+  gtk_widget_class_bind_template_callback (widget_class, on_web_description_label_link_activated_cb);
 }
 
 static void


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