[gnome-packagekit] Port to GtkApplication



commit 6c8cec7ae6d51ff7b76bfd7a07656187333f05ef
Author: Richard Hughes <richard hughsie com>
Date:   Thu Jun 17 18:56:15 2010 +0100

    Port to GtkApplication

 configure.ac                 |   37 +++++++++++--------------------------
 src/Makefile.am              |    2 +-
 src/gpk-application-main.c   |   12 ++++++------
 src/gpk-log.c                |   29 ++++++++---------------------
 src/gpk-prefs.c              |   19 +++----------------
 src/gpk-repo.c               |   20 +++-----------------
 src/gpk-service-pack.c       |   29 ++++++++---------------------
 src/gpk-update-icon.c        |   10 +++++-----
 src/gpk-update-viewer-main.c |   12 ++++++------
 9 files changed, 51 insertions(+), 119 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 22d07f0..e03b854 100644
--- a/configure.ac
+++ b/configure.ac
@@ -101,42 +101,27 @@ AM_GLIB_GNU_GETTEXT
 GLIB_GSETTINGS
 
 dnl ---------------------------------------------------------------------------
-dnl - Library dependencies
-dnl ---------------------------------------------------------------------------
-PACKAGEKIT_REQUIRED=0.5.5 # when changing, nuke some compatability entries in gpk-enum.h
-GLIB_REQUIRED=2.14.0
-GTK_REQUIRED=2.90.2
-DBUS_REQUIRED=1.1.2
-GCONF_REQUIRED=2.31.1
-DBUS_GLIB_REQUIRED=0.73
-LIBNOTIFY_REQUIRED=0.4.3
-GNOME_MENUS_REQUIRED=2.24.1
-GIO_REQUIRED=2.25.8
-UPOWER_REQUIRED=0.9.0
-CANBERRA_REQUIRED=0.10
-
-dnl ---------------------------------------------------------------------------
 dnl - Check library dependencies
 dnl ---------------------------------------------------------------------------
-PKG_CHECK_MODULES(PACKAGEKIT, packagekit-glib2 >= $PACKAGEKIT_REQUIRED)
+PKG_CHECK_MODULES(PACKAGEKIT, packagekit-glib2 >= 0.5.5)
 PKG_CHECK_MODULES(GLIB, \
- glib-2.0 >= $GLIB_REQUIRED
+ glib-2.0 >= 2.14.0
  gobject-2.0
- gio-2.0 >= $GIO_REQUIRED
- gio-unix-2.0 >= $GIO_REQUIRED)
+ gio-2.0 >= 2.25.9
+ gio-unix-2.0)
 PKG_CHECK_MODULES(DBUS, \
- dbus-glib-1 >= $DBUS_GLIB_REQUIRED \
- dbus-1 >= $DBUS_REQUIRED \
+ dbus-glib-1 >= 0.73 \
+ dbus-1 >= 1.1.2 \
  gthread-2.0)
 PKG_CHECK_MODULES(GTK, \
- gtk+-3.0 >= $GTK_REQUIRED gdk-2.0 fontconfig)
+ gtk+-3.0 >= 2.90.3 gdk-3.0 fontconfig)
 PKG_CHECK_MODULES(LIBNOTIFY, \
- libnotify >= $LIBNOTIFY_REQUIRED)
+ libnotify >= 0.4.3)
 PKG_CHECK_MODULES(GNOME_MENUS, \
- libgnome-menu >= $GNOME_MENUS_REQUIRED)
+ libgnome-menu >= 2.24.1)
 PKG_CHECK_MODULES(UPOWER, [
- upower-glib >= $UPOWER_REQUIRED])
-PKG_CHECK_MODULES(CANBERRA, libcanberra-gtk3 >= $CANBERRA_REQUIRED)
+ upower-glib >= 0.9.0])
+PKG_CHECK_MODULES(CANBERRA, libcanberra-gtk3 >= 0.10)
 PKG_CHECK_MODULES(X11, x11)
 
 dnl ---------------------------------------------------------------------------
diff --git a/src/Makefile.am b/src/Makefile.am
index 4c401fc..ea16d12 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -6,10 +6,10 @@ NULL =
 INCLUDES =						\
 	$(GLIB_CFLAGS)					\
 	$(GIO_CFLAGS)					\
+	$(GTK_CFLAGS)					\
 	$(DBUS_CFLAGS)					\
 	$(LIBNOTIFY_CFLAGS)				\
 	$(PACKAGEKIT_CFLAGS)				\
-	$(GTK_CFLAGS)					\
 	$(GUDEV_CFLAGS)					\
 	$(GNOME_MENUS_CFLAGS)				\
 	-DI_KNOW_THE_UPOWER_API_IS_SUBJECT_TO_CHANGE	\
diff --git a/src/gpk-application-main.c b/src/gpk-application-main.c
index d5604d1..c43dd80 100644
--- a/src/gpk-application-main.c
+++ b/src/gpk-application-main.c
@@ -40,16 +40,16 @@
  * gpk_application_close_cb
  **/
 static void
-gpk_application_close_cb (GpkApplication *app, GApplication *application)
+gpk_application_close_cb (GpkApplication *app, GtkApplication *application)
 {
-	g_application_quit_with_data (application, NULL);
+	gtk_application_quit (application);
 }
 
 /**
  * gpk_application_prepare_action_cb:
  **/
 static void
-gpk_application_prepare_action_cb (GApplication *application, GVariant *arguments,
+gpk_application_prepare_action_cb (GtkApplication *application, GVariant *arguments,
 				   GVariant *platform_data, GpkApplication *app)
 {
 	gpk_application_show (app);
@@ -64,7 +64,7 @@ main (int argc, char *argv[])
 	gboolean program_version = FALSE;
 	GpkApplication *app = NULL;
 	GOptionContext *context;
-	GApplication *application;
+	GtkApplication *application;
 	gboolean ret;
 
 	const GOptionEntry options[] = {
@@ -108,7 +108,7 @@ main (int argc, char *argv[])
 	app = gpk_application_new ();
 
 	/* are we already activated? */
-	application = g_application_new ("org.freedesktop.PackageKit.Application", argc, argv);
+	application = gtk_application_new ("org.freedesktop.PackageKit.Application", &argc, &argv);
 	g_signal_connect (application, "prepare-activation",
 			  G_CALLBACK (gpk_application_prepare_action_cb), app);
 
@@ -116,7 +116,7 @@ main (int argc, char *argv[])
 			  G_CALLBACK (gpk_application_close_cb), application);
 
 	/* run */
-	g_application_run (application);
+	gtk_application_run (application);
 
 	g_object_unref (app);
 	g_object_unref (application);
diff --git a/src/gpk-log.c b/src/gpk-log.c
index 38c616d..2f79bd3 100644
--- a/src/gpk-log.c
+++ b/src/gpk-log.c
@@ -362,18 +362,6 @@ gpk_log_treeview_clicked_cb (GtkTreeSelection *selection, gpointer data)
 }
 
 /**
- * gpk_log_application_prepare_action_cb:
- **/
-static void
-gpk_log_application_prepare_action_cb (GApplication *application, GVariant *arguments,
-				       GVariant *platform_data, gpointer user_data)
-{
-	GtkWindow *window;
-	window = GTK_WINDOW (gtk_builder_get_object (builder, "dialog_simple"));
-	gtk_window_present (window);
-}
-
-/**
  * gpk_log_filter:
  **/
 static gboolean
@@ -669,9 +657,9 @@ gpk_log_entry_filter_cb (GtkWidget *widget, GdkEventKey *event, gpointer user_da
  * gpk_log_delete_event_cb:
  **/
 static gboolean
-gpk_log_delete_event_cb (GtkWidget *widget, GdkEvent *event, GApplication *application)
+gpk_log_delete_event_cb (GtkWidget *widget, GdkEvent *event, GtkApplication *application)
 {
-	g_application_quit_with_data (application, NULL);
+	gtk_application_quit (application);
 	return FALSE;
 }
 
@@ -679,9 +667,9 @@ gpk_log_delete_event_cb (GtkWidget *widget, GdkEvent *event, GApplication *appli
  * gpk_log_button_close_cb:
  **/
 static void
-gpk_log_button_close_cb (GtkWidget *widget, GApplication *application)
+gpk_log_button_close_cb (GtkWidget *widget, GtkApplication *application)
 {
-	g_application_quit_with_data (application, NULL);
+	gtk_application_quit (application);
 }
 
 /**
@@ -695,7 +683,7 @@ main (int argc, char *argv[])
 	GtkWidget *widget;
 	GtkTreeSelection *selection;
 	GtkEntryCompletion *completion;
-	GApplication *application;
+	GtkApplication *application;
 	gboolean ret;
 	guint retval;
 	guint xid = 0;
@@ -736,9 +724,7 @@ main (int argc, char *argv[])
 		return 1;
 
 	/* are we already activated? */
-	application = g_application_new ("org.freedesktop.PackageKit.LogViewer", argc, argv);
-	g_signal_connect (application, "prepare-activation",
-			  G_CALLBACK (gpk_log_application_prepare_action_cb), NULL);
+	application = gtk_application_new ("org.freedesktop.PackageKit.LogViewer", &argc, &argv);
 
 	/* add application specific icons to search path */
 	gtk_icon_theme_append_search_path (gtk_icon_theme_get_default (),
@@ -760,6 +746,7 @@ main (int argc, char *argv[])
 
 	widget = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_simple"));
 	gtk_window_set_icon_name (GTK_WINDOW (widget), GPK_ICON_SOFTWARE_LOG);
+	gtk_application_add_window (application, GTK_WINDOW (widget));
 
 	/* set a size, if the screen allows */
 	gpk_window_set_size_request (GTK_WINDOW (widget), 900, 300);
@@ -841,7 +828,7 @@ main (int argc, char *argv[])
 	gpk_log_refresh ();
 
 	/* run */
-	g_application_run (application);
+	gtk_application_run (application);
 
 out_build:
 	g_object_unref (builder);
diff --git a/src/gpk-prefs.c b/src/gpk-prefs.c
index e18f881..fe58b9a 100644
--- a/src/gpk-prefs.c
+++ b/src/gpk-prefs.c
@@ -288,18 +288,6 @@ gpk_prefs_auto_update_combo_setup (void)
 }
 
 /**
- * gpk_prefs_application_prepare_action_cb:
- **/
-static void
-gpk_prefs_application_prepare_action_cb (GApplication *application, GVariant *arguments,
-					 GVariant *platform_data, gpointer user_data)
-{
-	GtkWindow *window;
-	window = GTK_WINDOW (gtk_builder_get_object (builder, "dialog_prefs"));
-	gtk_window_present (window);
-}
-
-/**
  * gpk_prefs_notify_network_state_cb:
  **/
 static void
@@ -394,7 +382,7 @@ main (int argc, char *argv[])
 	GtkWidget *main_window;
 	GtkWidget *widget;
 	PkControl *control;
-	GApplication *application;
+	GtkApplication *application;
 	guint retval;
 	guint xid = 0;
 	GError *error = NULL;
@@ -436,9 +424,7 @@ main (int argc, char *argv[])
 	}
 
 	/* are we already activated? */
-	application = g_application_new ("org.freedesktop.PackageKit.Prefs", argc, argv);
-	g_signal_connect (application, "prepare-activation",
-			  G_CALLBACK (gpk_prefs_application_prepare_action_cb), NULL);
+	application = gtk_application_new ("org.freedesktop.PackageKit.Prefs", &argc, &argv);
 
 	/* load settings */
 	settings = g_settings_new (GPK_SETTINGS_SCHEMA);
@@ -459,6 +445,7 @@ main (int argc, char *argv[])
 	}
 
 	main_window = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_prefs"));
+	gtk_application_add_window (application, GTK_WINDOW (main_window));
 
 	/* Hide window first so that the dialogue resizes itself without redrawing */
 	gtk_widget_hide (main_window);
diff --git a/src/gpk-repo.c b/src/gpk-repo.c
index 6095b2a..436f2e8 100644
--- a/src/gpk-repo.c
+++ b/src/gpk-repo.c
@@ -503,19 +503,6 @@ gpk_repo_checkbutton_detail_cb (GtkWidget *widget, gpointer data)
 }
 
 /**
- * gpk_repo_application_prepare_action_cb:
- **/
-static void
-gpk_repo_application_prepare_action_cb (GApplication *application, GVariant *arguments,
-					GVariant *platform_data, gpointer user_data)
-{
-	GtkWindow *window;
-	window = GTK_WINDOW (gtk_builder_get_object (builder, "dialog_repo"));
-	gtk_window_present (window);
-}
-
-
-/**
  * gpk_repo_get_properties_cb:
  **/
 static void
@@ -600,7 +587,7 @@ main (int argc, char *argv[])
 	GtkWidget *widget;
 	GtkTreeSelection *selection;
 	PkControl *control;
-	GApplication *application;
+	GtkApplication *application;
 	GError *error = NULL;
 	guint retval;
 	guint xid = 0;
@@ -644,9 +631,7 @@ main (int argc, char *argv[])
                                            GPK_DATA G_DIR_SEPARATOR_S "icons");
 
 	/* are we already activated? */
-	application = g_application_new ("org.freedesktop.PackageKit.Repo", argc, argv);
-	g_signal_connect (application, "prepare-activation",
-			  G_CALLBACK (gpk_repo_application_prepare_action_cb), NULL);
+	application = gtk_application_new ("org.freedesktop.PackageKit.Repo", &argc, &argv);
 
 	settings = g_settings_new (GPK_SETTINGS_SCHEMA);
 
@@ -678,6 +663,7 @@ main (int argc, char *argv[])
 	gtk_widget_show (image_animation);
 
 	main_window = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_repo"));
+	gtk_application_add_window (application, GTK_WINDOW (main_window));
 	gtk_window_set_icon_name (GTK_WINDOW (main_window), GPK_ICON_SOFTWARE_SOURCES);
 	g_signal_connect (main_window, "delete_event",
 			  G_CALLBACK (gpk_repo_delete_event_cb), loop);
diff --git a/src/gpk-service-pack.c b/src/gpk-service-pack.c
index e02df43..d759b40 100644
--- a/src/gpk-service-pack.c
+++ b/src/gpk-service-pack.c
@@ -615,18 +615,6 @@ out:
 }
 
 /**
- * gpk_pack_application_prepare_action_cb:
- **/
-static void
-gpk_pack_application_prepare_action_cb (GApplication *application, GVariant *arguments,
-					GVariant *platform_data, gpointer user_data)
-{
-	GtkWindow *window;
-	window = GTK_WINDOW (gtk_builder_get_object (builder, "window_prefs"));
-	gtk_window_present (window);
-}
-
-/**
  * gpk_pack_radio_updates_cb:
  **/
 static void
@@ -675,9 +663,9 @@ gpk_pack_radio_copy_cb (GtkWidget *widget2, gpointer data)
  * gpk_pack_delete_event_cb:
  **/
 static gboolean
-gpk_pack_delete_event_cb (GtkWidget *widget, GdkEvent *event, GApplication *application)
+gpk_pack_delete_event_cb (GtkWidget *widget, GdkEvent *event, GtkApplication *application)
 {
-	g_application_quit_with_data (application, NULL);
+	gtk_application_quit (application);
 	return FALSE;
 }
 
@@ -685,9 +673,9 @@ gpk_pack_delete_event_cb (GtkWidget *widget, GdkEvent *event, GApplication *appl
  * gpk_pack_button_close_cb:
  **/
 static void
-gpk_pack_button_close_cb (GtkWidget *widget, GApplication *application)
+gpk_pack_button_close_cb (GtkWidget *widget, GtkApplication *application)
 {
-	g_application_quit_with_data (application, NULL);
+	gtk_application_quit (application);
 }
 
 /**
@@ -701,7 +689,7 @@ main (int argc, char *argv[])
 	GtkWidget *widget;
 	GtkFileFilter *filter;
 	GtkEntryCompletion *completion;
-	GApplication *application;
+	GtkApplication *application;
 	gboolean ret;
 	GSettings *settings = NULL;
 	gchar *option = NULL;
@@ -753,9 +741,7 @@ main (int argc, char *argv[])
 	gtk_init (&argc, &argv);
 
 	/* are we already activated? */
-	application = g_application_new ("org.freedesktop.PackageKit.ServicePack", argc, argv);
-	g_signal_connect (application, "prepare-activation",
-			  G_CALLBACK (gpk_pack_application_prepare_action_cb), NULL);
+	application = gtk_application_new ("org.freedesktop.PackageKit.ServicePack", &argc, &argv);
 
 	/* use a client to download packages */
 	client = pk_client_new ();
@@ -781,6 +767,7 @@ main (int argc, char *argv[])
 	}
 
 	main_window = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_pack"));
+	gtk_application_add_window (application, GTK_WINDOW (main_window));
 
 	/* Hide window first so that the dialogue resizes itself without redrawing */
 	gtk_widget_hide (main_window);
@@ -861,7 +848,7 @@ main (int argc, char *argv[])
 	gtk_widget_show (main_window);
 
 	/* run */
-	g_application_run (application);
+	gtk_application_run (application);
 
 out_build:
 	g_object_unref (builder);
diff --git a/src/gpk-update-icon.c b/src/gpk-update-icon.c
index 85c1430..0dce1f9 100644
--- a/src/gpk-update-icon.c
+++ b/src/gpk-update-icon.c
@@ -46,9 +46,9 @@
  * gpk_icon_timed_exit_cb:
  **/
 static gboolean
-gpk_icon_timed_exit_cb (GApplication *application)
+gpk_icon_timed_exit_cb (GtkApplication *application)
 {
-	g_application_quit_with_data (application, NULL);
+	gtk_application_quit (application);
 	return FALSE;
 }
 
@@ -65,7 +65,7 @@ main (int argc, char *argv[])
 	GpkFirmware *firmware = NULL;
 	GpkHardware *hardware = NULL;
 	GOptionContext *context;
-	GApplication *application;
+	GtkApplication *application;
 	gboolean ret;
 	guint timer_id = 0;
 
@@ -113,7 +113,7 @@ main (int argc, char *argv[])
 	}
 
 	/* are we already activated? */
-	application = g_application_new ("org.freedesktop.PackageKit.UpdateIcon", argc, argv);
+	application = gtk_application_new ("org.freedesktop.PackageKit.UpdateIcon", &argc, &argv);
 
 	/* add application specific icons to search path */
 	gtk_icon_theme_append_search_path (gtk_icon_theme_get_default (),
@@ -134,7 +134,7 @@ main (int argc, char *argv[])
 	}
 
 	/* run */
-	g_application_run (application);
+	gtk_application_run (application);
 
 	g_object_unref (cupdate);
 	g_object_unref (watch);
diff --git a/src/gpk-update-viewer-main.c b/src/gpk-update-viewer-main.c
index 1dbacfd..c1736f7 100644
--- a/src/gpk-update-viewer-main.c
+++ b/src/gpk-update-viewer-main.c
@@ -35,16 +35,16 @@
  * gpk_update_viewer_close_cb
  **/
 static void
-gpk_update_viewer_close_cb (GpkUpdateViewer *update_viewer, GApplication *application)
+gpk_update_viewer_close_cb (GpkUpdateViewer *update_viewer, GtkApplication *application)
 {
-	g_application_quit_with_data (application, NULL);
+	gtk_application_quit (application);
 }
 
 /**
  * gpk_update_viewer_application_prepare_action_cb:
  **/
 static void
-gpk_update_viewer_application_prepare_action_cb (GApplication *application, GVariant *arguments,
+gpk_update_viewer_application_prepare_action_cb (GtkApplication *application, GVariant *arguments,
 						 GVariant *platform_data, GpkUpdateViewer *update_viewer)
 {
 	gpk_update_viewer_show (update_viewer);
@@ -59,7 +59,7 @@ main (int argc, char *argv[])
 	gboolean program_version = FALSE;
 	GpkUpdateViewer *update_viewer = NULL;
 	GOptionContext *context;
-	GApplication *application;
+	GtkApplication *application;
 	gboolean ret;
 
 	const GOptionEntry options[] = {
@@ -107,7 +107,7 @@ main (int argc, char *argv[])
 	update_viewer = gpk_update_viewer_new ();
 
 	/* are we already activated? */
-	application = g_application_new ("org.freedesktop.PackageKit.UpdateViewer", argc, argv);
+	application = gtk_application_new ("org.freedesktop.PackageKit.UpdateViewer", &argc, &argv);
 	g_signal_connect (application, "prepare-activation",
 			  G_CALLBACK (gpk_update_viewer_application_prepare_action_cb), update_viewer);
 
@@ -116,7 +116,7 @@ main (int argc, char *argv[])
 			  G_CALLBACK (gpk_update_viewer_close_cb), application);
 
 	/* run */
-	g_application_run (application);
+	gtk_application_run (application);
 
 	g_object_unref (update_viewer);
 	g_object_unref (application);



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