Author: jhaitsma
Date: Sat Feb 16 23:23:47 2008
New Revision: 100
URL: http://svn.gnome.org/viewvc/netspeed?rev=100&view=rev

Log:
2008-02-17  Jaap Haitsma  <[EMAIL PROTECTED]>

        * configure.in:
        * src/netspeed.c: (open_uri), (display_help), (handle_links):
        Remove dependency on libgnomeui



Modified:
   trunk/ChangeLog
   trunk/configure.in
   trunk/src/netspeed.c

Modified: trunk/configure.in
==============================================================================
--- trunk/configure.in  (original)
+++ trunk/configure.in  Sat Feb 16 23:23:47 2008
@@ -20,7 +20,7 @@
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", GETTEXT_PACKAGE)
 
-PKG_CHECK_MODULES(NETSPEED, libgnomeui-2.0 >= 2.8.0 libpanelapplet-2.0 
libgtop-2.0 >= 2.14.2)
+PKG_CHECK_MODULES(NETSPEED, libpanelapplet-2.0 libgtop-2.0 >= 2.14.2)
 
 AC_SUBST(NETSPEED_APPLET_CFLAGS)
 AC_SUBST(NETSPEED_APPLET_LIBS)

Modified: trunk/src/netspeed.c
==============================================================================
--- trunk/src/netspeed.c        (original)
+++ trunk/src/netspeed.c        Sat Feb 16 23:23:47 2008
@@ -21,7 +21,7 @@
 #include "config.h"
 #endif 
 
-#include <gnome.h>
+#include <gtk/gtk.h>
 #include <panel-applet.h>
 #include <panel-applet-gconf.h>
 #include <gconf/gconf-client.h>
@@ -116,6 +116,22 @@
        "             pixtype=\"stock\" pixname=\"gtk-about\"/>\n"
        "</popup>\n";
 
+
+static gboolean
+open_uri (GtkWidget *parent, const char *url, GError **error)
+{
+       gboolean ret;
+       char *cmdline;
+       GdkScreen *screen;
+
+       screen = gtk_widget_get_screen (parent);
+       cmdline = g_strconcat ("xdg-open ", url, NULL);
+       ret = gdk_spawn_command_line_on_screen (screen, cmdline, error);
+       g_free (cmdline);
+
+       return ret;
+}
+
 /* Adds a Pango markup "size" to a bytestring
  */
 static void
@@ -735,11 +751,17 @@
 display_help (GtkWidget *dialog, const gchar *section)
 {
        GError *error = NULL;
+       gboolean ret;
+       char *uri;
 
-       gnome_help_display_on_screen (PACKAGE, section,
-                                     gtk_widget_get_screen (GTK_WIDGET 
(dialog)),
-                                     &error);
-       if (error) {
+       if (section)
+               uri = g_strdup_printf ("ghelp:netspeed_applet?%s", section);
+       else
+               uri = g_strdup ("ghelp:netspeed_applet");
+
+       ret = open_uri (dialog, uri, &error);
+       g_free (uri);
+       if (ret == FALSE) {
                GtkWidget *error_dialog = gtk_message_dialog_new (NULL,
                                                                  
GTK_DIALOG_MODAL,
                                                                  
GTK_MESSAGE_ERROR,
@@ -750,7 +772,7 @@
                                  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_window_set_screen  (GTK_WINDOW (error_dialog), 
gtk_widget_get_screen (dialog));
                gtk_widget_show (error_dialog);
                g_error_free (error);
        }
@@ -774,10 +796,13 @@
 handle_links (GtkAboutDialog *about, const gchar *link, gpointer data)
 {
        gchar *new_link;
+       GError *error = NULL;
+       gboolean ret;
+       GtkWidget *dialog;
 
        switch (GPOINTER_TO_INT (data)){
        case LINK_TYPE_EMAIL:
-               new_link = g_strdup_printf ("mailto: %s", link);
+               new_link = g_strdup_printf ("mailto:%s";, link);
                break;
        case LINK_TYPE_URL:
                new_link = g_strdup (link);
@@ -786,8 +811,17 @@
                g_assert_not_reached ();
        }
 
-       gnome_url_show(new_link, NULL);
+       ret = open_uri (GTK_WIDGET (about), new_link, &error);
 
+       if (ret == FALSE) {
+               dialog = gtk_message_dialog_new (GTK_WINDOW (dialog), 
+                                                
GTK_DIALOG_DESTROY_WITH_PARENT, 
+                                                GTK_MESSAGE_ERROR, 
GTK_BUTTONS_OK, 
+                                                _("Failed to show:\n%s"), 
new_link); 
+               gtk_dialog_run (GTK_DIALOG (dialog));
+               gtk_widget_destroy (dialog);
+               g_error_free(error);
+       }
        g_free (new_link);
 }
 
_______________________________________________
SVN-commits-list mailing list (read only)
http://mail.gnome.org/mailman/listinfo/svn-commits-list

Want to limit the commits to a few modules? Go to above URL, log in to edit 
your options and select the modules ('topics') you want.
Module maintainer? It is possible to set the reply-to to your development 
mailing list. Email [EMAIL PROTECTED] if interested.

Reply via email to