[gnome-applets/wip/muktupavels/help-about] gweather: use gp_applet_show_help



commit dc9368a3b76cdc45615b5ec55d02cd446c627160
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date:   Fri Apr 3 15:51:02 2020 +0300

    gweather: use gp_applet_show_help

 gnome-applets/ga-module.c                |  1 +
 gnome-applets/gweather/gweather-applet.c | 26 +++++---------------------
 gnome-applets/gweather/gweather-pref.c   | 27 ++-------------------------
 3 files changed, 8 insertions(+), 46 deletions(-)
---
diff --git a/gnome-applets/ga-module.c b/gnome-applets/ga-module.c
index 3ffff5d77..1db65080e 100644
--- a/gnome-applets/ga-module.c
+++ b/gnome-applets/ga-module.c
@@ -148,6 +148,7 @@ ga_get_applet_info (const char *id)
       icon_name = "weather-storm";
 
       about_func = gweather_applet_setup_about;
+      help_uri = "help:gweather";
     }
   else if (g_strcmp0 (id, "inhibit") == 0)
     {
diff --git a/gnome-applets/gweather/gweather-applet.c b/gnome-applets/gweather/gweather-applet.c
index e5d700f5b..22175b949 100644
--- a/gnome-applets/gweather/gweather-applet.c
+++ b/gnome-applets/gweather/gweather-applet.c
@@ -67,28 +67,12 @@ about_cb (GSimpleAction *action,
   gp_applet_show_about (GP_APPLET (user_data));
 }
 
-static void help_cb (GSimpleAction *action,
-                     GVariant      *parameter,
-                     gpointer       user_data)
+static void
+help_cb (GSimpleAction *action,
+         GVariant      *parameter,
+         gpointer       user_data)
 {
-       GWeatherApplet *gw_applet = (GWeatherApplet *) user_data;
-    GError *error = NULL;
-
-    gtk_show_uri (gtk_widget_get_screen (GTK_WIDGET (gw_applet)),
-               "help:gweather",
-               gtk_get_current_event_time (),
-               &error);
-
-    if (error) { 
-       GtkWidget *dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, 
GTK_BUTTONS_CLOSE,
-                                                   _("There was an error displaying help: %s"), 
error->message);
-       g_signal_connect (G_OBJECT (dialog), "response", G_CALLBACK (gtk_widget_destroy), NULL);
-       gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
-       gtk_window_set_screen (GTK_WINDOW (dialog), gtk_widget_get_screen (GTK_WIDGET (gw_applet)));
-       gtk_widget_show (dialog);
-        g_error_free (error);
-        error = NULL;
-    }
+  gp_applet_show_help (GP_APPLET (user_data), NULL);
 }
 
 static void pref_cb (GSimpleAction *action,
diff --git a/gnome-applets/gweather/gweather-pref.c b/gnome-applets/gweather/gweather-pref.c
index acb802d7a..913422399 100644
--- a/gnome-applets/gweather/gweather-pref.c
+++ b/gnome-applets/gweather/gweather-pref.c
@@ -656,40 +656,17 @@ find_entry_changed (GtkEditable *entry, GWeatherPref *pref)
        }
 }
 
-
-static void help_cb (GtkDialog *dialog)
-{
-    GError *error = NULL;
-
-    gtk_show_uri (gtk_widget_get_screen (GTK_WIDGET (dialog)),
-               "help:gweather/gweather-settings",
-               gtk_get_current_event_time (),
-               &error);
-
-    if (error) { 
-       GtkWidget *error_dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, 
GTK_BUTTONS_CLOSE,
-                                                         _("There was an error displaying help: %s"), 
error->message);
-       g_signal_connect (G_OBJECT (error_dialog), "response", G_CALLBACK (gtk_widget_destroy), NULL);
-       gtk_window_set_resizable (GTK_WINDOW (error_dialog), FALSE);
-       gtk_window_set_screen (GTK_WINDOW (error_dialog), gtk_widget_get_screen (GTK_WIDGET (dialog)));
-       gtk_widget_show (error_dialog);
-        g_error_free (error);
-        error = NULL;
-    }
-}
-
-
 static void
 response_cb (GtkDialog *dialog, gint id, GWeatherPref *pref)
 {
     if (id == GTK_RESPONSE_HELP) {
-        help_cb (dialog);
+        gp_applet_show_help (GP_APPLET (pref->priv->applet),
+                             "gweather-settings");
     } else {
         gtk_widget_destroy (GTK_WIDGET (dialog));
     }
 }
 
-
 static void
 gweather_pref_create (GWeatherPref *pref)
 {


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