[gtk+/open-with-dialog] app-chooser: rename GtkOpenWith to GtkAppChooser



commit 1b84ffee14cd44f3e6eb987fac77f9beb668fd69
Author: Cosimo Cecchi <cosimoc gnome org>
Date:   Tue Nov 23 17:23:37 2010 +0100

    app-chooser: rename GtkOpenWith to GtkAppChooser

 gtk/Makefile.am                                    |   38 ++--
 gtk/gtk.h                                          |    6 +-
 gtk/{gtkopenwith.c => gtkappchooser.c}             |   22 +-
 gtk/{gtkopenwith.h => gtkappchooser.h}             |   30 ++--
 gtk/{gtkopenwithdialog.c => gtkappchooserdialog.c} |  166 ++++++++--------
 gtk/{gtkopenwithdialog.h => gtkappchooserdialog.h} |   52 +++---
 gtk/{gtkopenwithmodule.c => gtkappchoosermodule.c} |   20 +-
 gtk/{gtkopenwithmodule.h => gtkappchoosermodule.h} |   10 +-
 gtk/{gtkopenwithonline.c => gtkappchooseronline.c} |   40 ++--
 gtk/{gtkopenwithonline.h => gtkappchooseronline.h} |   42 ++--
 ...ithonlinedummy.c => gtkappchooseronlinedummy.c} |   28 ++--
 gtk/gtkappchooseronlinedummy.h                     |   59 ++++++
 ...kopenwithonlinepk.c => gtkappchooseronlinepk.c} |   52 +++---
 gtk/gtkappchooseronlinepk.h                        |   59 ++++++
 ...gtkopenwithprivate.h => gtkappchooserprivate.h} |   24 ++--
 gtk/{gtkopenwithwidget.c => gtkappchooserwidget.c} |  208 ++++++++++----------
 gtk/gtkappchooserwidget.h                          |  109 ++++++++++
 gtk/gtkopenwithonlinedummy.h                       |   59 ------
 gtk/gtkopenwithonlinepk.h                          |   59 ------
 gtk/gtkopenwithwidget.h                            |  109 ----------
 tests/Makefile.am                                  |   10 +-
 tests/{testopenwith.c => testappchooser.c}         |   24 ++--
 22 files changed, 613 insertions(+), 613 deletions(-)
---
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index 3873cf1..a9c495b 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -246,10 +246,10 @@ gtk_public_h_sources =          \
 	gtkmountoperation.h     \
 	gtknotebook.h		\
 	gtkoffscreenwindow.h	\
-	gtkopenwith.h		\
-	gtkopenwithdialog.h	\
-	gtkopenwithwidget.h	\
-	gtkopenwithonline.h	\
+	gtkappchooser.h		\
+	gtkappchooserdialog.h	\
+	gtkappchooserwidget.h	\
+	gtkappchooseronline.h	\
 	gtkorientable.h		\
 	gtkpagesetup.h		\
 	gtkpaned.h		\
@@ -354,14 +354,14 @@ gtk_semi_private_h_sources =    \
 	gtktextlayout.h
 
 if ENABLE_PACKAGEKIT
-gtk_openwith_impl_h_sources = \
-	gtkopenwithonlinepk.h \
+gtk_appchooser_impl_h_sources = \
+	gtkappchooseronlinepk.h \
 	$(NULL)
 endif
 
 if ENABLE_PACKAGEKIT
-gtk_openwith_impl_c_sources = \
-	gtkopenwithonlinepk.c \
+gtk_appchooser_impl_c_sources = \
+	gtkappchooseronlinepk.c \
 	$(NULL)
 endif
 
@@ -389,9 +389,9 @@ gtk_private_h_sources =		\
 	gtkmenuprivate.h	\
 	gtkmnemonichash.h	\
 	gtkmountoperationprivate.h \
-	gtkopenwithprivate.h	\
-	gtkopenwithmodule.h 	\
-	gtkopenwithonlinedummy.h \
+	gtkappchooserprivate.h	\
+	gtkappchoosermodule.h 	\
+	gtkappchooseronlinedummy.h \
 	gtkpango.h		\
 	gtkpathbar.h		\
 	gtkplugprivate.h	\
@@ -420,7 +420,7 @@ gtk_private_h_sources =		\
 	gtkwindow-decorate.h	\
 	gtkwidgetprivate.h	\
 	$(gtk_clipboard_dnd_h_sources) \
-	$(gtk_openwith_impl_h_sources)
+	$(gtk_appchooser_impl_h_sources)
 
 # GTK+ C sources to build the library from
 gtk_base_c_sources =            \
@@ -536,12 +536,12 @@ gtk_base_c_sources =            \
 	gtkmountoperation.c     \
 	gtknotebook.c		\
 	gtkoffscreenwindow.c	\
-	gtkopenwith.c		\
-	gtkopenwithwidget.c	\
-	gtkopenwithdialog.c	\
-	gtkopenwithmodule.c	\
-	gtkopenwithonline.c	\
-	gtkopenwithonlinedummy.c \
+	gtkappchooser.c		\
+	gtkappchooserwidget.c	\
+	gtkappchooserdialog.c	\
+	gtkappchoosermodule.c	\
+	gtkappchooseronline.c	\
+	gtkappchooseronlinedummy.c \
 	gtkorientable.c		\
 	gtkpagesetup.c		\
 	gtkpaned.c		\
@@ -647,7 +647,7 @@ gtk_base_c_sources =            \
 	gtkwindow-decorate.c    \
 	gtkwindow.c		\
 	$(gtk_clipboard_dnd_c_sources) \
-	$(gtk_openwith_impl_c_sources)
+	$(gtk_appchooser_impl_c_sources)
 
 gtk_c_sources = $(gtk_base_c_sources)
 gtk_all_c_sources = $(gtk_base_c_sources)
diff --git a/gtk/gtk.h b/gtk/gtk.h
index fa823ae..8178434 100644
--- a/gtk/gtk.h
+++ b/gtk/gtk.h
@@ -129,9 +129,9 @@
 #include <gtk/gtkmountoperation.h>
 #include <gtk/gtknotebook.h>
 #include <gtk/gtkoffscreenwindow.h>
-#include <gtk/gtkopenwith.h>
-#include <gtk/gtkopenwithdialog.h>
-#include <gtk/gtkopenwithwidget.h>
+#include <gtk/gtkappchooser.h>
+#include <gtk/gtkappchooserdialog.h>
+#include <gtk/gtkappchooserwidget.h>
 #include <gtk/gtkorientable.h>
 #include <gtk/gtkpagesetup.h>
 #include <gtk/gtkpapersize.h>
diff --git a/gtk/gtkopenwith.c b/gtk/gtkappchooser.c
similarity index 72%
rename from gtk/gtkopenwith.c
rename to gtk/gtkappchooser.c
index 0bd4c1a..74b552b 100644
--- a/gtk/gtkopenwith.c
+++ b/gtk/gtkappchooser.c
@@ -1,5 +1,5 @@
 /*
- * gtkopenwith.c: open-with interface
+ * gtkappchooser.c: app-chooser interface
  *
  * Copyright (C) 2010 Red Hat, Inc.
  *
@@ -23,18 +23,18 @@
 
 #include <config.h>
 
-#include "gtkopenwith.h"
+#include "gtkappchooser.h"
 
 #include "gtkintl.h"
-#include "gtkopenwithprivate.h"
+#include "gtkappchooserprivate.h"
 #include "gtkwidget.h"
 
 #include <glib.h>
 
-G_DEFINE_INTERFACE (GtkOpenWith, gtk_open_with, GTK_TYPE_WIDGET);
+G_DEFINE_INTERFACE (GtkAppChooser, gtk_app_chooser, GTK_TYPE_WIDGET);
 
 static void
-gtk_open_with_default_init (GtkOpenWithIface *iface)
+gtk_app_chooser_default_init (GtkAppChooserIface *iface)
 {
   GParamSpec *pspec;
 
@@ -48,11 +48,11 @@ gtk_open_with_default_init (GtkOpenWithIface *iface)
 }
 
 gchar *
-gtk_open_with_get_content_type (GtkOpenWith *self)
+gtk_app_chooser_get_content_type (GtkAppChooser *self)
 {
   gchar *retval = NULL;
 
-  g_return_val_if_fail (GTK_IS_OPEN_WITH (self), NULL);
+  g_return_val_if_fail (GTK_IS_APP_CHOOSER (self), NULL);
 
   g_object_get (self,
 		"content-type", &retval,
@@ -62,13 +62,13 @@ gtk_open_with_get_content_type (GtkOpenWith *self)
 }
 
 GAppInfo *
-gtk_open_with_get_app_info (GtkOpenWith *self)
+gtk_app_chooser_get_app_info (GtkAppChooser *self)
 {
-  return GTK_OPEN_WITH_GET_IFACE (self)->get_app_info (self);
+  return GTK_APP_CHOOSER_GET_IFACE (self)->get_app_info (self);
 }
 
 void
-gtk_open_with_refresh (GtkOpenWith *self)
+gtk_app_chooser_refresh (GtkAppChooser *self)
 {
-  GTK_OPEN_WITH_GET_IFACE (self)->refresh (self);
+  GTK_APP_CHOOSER_GET_IFACE (self)->refresh (self);
 }
diff --git a/gtk/gtkopenwith.h b/gtk/gtkappchooser.h
similarity index 61%
rename from gtk/gtkopenwith.h
rename to gtk/gtkappchooser.h
index c77029b..e166529 100644
--- a/gtk/gtkopenwith.h
+++ b/gtk/gtkappchooser.h
@@ -1,5 +1,5 @@
 /*
- * gtkopenwith.h: open-with interface
+ * gtkappchooser.h: app-chooser interface
  *
  * Copyright (C) 2010 Red Hat, Inc.
  *
@@ -25,30 +25,30 @@
 #error "Only <gtk/gtk.h> can be included directly."
 #endif
 
-#ifndef __GTK_OPEN_WITH_H__
-#define __GTK_OPEN_WITH_H__
+#ifndef __GTK_APP_CHOOSER_H__
+#define __GTK_APP_CHOOSER_H__
 
 #include <glib.h>
 #include <gio/gio.h>
 
 G_BEGIN_DECLS
 
-#define GTK_TYPE_OPEN_WITH\
-  (gtk_open_with_get_type ())
-#define GTK_OPEN_WITH(obj)\
-  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_OPEN_WITH, GtkOpenWith))
-#define GTK_IS_OPEN_WITH(obj)\
-  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_OPEN_WITH))
+#define GTK_TYPE_APP_CHOOSER\
+  (gtk_app_chooser_get_type ())
+#define GTK_APP_CHOOSER(obj)\
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER, GtkAppChooser))
+#define GTK_IS_APP_CHOOSER(obj)\
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER))
 
-typedef struct _GtkOpenWith GtkOpenWith;
+typedef struct _GtkAppChooser GtkAppChooser;
 
-GType gtk_open_with_get_type () G_GNUC_CONST;
+GType gtk_app_chooser_get_type () G_GNUC_CONST;
 
-GAppInfo * gtk_open_with_get_app_info (GtkOpenWith *self);
-gchar * gtk_open_with_get_content_type (GtkOpenWith *self);
-void gtk_open_with_refresh (GtkOpenWith *self);
+GAppInfo * gtk_app_chooser_get_app_info (GtkAppChooser *self);
+gchar * gtk_app_chooser_get_content_type (GtkAppChooser *self);
+void gtk_app_chooser_refresh (GtkAppChooser *self);
 
 G_END_DECLS
 
-#endif /* __GTK_OPEN_WITH_H__ */
+#endif /* __GTK_APP_CHOOSER_H__ */
 
diff --git a/gtk/gtkopenwithdialog.c b/gtk/gtkappchooserdialog.c
similarity index 72%
rename from gtk/gtkopenwithdialog.c
rename to gtk/gtkappchooserdialog.c
index 6ba2ab8..4d6342a 100644
--- a/gtk/gtkopenwithdialog.c
+++ b/gtk/gtkappchooserdialog.c
@@ -1,5 +1,5 @@
 /*
- * gtkopenwithdialog.c: an open-with dialog
+ * gtkappchooserdialog.c: an app-chooser dialog
  *
  * Copyright (C) 2004 Novell, Inc.
  * Copyright (C) 2007, 2010 Red Hat, Inc.
@@ -26,12 +26,12 @@
 
 #include <config.h>
 
-#include "gtkopenwithdialog.h"
+#include "gtkappchooserdialog.h"
 
 #include "gtkintl.h"
-#include "gtkopenwith.h"
-#include "gtkopenwithonline.h"
-#include "gtkopenwithprivate.h"
+#include "gtkappchooser.h"
+#include "gtkappchooseronline.h"
+#include "gtkappchooserprivate.h"
 
 #include <string.h>
 #include <glib/gi18n-lib.h>
@@ -40,7 +40,7 @@
 
 #define sure_string(s) ((const char *) ((s) != NULL ? (s) : ""))
 
-struct _GtkOpenWithDialogPrivate {
+struct _GtkAppChooserDialogPrivate {
   char *content_type;
   GFile *gfile;
 
@@ -50,7 +50,7 @@ struct _GtkOpenWithDialogPrivate {
 
   GtkWidget *open_label;
 
-  GtkWidget *open_with_widget;
+  GtkWidget *app_chooser_widget;
   GtkWidget *show_more_button;
 
   gboolean show_more_clicked;
@@ -62,10 +62,10 @@ enum {
   N_PROPERTIES
 };
 
-static void gtk_open_with_dialog_iface_init (GtkOpenWithIface *iface);
-G_DEFINE_TYPE_WITH_CODE (GtkOpenWithDialog, gtk_open_with_dialog, GTK_TYPE_DIALOG,
-			 G_IMPLEMENT_INTERFACE (GTK_TYPE_OPEN_WITH,
-						gtk_open_with_dialog_iface_init));
+static void gtk_app_chooser_dialog_iface_init (GtkAppChooserIface *iface);
+G_DEFINE_TYPE_WITH_CODE (GtkAppChooserDialog, gtk_app_chooser_dialog, GTK_TYPE_DIALOG,
+			 G_IMPLEMENT_INTERFACE (GTK_TYPE_APP_CHOOSER,
+						gtk_app_chooser_dialog_iface_init));
 
 static void
 show_error_dialog (const gchar *primary,
@@ -95,11 +95,11 @@ search_for_mimetype_ready_cb (GObject *source,
 			      GAsyncResult *res,
 			      gpointer user_data)
 {
-  GtkOpenWithOnline *online = GTK_OPEN_WITH_ONLINE (source);
-  GtkOpenWithDialog *self = user_data;
+  GtkAppChooserOnline *online = GTK_APP_CHOOSER_ONLINE (source);
+  GtkAppChooserDialog *self = user_data;
   GError *error = NULL;
 
-  gtk_open_with_online_search_for_mimetype_finish (online, res, &error);
+  gtk_app_chooser_online_search_for_mimetype_finish (online, res, &error);
 
   if (error != NULL)
     {
@@ -109,7 +109,7 @@ search_for_mimetype_ready_cb (GObject *source,
     }
   else
     {
-      gtk_open_with_refresh (GTK_OPEN_WITH (self->priv->open_with_widget));
+      gtk_app_chooser_refresh (GTK_APP_CHOOSER (self->priv->app_chooser_widget));
     }
 
   g_object_unref (online);
@@ -119,12 +119,12 @@ static void
 online_button_clicked_cb (GtkButton *b,
 			  gpointer user_data)
 {
-  GtkOpenWithOnline *online;
-  GtkOpenWithDialog *self = user_data;
+  GtkAppChooserOnline *online;
+  GtkAppChooserDialog *self = user_data;
 
-  online = gtk_open_with_online_get_default ();
+  online = gtk_app_chooser_online_get_default ();
 
-  gtk_open_with_online_search_for_mimetype_async (online,
+  gtk_app_chooser_online_search_for_mimetype_async (online,
 						  self->priv->content_type,
 						  GTK_WINDOW (self),
 						  search_for_mimetype_ready_cb,
@@ -137,7 +137,7 @@ online_button_clicked_cb (GtkButton *b,
  * 2) The user has permissions to run the file
  */
 static gboolean
-check_application (GtkOpenWithDialog *self,
+check_application (GtkAppChooserDialog *self,
 		   GAppInfo **app_out)
 {
   const char *command;
@@ -150,7 +150,7 @@ check_application (GtkOpenWithDialog *self,
 
   command = NULL;
 
-  info = gtk_open_with_get_app_info (GTK_OPEN_WITH (self->priv->open_with_widget));
+  info = gtk_app_chooser_get_app_info (GTK_APP_CHOOSER (self->priv->app_chooser_widget));
   command = g_app_info_get_executable (info);
 
   g_shell_parse_argv (command, &argc, &argv, &error);
@@ -191,21 +191,21 @@ check_application (GtkOpenWithDialog *self,
 }
 
 static void
-widget_application_selected_cb (GtkOpenWithWidget *widget,
+widget_application_selected_cb (GtkAppChooserWidget *widget,
 				GAppInfo *app_info,
 				gpointer user_data)
 {
-  GtkOpenWithDialog *self = user_data;
+  GtkAppChooserDialog *self = user_data;
 
   gtk_widget_set_sensitive (self->priv->button, TRUE);
 }
 
 static void
-widget_application_activated_cb (GtkOpenWithWidget *widget,
+widget_application_activated_cb (GtkAppChooserWidget *widget,
 				 GAppInfo *app_info,
 				 gpointer user_data)
 {
-  GtkOpenWithDialog *self = user_data;
+  GtkAppChooserDialog *self = user_data;
 
   gtk_dialog_response (GTK_DIALOG (self), GTK_RESPONSE_OK);
 }
@@ -224,7 +224,7 @@ get_extension (const char *basename)
 }
 
 static void
-set_dialog_properties (GtkOpenWithDialog *self)
+set_dialog_properties (GtkAppChooserDialog *self)
 {
   char *label, *name, *extension, *description, *default_text, *string;
   PangoFontDescription *font_desc;
@@ -273,7 +273,7 @@ set_dialog_properties (GtkOpenWithDialog *self)
 				  _("Click \"Show other applications\", for more options, or "
 				    "\"Find applications online\" to install a new application"));
 
-  gtk_open_with_widget_set_default_text (GTK_OPEN_WITH_WIDGET (self->priv->open_with_widget),
+  gtk_app_chooser_widget_set_default_text (GTK_APP_CHOOSER_WIDGET (self->priv->app_chooser_widget),
 					 default_text);
 
   g_free (label);
@@ -288,9 +288,9 @@ static void
 show_more_button_clicked_cb (GtkButton *button,
 			     gpointer user_data)
 {
-  GtkOpenWithDialog *self = user_data;
+  GtkAppChooserDialog *self = user_data;
 
-  g_object_set (self->priv->open_with_widget,
+  g_object_set (self->priv->app_chooser_widget,
 		"show-recommended", TRUE,
 		"show-fallback", TRUE,
 		"show-other", TRUE,
@@ -305,11 +305,11 @@ widget_notify_for_button_cb (GObject *source,
 			     GParamSpec *pspec,
 			     gpointer user_data)
 {
-  GtkOpenWithDialog *self = user_data;
-  GtkOpenWithWidget *widget = GTK_OPEN_WITH_WIDGET (source);
+  GtkAppChooserDialog *self = user_data;
+  GtkAppChooserWidget *widget = GTK_APP_CHOOSER_WIDGET (source);
   gboolean should_hide;
 
-  should_hide = gtk_open_with_widget_get_show_all (widget) ||
+  should_hide = gtk_app_chooser_widget_get_show_all (widget) ||
     self->priv->show_more_clicked;
 
   if (should_hide)
@@ -317,7 +317,7 @@ widget_notify_for_button_cb (GObject *source,
 }
 
 static void
-build_dialog_ui (GtkOpenWithDialog *self)
+build_dialog_ui (GtkAppChooserDialog *self)
 {
   GtkWidget *vbox;
   GtkWidget *vbox2;
@@ -342,16 +342,16 @@ build_dialog_ui (GtkOpenWithDialog *self)
 		      FALSE, FALSE, 0);
   gtk_widget_show (self->priv->label);
 
-  self->priv->open_with_widget =
-    gtk_open_with_widget_new (self->priv->content_type);
-  gtk_box_pack_start (GTK_BOX (vbox2), self->priv->open_with_widget, TRUE, TRUE, 0);
-  gtk_widget_show (self->priv->open_with_widget);
+  self->priv->app_chooser_widget =
+    gtk_app_chooser_widget_new (self->priv->content_type);
+  gtk_box_pack_start (GTK_BOX (vbox2), self->priv->app_chooser_widget, TRUE, TRUE, 0);
+  gtk_widget_show (self->priv->app_chooser_widget);
 
-  g_signal_connect (self->priv->open_with_widget, "application-selected",
+  g_signal_connect (self->priv->app_chooser_widget, "application-selected",
 		    G_CALLBACK (widget_application_selected_cb), self);
-  g_signal_connect (self->priv->open_with_widget, "application-activated",
+  g_signal_connect (self->priv->app_chooser_widget, "application-activated",
 		    G_CALLBACK (widget_application_activated_cb), self);
-  g_signal_connect (self->priv->open_with_widget, "notify::show-all",
+  g_signal_connect (self->priv->app_chooser_widget, "notify::show-all",
 		    G_CALLBACK (widget_notify_for_button_cb), self);
 
   button = gtk_button_new_with_label (_("Show other applications"));
@@ -359,7 +359,7 @@ build_dialog_ui (GtkOpenWithDialog *self)
   w = gtk_image_new_from_stock (GTK_STOCK_ADD,
 				GTK_ICON_SIZE_BUTTON);
   gtk_button_set_image (GTK_BUTTON (button), w);
-  gtk_box_pack_start (GTK_BOX (self->priv->open_with_widget), button, FALSE, FALSE, 6);
+  gtk_box_pack_start (GTK_BOX (self->priv->app_chooser_widget), button, FALSE, FALSE, 6);
   gtk_widget_show_all (button);
 
   g_signal_connect (button, "clicked",
@@ -402,7 +402,7 @@ build_dialog_ui (GtkOpenWithDialog *self)
 }
 
 static void
-set_gfile_and_content_type (GtkOpenWithDialog *self,
+set_gfile_and_content_type (GtkAppChooserDialog *self,
 			    GFile *file)
 {
   GFileInfo *info;
@@ -421,9 +421,9 @@ set_gfile_and_content_type (GtkOpenWithDialog *self,
 }
 
 static GAppInfo *
-gtk_open_with_dialog_get_app_info (GtkOpenWith *object)
+gtk_app_chooser_dialog_get_app_info (GtkAppChooser *object)
 {
-  GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object);
+  GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object);
   GAppInfo *app = NULL;
 
   if (!check_application (self, &app))
@@ -433,48 +433,48 @@ gtk_open_with_dialog_get_app_info (GtkOpenWith *object)
 }
 
 static void
-gtk_open_with_dialog_refresh (GtkOpenWith *object)
+gtk_app_chooser_dialog_refresh (GtkAppChooser *object)
 {
-  GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object);
+  GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object);
 
-  gtk_open_with_refresh (GTK_OPEN_WITH (self->priv->open_with_widget));
+  gtk_app_chooser_refresh (GTK_APP_CHOOSER (self->priv->app_chooser_widget));
 }
 
 static void
-gtk_open_with_dialog_constructed (GObject *object)
+gtk_app_chooser_dialog_constructed (GObject *object)
 {
-  GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object);
+  GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object);
 
   g_assert (self->priv->content_type != NULL ||
 	    self->priv->gfile != NULL);
 
-  if (G_OBJECT_CLASS (gtk_open_with_dialog_parent_class)->constructed != NULL)
-    G_OBJECT_CLASS (gtk_open_with_dialog_parent_class)->constructed (object);
+  if (G_OBJECT_CLASS (gtk_app_chooser_dialog_parent_class)->constructed != NULL)
+    G_OBJECT_CLASS (gtk_app_chooser_dialog_parent_class)->constructed (object);
 
   build_dialog_ui (self);
   set_dialog_properties (self);
 }
 
 static void
-gtk_open_with_dialog_finalize (GObject *object)
+gtk_app_chooser_dialog_finalize (GObject *object)
 {
-  GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object);
+  GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object);
 
   if (self->priv->gfile)
     g_object_unref (self->priv->gfile);
 
   g_free (self->priv->content_type);
 
-  G_OBJECT_CLASS (gtk_open_with_dialog_parent_class)->finalize (object);
+  G_OBJECT_CLASS (gtk_app_chooser_dialog_parent_class)->finalize (object);
 }
 
 static void
-gtk_open_with_dialog_set_property (GObject *object,
+gtk_app_chooser_dialog_set_property (GObject *object,
 				   guint property_id,
 				   const GValue *value,
 				   GParamSpec *pspec)
 {
-  GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object);
+  GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object);
 
   switch (property_id)
     {
@@ -493,12 +493,12 @@ gtk_open_with_dialog_set_property (GObject *object,
 }
 
 static void
-gtk_open_with_dialog_get_property (GObject *object,
+gtk_app_chooser_dialog_get_property (GObject *object,
 				   guint property_id,
 				   GValue *value,
 				   GParamSpec *pspec)
 {
-  GtkOpenWithDialog *self = GTK_OPEN_WITH_DIALOG (object);
+  GtkAppChooserDialog *self = GTK_APP_CHOOSER_DIALOG (object);
 
   switch (property_id)
     {
@@ -516,23 +516,23 @@ gtk_open_with_dialog_get_property (GObject *object,
 }
 
 static void
-gtk_open_with_dialog_iface_init (GtkOpenWithIface *iface)
+gtk_app_chooser_dialog_iface_init (GtkAppChooserIface *iface)
 {
-  iface->get_app_info = gtk_open_with_dialog_get_app_info;
-  iface->refresh = gtk_open_with_dialog_refresh;
+  iface->get_app_info = gtk_app_chooser_dialog_get_app_info;
+  iface->refresh = gtk_app_chooser_dialog_refresh;
 }
 
 static void
-gtk_open_with_dialog_class_init (GtkOpenWithDialogClass *klass)
+gtk_app_chooser_dialog_class_init (GtkAppChooserDialogClass *klass)
 {
   GObjectClass *gobject_class;
   GParamSpec *pspec;
 
   gobject_class = G_OBJECT_CLASS (klass);
-  gobject_class->finalize = gtk_open_with_dialog_finalize;
-  gobject_class->set_property = gtk_open_with_dialog_set_property;
-  gobject_class->get_property = gtk_open_with_dialog_get_property;
-  gobject_class->constructed = gtk_open_with_dialog_constructed;
+  gobject_class->finalize = gtk_app_chooser_dialog_finalize;
+  gobject_class->set_property = gtk_app_chooser_dialog_set_property;
+  gobject_class->get_property = gtk_app_chooser_dialog_get_property;
+  gobject_class->constructed = gtk_app_chooser_dialog_constructed;
 
   g_object_class_override_property (gobject_class, PROP_CONTENT_TYPE, "content-type");
 
@@ -544,14 +544,14 @@ gtk_open_with_dialog_class_init (GtkOpenWithDialogClass *klass)
 			       G_PARAM_STATIC_STRINGS);
   g_object_class_install_property (gobject_class, PROP_GFILE, pspec);
 
-  g_type_class_add_private (klass, sizeof (GtkOpenWithDialogPrivate));
+  g_type_class_add_private (klass, sizeof (GtkAppChooserDialogPrivate));
 }
 
 static void
-gtk_open_with_dialog_init (GtkOpenWithDialog *self)
+gtk_app_chooser_dialog_init (GtkAppChooserDialog *self)
 {
-  self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_OPEN_WITH_DIALOG,
-					    GtkOpenWithDialogPrivate);
+  self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_APP_CHOOSER_DIALOG,
+					    GtkAppChooserDialogPrivate);
 }
 
 static void
@@ -571,20 +571,20 @@ set_parent_and_flags (GtkWidget *dialog,
 }
 
 /**
- * gtk_open_with_dialog_new:
+ * gtk_app_chooser_dialog_new:
  * @parent: (allow-none): a #GtkWindow, or %NULL
  * @flags: flags for this dialog
  * @file: a #GFile
  *
- * Creates a new #GtkOpenWithDialog for the provided #GFile, to allow
+ * Creates a new #GtkAppChooserDialog for the provided #GFile, to allow
  * the user to select an application for it.
  *
- * Returns: a newly created #GtkOpenWithDialog
+ * Returns: a newly created #GtkAppChooserDialog
  *
  * Since: 3.0
  **/
 GtkWidget *
-gtk_open_with_dialog_new (GtkWindow *parent,
+gtk_app_chooser_dialog_new (GtkWindow *parent,
 			  GtkDialogFlags flags,
 			  GFile *file)
 {
@@ -592,7 +592,7 @@ gtk_open_with_dialog_new (GtkWindow *parent,
 
   g_return_val_if_fail (G_IS_FILE (file), NULL);
 
-  retval = g_object_new (GTK_TYPE_OPEN_WITH_DIALOG,
+  retval = g_object_new (GTK_TYPE_APP_CHOOSER_DIALOG,
 			 "gfile", file,
 			 NULL);
 
@@ -602,20 +602,20 @@ gtk_open_with_dialog_new (GtkWindow *parent,
 }
 
 /**
- * gtk_open_with_dialog_new_for_content_type:
+ * gtk_app_chooser_dialog_new_for_content_type:
  * @parent: (allow-none): a #GtkWindow, or %NULL
  * @flags: flags for this dialog
  * @content_type: a content type string
  *
- * Creates a new #GtkOpenWithDialog for the provided content type, to allow
+ * Creates a new #GtkAppChooserDialog for the provided content type, to allow
  * the user to select an application for it.
  *
- * Returns: a newly created #GtkOpenWithDialog
+ * Returns: a newly created #GtkAppChooserDialog
  *
  * Since: 3.0
  **/
 GtkWidget *
-gtk_open_with_dialog_new_for_content_type (GtkWindow *parent,
+gtk_app_chooser_dialog_new_for_content_type (GtkWindow *parent,
 					   GtkDialogFlags flags,
 					   const gchar *content_type)
 {
@@ -623,7 +623,7 @@ gtk_open_with_dialog_new_for_content_type (GtkWindow *parent,
 
   g_return_val_if_fail (content_type != NULL, NULL);
 
-  retval = g_object_new (GTK_TYPE_OPEN_WITH_DIALOG,
+  retval = g_object_new (GTK_TYPE_APP_CHOOSER_DIALOG,
 			 "content-type", content_type,
 			 NULL);
 
@@ -633,9 +633,9 @@ gtk_open_with_dialog_new_for_content_type (GtkWindow *parent,
 }
 
 GtkWidget *
-gtk_open_with_dialog_get_widget (GtkOpenWithDialog *self)
+gtk_app_chooser_dialog_get_widget (GtkAppChooserDialog *self)
 {
-  g_return_val_if_fail (GTK_IS_OPEN_WITH_DIALOG (self), NULL);
+  g_return_val_if_fail (GTK_IS_APP_CHOOSER_DIALOG (self), NULL);
 
-  return self->priv->open_with_widget;
+  return self->priv->app_chooser_widget;
 }
diff --git a/gtk/gtkopenwithdialog.h b/gtk/gtkappchooserdialog.h
similarity index 50%
rename from gtk/gtkopenwithdialog.h
rename to gtk/gtkappchooserdialog.h
index 8367184..ab2dd02 100644
--- a/gtk/gtkopenwithdialog.h
+++ b/gtk/gtkappchooserdialog.h
@@ -1,5 +1,5 @@
 /*
- * gtkopenwithdialog.h: an open-with dialog
+ * gtkappchooserdialog.h: an app-chooser dialog
  *
  * Copyright (C) 2004 Novell, Inc.
  * Copyright (C) 2007, 2010 Red Hat, Inc.
@@ -28,52 +28,52 @@
 #error "Only <gtk/gtk.h> can be included directly."
 #endif
 
-#ifndef __GTK_OPEN_WITH_DIALOG_H__
-#define __GTK_OPEN_WITH_DIALOG_H__
+#ifndef __GTK_APP_CHOOSER_DIALOG_H__
+#define __GTK_APP_CHOOSER_DIALOG_H__
 
 #include <gtk/gtkdialog.h>
 #include <gio/gio.h>
 
-#define GTK_TYPE_OPEN_WITH_DIALOG\
-  (gtk_open_with_dialog_get_type ())
-#define GTK_OPEN_WITH_DIALOG(obj)\
-  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_OPEN_WITH_DIALOG, GtkOpenWithDialog))
-#define GTK_OPEN_WITH_DIALOG_CLASS(klass)\
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_OPEN_WITH_DIALOG, GtkOpenWithDialogClass))
-#define GTK_IS_OPEN_WITH_DIALOG(obj)\
-  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_OPEN_WITH_DIALOG))
-#define GTK_IS_OPEN_WITH_DIALOG_CLASS(klass)\
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_OPEN_WITH_DIALOG))
-#define GTK_OPEN_WITH_DIALOG_GET_CLASS(obj)\
-  (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_OPEN_WITH_DIALOG, GtkOpenWithDialogClass))
+#define GTK_TYPE_APP_CHOOSER_DIALOG\
+  (gtk_app_chooser_dialog_get_type ())
+#define GTK_APP_CHOOSER_DIALOG(obj)\
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER_DIALOG, GtkAppChooserDialog))
+#define GTK_APP_CHOOSER_DIALOG_CLASS(klass)\
+  (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_APP_CHOOSER_DIALOG, GtkAppChooserDialogClass))
+#define GTK_IS_APP_CHOOSER_DIALOG(obj)\
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER_DIALOG))
+#define GTK_IS_APP_CHOOSER_DIALOG_CLASS(klass)\
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_APP_CHOOSER_DIALOG))
+#define GTK_APP_CHOOSER_DIALOG_GET_CLASS(obj)\
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_APP_CHOOSER_DIALOG, GtkAppChooserDialogClass))
 
-typedef struct _GtkOpenWithDialog        GtkOpenWithDialog;
-typedef struct _GtkOpenWithDialogClass   GtkOpenWithDialogClass;
-typedef struct _GtkOpenWithDialogPrivate GtkOpenWithDialogPrivate;
+typedef struct _GtkAppChooserDialog        GtkAppChooserDialog;
+typedef struct _GtkAppChooserDialogClass   GtkAppChooserDialogClass;
+typedef struct _GtkAppChooserDialogPrivate GtkAppChooserDialogPrivate;
 
-struct _GtkOpenWithDialog {
+struct _GtkAppChooserDialog {
   GtkDialog parent;
 
   /*< private >*/
-  GtkOpenWithDialogPrivate *priv;
+  GtkAppChooserDialogPrivate *priv;
 };
 
-struct _GtkOpenWithDialogClass {
+struct _GtkAppChooserDialogClass {
   GtkDialogClass parent_class;
 
   /* padding for future class expansion */
   gpointer padding[16];
 };
 
-GType      gtk_open_with_dialog_get_type (void) G_GNUC_CONST;
+GType      gtk_app_chooser_dialog_get_type (void) G_GNUC_CONST;
 
-GtkWidget * gtk_open_with_dialog_new (GtkWindow *parent,
+GtkWidget * gtk_app_chooser_dialog_new (GtkWindow *parent,
 				      GtkDialogFlags flags,
 				      GFile *file);
-GtkWidget * gtk_open_with_dialog_new_for_content_type (GtkWindow *parent,
+GtkWidget * gtk_app_chooser_dialog_new_for_content_type (GtkWindow *parent,
 						       GtkDialogFlags flags,
 						       const gchar *content_type);
 
-GtkWidget * gtk_open_with_dialog_get_widget (GtkOpenWithDialog *self);
+GtkWidget * gtk_app_chooser_dialog_get_widget (GtkAppChooserDialog *self);
 
-#endif /* __GTK_OPEN_WITH_DIALOG_H__ */
+#endif /* __GTK_APP_CHOOSER_DIALOG_H__ */
diff --git a/gtk/gtkopenwithmodule.c b/gtk/gtkappchoosermodule.c
similarity index 71%
rename from gtk/gtkopenwithmodule.c
rename to gtk/gtkappchoosermodule.c
index bc59765..096e393 100644
--- a/gtk/gtkopenwithmodule.c
+++ b/gtk/gtkappchoosermodule.c
@@ -1,5 +1,5 @@
 /*
- * gtkopenwithmodule.c: an extension point for online integration
+ * gtkappchoosermodule.c: an extension point for online integration
  *
  * Copyright (C) 2010 Red Hat, Inc.
  *
@@ -23,21 +23,21 @@
 
 #include <config.h>
 
-#include "gtkopenwithmodule.h"
+#include "gtkappchoosermodule.h"
 
 #include <gio/gio.h>
 
-#include "gtkopenwithonline.h"
-#include "gtkopenwithonlinedummy.h"
+#include "gtkappchooseronline.h"
+#include "gtkappchooseronlinedummy.h"
 
 #ifdef ENABLE_PACKAGEKIT
-#include "gtkopenwithonlinepk.h"
+#include "gtkappchooseronlinepk.h"
 #endif
 
 G_LOCK_DEFINE_STATIC (registered_ep);
 
 void
-_gtk_open_with_module_ensure (void)
+_gtk_app_chooser_module_ensure (void)
 {
   static gboolean registered_ep = FALSE;
   GIOExtensionPoint *ep;
@@ -48,13 +48,13 @@ _gtk_open_with_module_ensure (void)
   {
     registered_ep = TRUE;
 
-    ep = g_io_extension_point_register ("gtkopenwith-online");
-    g_io_extension_point_set_required_type (ep, GTK_TYPE_OPEN_WITH_ONLINE);
+    ep = g_io_extension_point_register ("gtkappchooser-online");
+    g_io_extension_point_set_required_type (ep, GTK_TYPE_APP_CHOOSER_ONLINE);
 
-    _gtk_open_with_online_dummy_get_type ();
+    _gtk_app_chooser_online_dummy_get_type ();
 
 #ifdef ENABLE_PACKAGEKIT
-    _gtk_open_with_online_pk_get_type ();
+    _gtk_app_chooser_online_pk_get_type ();
 #endif
   }
 
diff --git a/gtk/gtkopenwithmodule.h b/gtk/gtkappchoosermodule.h
similarity index 80%
rename from gtk/gtkopenwithmodule.h
rename to gtk/gtkappchoosermodule.h
index b08cde3..cb66c95 100644
--- a/gtk/gtkopenwithmodule.h
+++ b/gtk/gtkappchoosermodule.h
@@ -1,5 +1,5 @@
 /*
- * gtkopenwithmodule.h: an extension point for PackageKit integration
+ * gtkappchoosermodule.h: an extension point for online integration
  *
  * Copyright (C) 2010 Red Hat, Inc.
  *
@@ -21,15 +21,15 @@
  * Authors: Cosimo Cecchi <ccecchi redhat com>
  */
 
-#ifndef __GTK_OPEN_WITH_MODULE_H__
-#define __GTK_OPEN_WITH_MODULE_H__
+#ifndef __GTK_APP_CHOOSER_MODULE_H__
+#define __GTK_APP_CHOOSER_MODULE_H__
 
 #include <glib.h>
 
 G_BEGIN_DECLS
 
-void _gtk_open_with_module_ensure (void);
+void _gtk_app_chooser_module_ensure (void);
 
 G_END_DECLS
 
-#endif /* __GTK_OPEN_WITH_MODULE_H__ */
+#endif /* __GTK_APP_CHOOSER_MODULE_H__ */
diff --git a/gtk/gtkopenwithonline.c b/gtk/gtkappchooseronline.c
similarity index 61%
rename from gtk/gtkopenwithonline.c
rename to gtk/gtkappchooseronline.c
index 1a07866..98d4027 100644
--- a/gtk/gtkopenwithonline.c
+++ b/gtk/gtkappchooseronline.c
@@ -1,5 +1,5 @@
 /*
- * gtkopenwithonline.h: an extension point for online integration
+ * gtkappchooseronline.h: an extension point for online integration
  *
  * Copyright (C) 2010 Red Hat, Inc.
  *
@@ -23,32 +23,32 @@
 
 #include <config.h>
 
-#include "gtkopenwithonline.h"
+#include "gtkappchooseronline.h"
 
-#include "gtkopenwithonlinedummy.h"
-#include "gtkopenwithmodule.h"
+#include "gtkappchooseronlinedummy.h"
+#include "gtkappchoosermodule.h"
 
 #include <gio/gio.h>
 
-G_DEFINE_INTERFACE (GtkOpenWithOnline, gtk_open_with_online, G_TYPE_OBJECT);
+G_DEFINE_INTERFACE (GtkAppChooserOnline, gtk_app_chooser_online, G_TYPE_OBJECT);
 
 static void
-gtk_open_with_online_default_init (GtkOpenWithOnlineInterface *iface)
+gtk_app_chooser_online_default_init (GtkAppChooserOnlineInterface *iface)
 {
   /* do nothing */
 }
 
-GtkOpenWithOnline *
-gtk_open_with_online_get_default (void)
+GtkAppChooserOnline *
+gtk_app_chooser_online_get_default (void)
 {
   GIOExtensionPoint *ep;
   GIOExtension *extension;
   GList *extensions;
-  GtkOpenWithOnline *retval;
+  GtkAppChooserOnline *retval;
 
-  _gtk_open_with_module_ensure ();
+  _gtk_app_chooser_module_ensure ();
 
-  ep = g_io_extension_point_lookup ("gtkopenwith-online");
+  ep = g_io_extension_point_lookup ("gtkappchooser-online");
   extensions = g_io_extension_point_get_extensions (ep);
 
   if (extensions != NULL)
@@ -60,7 +60,7 @@ gtk_open_with_online_get_default (void)
     }
   else
     {
-      retval = g_object_new (GTK_TYPE_OPEN_WITH_ONLINE_DUMMY,
+      retval = g_object_new (GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY,
 			     NULL);
     }
 
@@ -68,31 +68,31 @@ gtk_open_with_online_get_default (void)
 }
 
 void
-gtk_open_with_online_search_for_mimetype_async (GtkOpenWithOnline *self,
+gtk_app_chooser_online_search_for_mimetype_async (GtkAppChooserOnline *self,
 						const gchar *content_type,
 						GtkWindow *parent,
 						GAsyncReadyCallback callback,
 						gpointer user_data)
 {
-  GtkOpenWithOnlineInterface *iface;
+  GtkAppChooserOnlineInterface *iface;
 
-  g_return_if_fail (GTK_IS_OPEN_WITH_ONLINE (self));
+  g_return_if_fail (GTK_IS_APP_CHOOSER_ONLINE (self));
 
-  iface = GTK_OPEN_WITH_ONLINE_GET_IFACE (self);
+  iface = GTK_APP_CHOOSER_ONLINE_GET_IFACE (self);
 
   (* iface->search_for_mimetype_async) (self, content_type, parent, callback, user_data);
 }
 
 gboolean
-gtk_open_with_online_search_for_mimetype_finish (GtkOpenWithOnline *self,
+gtk_app_chooser_online_search_for_mimetype_finish (GtkAppChooserOnline *self,
 						 GAsyncResult *res,
 						 GError **error)
 {
-  GtkOpenWithOnlineInterface *iface;
+  GtkAppChooserOnlineInterface *iface;
 
-  g_return_val_if_fail (GTK_IS_OPEN_WITH_ONLINE (self), FALSE);
+  g_return_val_if_fail (GTK_IS_APP_CHOOSER_ONLINE (self), FALSE);
 
-  iface = GTK_OPEN_WITH_ONLINE_GET_IFACE (self);
+  iface = GTK_APP_CHOOSER_ONLINE_GET_IFACE (self);
 
   return ((* iface->search_for_mimetype_finish) (self, res, error));
 }
diff --git a/gtk/gtkopenwithonline.h b/gtk/gtkappchooseronline.h
similarity index 53%
rename from gtk/gtkopenwithonline.h
rename to gtk/gtkappchooseronline.h
index 7cf97e2..3ee0deb 100644
--- a/gtk/gtkopenwithonline.h
+++ b/gtk/gtkappchooseronline.h
@@ -1,5 +1,5 @@
 /*
- * gtkopenwithonline.h: an extension point for online integration
+ * gtkappchooseronline.h: an extension point for online integration
  *
  * Copyright (C) 2010 Red Hat, Inc.
  *
@@ -21,8 +21,8 @@
  * Authors: Cosimo Cecchi <ccecchi redhat com>
  */
 
-#ifndef __GTK_OPEN_WITH_ONLINE_H__
-#define __GTK_OPEN_WITH_ONLINE_H__
+#ifndef __GTK_APP_CHOOSER_ONLINE_H__
+#define __GTK_APP_CHOOSER_ONLINE_H__
 
 #include <glib.h>
 
@@ -31,43 +31,43 @@
 
 G_BEGIN_DECLS
 
-#define GTK_TYPE_OPEN_WITH_ONLINE\
-  (gtk_open_with_online_get_type ())
-#define GTK_OPEN_WITH_ONLINE(o)\
-  (G_TYPE_CHECK_INSTANCE_CAST ((o), GTK_TYPE_OPEN_WITH_ONLINE, GtkOpenWithOnline))
-#define GTK_IS_OPEN_WITH_ONLINE(o)\
-  (G_TYPE_CHECK_INSTANCE_TYPE ((o), GTK_TYPE_OPEN_WITH_ONLINE))
-#define GTK_OPEN_WITH_ONLINE_GET_IFACE(obj)\
-  (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GTK_TYPE_OPEN_WITH_ONLINE, GtkOpenWithOnlineInterface))
+#define GTK_TYPE_APP_CHOOSER_ONLINE\
+  (gtk_app_chooser_online_get_type ())
+#define GTK_APP_CHOOSER_ONLINE(o)\
+  (G_TYPE_CHECK_INSTANCE_CAST ((o), GTK_TYPE_APP_CHOOSER_ONLINE, GtkAppChooserOnline))
+#define GTK_IS_APP_CHOOSER_ONLINE(o)\
+  (G_TYPE_CHECK_INSTANCE_TYPE ((o), GTK_TYPE_APP_CHOOSER_ONLINE))
+#define GTK_APP_CHOOSER_ONLINE_GET_IFACE(obj)\
+  (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GTK_TYPE_APP_CHOOSER_ONLINE, GtkAppChooserOnlineInterface))
 
-typedef struct _GtkOpenWithOnline GtkOpenWithOnline;
-typedef struct _GtkOpenWithOnlineInterface GtkOpenWithOnlineInterface;
+typedef struct _GtkAppChooserOnline GtkAppChooserOnline;
+typedef struct _GtkAppChooserOnlineInterface GtkAppChooserOnlineInterface;
 
-struct _GtkOpenWithOnlineInterface {
+struct _GtkAppChooserOnlineInterface {
   GTypeInterface g_iface;
 
   /* Methods */
-  void (*search_for_mimetype_async) (GtkOpenWithOnline *self,
+  void (*search_for_mimetype_async) (GtkAppChooserOnline *self,
 				     const gchar *content_type,
 				     GtkWindow *parent,
 				     GAsyncReadyCallback callback,
 				     gpointer user_data);
 
-  gboolean (*search_for_mimetype_finish) (GtkOpenWithOnline *self,
+  gboolean (*search_for_mimetype_finish) (GtkAppChooserOnline *self,
 					  GAsyncResult *res,
 					  GError **error);
 };
 
-GType gtk_open_with_online_get_type (void) G_GNUC_CONST;
-void  gtk_open_with_online_search_for_mimetype_async (GtkOpenWithOnline *self,
+GType gtk_app_chooser_online_get_type (void) G_GNUC_CONST;
+void  gtk_app_chooser_online_search_for_mimetype_async (GtkAppChooserOnline *self,
 						      const gchar *content_type,
 						      GtkWindow *parent,
 						      GAsyncReadyCallback callback,
 						      gpointer user_data);
-gboolean gtk_open_with_online_search_for_mimetype_finish (GtkOpenWithOnline *self,
+gboolean gtk_app_chooser_online_search_for_mimetype_finish (GtkAppChooserOnline *self,
 							  GAsyncResult *res,
 							  GError **error);
 
-GtkOpenWithOnline * gtk_open_with_online_get_default (void);
+GtkAppChooserOnline * gtk_app_chooser_online_get_default (void);
 
-#endif /* __GTK_OPEN_WITH_ONLINE_H__ */
+#endif /* __GTK_APP_CHOOSER_ONLINE_H__ */
diff --git a/gtk/gtkopenwithonlinedummy.c b/gtk/gtkappchooseronlinedummy.c
similarity index 66%
rename from gtk/gtkopenwithonlinedummy.c
rename to gtk/gtkappchooseronlinedummy.c
index 14d68f4..4ea5675 100644
--- a/gtk/gtkopenwithonlinedummy.c
+++ b/gtk/gtkappchooseronlinedummy.c
@@ -1,5 +1,5 @@
 /*
- * gtkopenwithonlinedummy.c: an extension point for online integration
+ * gtkappchooseronlinedummy.c: an extension point for online integration
  *
  * Copyright (C) 2010 Red Hat, Inc.
  *
@@ -23,38 +23,38 @@
 
 #include <config.h>
 
-#include "gtkopenwithonlinedummy.h"
+#include "gtkappchooseronlinedummy.h"
 
 #include "gtkintl.h"
-#include "gtkopenwithonline.h"
+#include "gtkappchooseronline.h"
 
 #include <gio/gio.h>
 
-#define gtk_open_with_online_dummy_get_type _gtk_open_with_online_dummy_get_type
-static void open_with_online_iface_init (GtkOpenWithOnlineInterface *iface);
+#define gtk_app_chooser_online_dummy_get_type _gtk_app_chooser_online_dummy_get_type
+static void app_chooser_online_iface_init (GtkAppChooserOnlineInterface *iface);
 
-G_DEFINE_TYPE_WITH_CODE (GtkOpenWithOnlineDummy, gtk_open_with_online_dummy,
+G_DEFINE_TYPE_WITH_CODE (GtkAppChooserOnlineDummy, gtk_app_chooser_online_dummy,
 			 G_TYPE_OBJECT,
-			 G_IMPLEMENT_INTERFACE (GTK_TYPE_OPEN_WITH_ONLINE,
-						open_with_online_iface_init)
-			 g_io_extension_point_implement ("gtkopenwith-online",
+			 G_IMPLEMENT_INTERFACE (GTK_TYPE_APP_CHOOSER_ONLINE,
+						app_chooser_online_iface_init)
+			 g_io_extension_point_implement ("gtkappchooser-online",
 							 g_define_type_id,
 							 "dummy", 0));
 
 static void
-gtk_open_with_online_dummy_class_init (GtkOpenWithOnlineDummyClass *klass)
+gtk_app_chooser_online_dummy_class_init (GtkAppChooserOnlineDummyClass *klass)
 {
   /* do nothing */
 }
 
 static void
-gtk_open_with_online_dummy_init (GtkOpenWithOnlineDummy *self)
+gtk_app_chooser_online_dummy_init (GtkAppChooserOnlineDummy *self)
 {
   /* do nothing */
 }
 
 static gboolean
-dummy_search_mime_finish (GtkOpenWithOnline *obj,
+dummy_search_mime_finish (GtkAppChooserOnline *obj,
 			  GAsyncResult *res,
 			  GError **error)
 {
@@ -64,7 +64,7 @@ dummy_search_mime_finish (GtkOpenWithOnline *obj,
 }
 
 static void
-dummy_search_mime_async (GtkOpenWithOnline *obj,
+dummy_search_mime_async (GtkAppChooserOnline *obj,
 			 const gchar *content_type,
 			 GtkWindow *parent,
 			 GAsyncReadyCallback callback,
@@ -79,7 +79,7 @@ dummy_search_mime_async (GtkOpenWithOnline *obj,
 }
 
 static void
-open_with_online_iface_init (GtkOpenWithOnlineInterface *iface)
+app_chooser_online_iface_init (GtkAppChooserOnlineInterface *iface)
 {
   iface->search_for_mimetype_async = dummy_search_mime_async;
   iface->search_for_mimetype_finish = dummy_search_mime_finish;
diff --git a/gtk/gtkappchooseronlinedummy.h b/gtk/gtkappchooseronlinedummy.h
new file mode 100644
index 0000000..794fe4f
--- /dev/null
+++ b/gtk/gtkappchooseronlinedummy.h
@@ -0,0 +1,59 @@
+/*
+ * gtkappchooseronlinedummy.h: an extension point for online integration
+ *
+ * Copyright (C) 2010 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the Gnome Library; see the file COPYING.LIB.  If not,
+ * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ * Authors: Cosimo Cecchi <ccecchi redhat com>
+ */
+
+#ifndef __GTK_APP_CHOOSER_ONLINE_DUMMY_H__
+#define __GTK_APP_CHOOSER_ONLINE_DUMMY_H__
+
+#include <gtk/gtkappchooseronline.h>
+#include <glib.h>
+
+#define GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY\
+  (_gtk_app_chooser_online_dummy_get_type ())
+#define GTK_APP_CHOOSER_ONLINE_DUMMY(obj)\
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY, GtkAppChooserOnlineDummy))
+#define GTK_APP_CHOOSER_ONLINE_DUMMY_CLASS(klass)\
+  (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY, GtkAppChooserOnlineDummyClass))
+#define GTK_IS_APP_CHOOSER_ONLINE_DUMMY(obj)\
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY))
+#define GTK_IS_APP_CHOOSER_ONLINE_DUMMY_CLASS(klass)\
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY))
+#define GTK_APP_CHOOSER_ONLINE_DUMMY_GET_CLASS(obj)\
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_DUMMY, GtkAppChooserOnlineDummyClass))
+
+typedef struct _GtkAppChooserOnlineDummy        GtkAppChooserOnlineDummy;
+typedef struct _GtkAppChooserOnlineDummyClass   GtkAppChooserOnlineDummyClass;
+typedef struct _GtkAppChooserOnlineDummyPrivate GtkAppChooserOnlineDummyPrivate;
+
+struct _GtkAppChooserOnlineDummy {
+  GObject parent;
+};
+
+struct _GtkAppChooserOnlineDummyClass {
+  GObjectClass parent_class;
+
+  GtkAppChooserOnlineDummy *priv;
+};
+
+GType _gtk_app_chooser_online_dummy_get_type (void);
+
+#endif /* __GTK_APP_CHOOSER_ONLINE_DUMMY_H__ */
diff --git a/gtk/gtkopenwithonlinepk.c b/gtk/gtkappchooseronlinepk.c
similarity index 72%
rename from gtk/gtkopenwithonlinepk.c
rename to gtk/gtkappchooseronlinepk.c
index e32015d..f14d4d3 100644
--- a/gtk/gtkopenwithonlinepk.c
+++ b/gtk/gtkappchooseronlinepk.c
@@ -1,5 +1,5 @@
 /*
- * gtkopenwithonlinepk.c: packagekit module for open with
+ * gtkappchooseronlinepk.c: packagekit module for app-chooser
  *
  * Copyright (C) 2010 Red Hat, Inc.
  *
@@ -23,60 +23,60 @@
 
 #include <config.h>
 
-#include "gtkopenwithonlinepk.h"
+#include "gtkappchooseronlinepk.h"
 
-#include "gtkopenwithonline.h"
+#include "gtkappchooseronline.h"
 #include "x11/gdkx.h"
 
 #include <gio/gio.h>
 
-#define gtk_open_with_online_pk_get_type _gtk_open_with_online_pk_get_type
-static void open_with_online_iface_init (GtkOpenWithOnlineInterface *iface);
+#define gtk_app_chooser_online_pk_get_type _gtk_app_chooser_online_pk_get_type
+static void app_chooser_online_iface_init (GtkAppChooserOnlineInterface *iface);
 
-G_DEFINE_TYPE_WITH_CODE (GtkOpenWithOnlinePk, gtk_open_with_online_pk,
+G_DEFINE_TYPE_WITH_CODE (GtkAppChooserOnlinePk, gtk_app_chooser_online_pk,
 			 G_TYPE_OBJECT,
-			 G_IMPLEMENT_INTERFACE (GTK_TYPE_OPEN_WITH_ONLINE,
-						open_with_online_iface_init)
-			 g_io_extension_point_implement ("gtkopenwith-online",
+			 G_IMPLEMENT_INTERFACE (GTK_TYPE_APP_CHOOSER_ONLINE,
+						app_chooser_online_iface_init)
+			 g_io_extension_point_implement ("gtkappchooser-online",
 							 g_define_type_id,
 							 "packagekit", 10));
 
-struct _GtkOpenWithOnlinePkPrivate {
+struct _GtkAppChooserOnlinePkPrivate {
   GSimpleAsyncResult *result;
   GtkWindow *parent;
   gchar *content_type;
 };
 
 static void
-gtk_open_with_online_pk_finalize (GObject *obj)
+gtk_app_chooser_online_pk_finalize (GObject *obj)
 {
-  GtkOpenWithOnlinePk *self = GTK_OPEN_WITH_ONLINE_PK (obj);
+  GtkAppChooserOnlinePk *self = GTK_APP_CHOOSER_ONLINE_PK (obj);
 
   g_free (self->priv->content_type);
   g_clear_object (&self->priv->result);
 
-  G_OBJECT_CLASS (gtk_open_with_online_pk_parent_class)->finalize (obj);
+  G_OBJECT_CLASS (gtk_app_chooser_online_pk_parent_class)->finalize (obj);
 }
 
 static void
-gtk_open_with_online_pk_class_init (GtkOpenWithOnlinePkClass *klass)
+gtk_app_chooser_online_pk_class_init (GtkAppChooserOnlinePkClass *klass)
 {
   GObjectClass *oclass = G_OBJECT_CLASS (klass);
 
-  oclass->finalize = gtk_open_with_online_pk_finalize;
+  oclass->finalize = gtk_app_chooser_online_pk_finalize;
 
-  g_type_class_add_private (klass, sizeof (GtkOpenWithOnlinePkPrivate));
+  g_type_class_add_private (klass, sizeof (GtkAppChooserOnlinePkPrivate));
 }
 
 static void
-gtk_open_with_online_pk_init (GtkOpenWithOnlinePk *self)
+gtk_app_chooser_online_pk_init (GtkAppChooserOnlinePk *self)
 {
-  self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_OPEN_WITH_ONLINE_PK,
-					    GtkOpenWithOnlinePkPrivate);
+  self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_APP_CHOOSER_ONLINE_PK,
+					    GtkAppChooserOnlinePkPrivate);
 }
 
 static gboolean
-pk_search_mime_finish (GtkOpenWithOnline *obj,
+pk_search_mime_finish (GtkAppChooserOnline *obj,
 		       GAsyncResult *res,
 		       GError **error)
 {
@@ -90,7 +90,7 @@ install_mime_types_ready_cb (GObject *source,
 			     GAsyncResult *res,
 			     gpointer user_data)
 {
-  GtkOpenWithOnlinePk *self = user_data;
+  GtkAppChooserOnlinePk *self = user_data;
   GDBusProxy *proxy = G_DBUS_PROXY (source);
   GError *error = NULL;
   GVariant *variant;
@@ -116,7 +116,7 @@ pk_proxy_appeared_cb (GObject *source,
 		      GAsyncResult *res,
 		      gpointer user_data)
 {
-  GtkOpenWithOnlinePk *self = user_data;
+  GtkAppChooserOnlinePk *self = user_data;
   GDBusProxy *proxy;
   GError *error = NULL;
   guint xid = 0;
@@ -154,17 +154,17 @@ pk_proxy_appeared_cb (GObject *source,
 }
 
 static void
-pk_search_mime_async (GtkOpenWithOnline *obj,
+pk_search_mime_async (GtkAppChooserOnline *obj,
 		      const gchar *content_type,
 		      GtkWindow *parent,
 		      GAsyncReadyCallback callback,
 		      gpointer user_data)
 {
-  GtkOpenWithOnlinePk *self = GTK_OPEN_WITH_ONLINE_PK (obj);
+  GtkAppChooserOnlinePk *self = GTK_APP_CHOOSER_ONLINE_PK (obj);
 
   self->priv->result = g_simple_async_result_new (G_OBJECT (self),
 						  callback, user_data,
-						  gtk_open_with_online_search_for_mimetype_async);
+						  gtk_app_chooser_online_search_for_mimetype_async);
   self->priv->parent = parent;
   self->priv->content_type = g_strdup (content_type);
 
@@ -180,7 +180,7 @@ pk_search_mime_async (GtkOpenWithOnline *obj,
 }
 
 static void
-open_with_online_iface_init (GtkOpenWithOnlineInterface *iface)
+app_chooser_online_iface_init (GtkAppChooserOnlineInterface *iface)
 {
   iface->search_for_mimetype_async = pk_search_mime_async;
   iface->search_for_mimetype_finish = pk_search_mime_finish;
diff --git a/gtk/gtkappchooseronlinepk.h b/gtk/gtkappchooseronlinepk.h
new file mode 100644
index 0000000..be5ec6e
--- /dev/null
+++ b/gtk/gtkappchooseronlinepk.h
@@ -0,0 +1,59 @@
+/*
+ * gtkappchooseronlinepk.h: an extension point for online integration
+ *
+ * Copyright (C) 2010 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the Gnome Library; see the file COPYING.LIB.  If not,
+ * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ * Authors: Cosimo Cecchi <ccecchi redhat com>
+ */
+
+#ifndef __GTK_APP_CHOOSER_ONLINE_PK_H__
+#define __GTK_APP_CHOOSER_ONLINE_PK_H__
+
+#include <gtk/gtkappchooseronline.h>
+#include <glib.h>
+
+#define GTK_TYPE_APP_CHOOSER_ONLINE_PK\
+  (_gtk_app_chooser_online_pk_get_type ())
+#define GTK_APP_CHOOSER_ONLINE_PK(obj)\
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_PK, GtkAppChooserOnlinePk))
+#define GTK_APP_CHOOSER_ONLINE_PK_CLASS(klass)\
+  (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_APP_CHOOSER_ONLINE_PK, GtkAppChooserOnlinePkClass))
+#define GTK_IS_APP_CHOOSER_ONLINE_PK(obj)\
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_PK))
+#define GTK_IS_APP_CHOOSER_ONLINE_PK_CLASS(klass)\
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_APP_CHOOSER_ONLINE_PK))
+#define GTK_APP_CHOOSER_ONLINE_PK_GET_CLASS(obj)\
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_APP_CHOOSER_ONLINE_PK, GtkAppChooserOnlinePkClass))
+
+typedef struct _GtkAppChooserOnlinePk        GtkAppChooserOnlinePk;
+typedef struct _GtkAppChooserOnlinePkClass   GtkAppChooserOnlinePkClass;
+typedef struct _GtkAppChooserOnlinePkPrivate GtkAppChooserOnlinePkPrivate;
+
+struct _GtkAppChooserOnlinePk {
+  GObject parent;
+
+  GtkAppChooserOnlinePkPrivate *priv;
+};
+
+struct _GtkAppChooserOnlinePkClass {
+  GObjectClass parent_class;
+};
+
+GType _gtk_app_chooser_online_pk_get_type (void);
+
+#endif /* __GTK_APP_CHOOSER_ONLINE_PK_H__ */
diff --git a/gtk/gtkopenwithprivate.h b/gtk/gtkappchooserprivate.h
similarity index 62%
rename from gtk/gtkopenwithprivate.h
rename to gtk/gtkappchooserprivate.h
index a4205ec..f3404aa 100644
--- a/gtk/gtkopenwithprivate.h
+++ b/gtk/gtkappchooserprivate.h
@@ -1,5 +1,5 @@
 /*
- * gtkopenwith.c: open-with interface
+ * gtkappchooserprivate.h: app-chooser interface
  *
  * Copyright (C) 2010 Red Hat, Inc.
  *
@@ -21,25 +21,25 @@
  * Authors: Cosimo Cecchi <ccecchi redhat com>
  */
 
-#ifndef __GTK_OPEN_WITH_PRIVATE_H__
-#define __GTK_OPEN_WITH_PRIVATE_H__
+#ifndef __GTK_APP_CHOOSER_PRIVATE_H__
+#define __GTK_APP_CHOOSER_PRIVATE_H__
 
 #include <glib.h>
 #include <gio/gio.h>
 
-#include "gtkopenwithwidget.h"
+#include "gtkappchooserwidget.h"
 
-typedef struct _GtkOpenWithIface GtkOpenWithIface;
-typedef GtkOpenWithIface GtkOpenWithInterface;
+typedef struct _GtkAppChooserIface GtkAppChooserIface;
+typedef GtkAppChooserIface GtkAppChooserInterface;
 
-#define GTK_OPEN_WITH_GET_IFACE(inst)\
-  (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GTK_TYPE_OPEN_WITH, GtkOpenWithIface))
+#define GTK_APP_CHOOSER_GET_IFACE(inst)\
+  (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GTK_TYPE_APP_CHOOSER, GtkAppChooserIface))
 
-struct _GtkOpenWithIface {
+struct _GtkAppChooserIface {
   GTypeInterface base_iface;
 
-  GAppInfo * (* get_app_info) (GtkOpenWith *object);
-  void       (* refresh)      (GtkOpenWith *object);
+  GAppInfo * (* get_app_info) (GtkAppChooser *object);
+  void       (* refresh)      (GtkAppChooser *object);
 };
 
-#endif /* __GTK_OPEN_WITH_PRIVATE_H__ */
+#endif /* __GTK_APP_CHOOSER_PRIVATE_H__ */
diff --git a/gtk/gtkopenwithwidget.c b/gtk/gtkappchooserwidget.c
similarity index 80%
rename from gtk/gtkopenwithwidget.c
rename to gtk/gtkappchooserwidget.c
index 801d881..96a053d 100644
--- a/gtk/gtkopenwithwidget.c
+++ b/gtk/gtkappchooserwidget.c
@@ -1,5 +1,5 @@
 /*
- * gtkopenwithwidget.c: an open-with widget
+ * gtkappchooserwidget.c: an app-chooser widget
  *
  * Copyright (C) 2004 Novell, Inc.
  * Copyright (C) 2007, 2010 Red Hat, Inc.
@@ -26,19 +26,19 @@
 
 #include <config.h>
 
-#include "gtkopenwithwidget.h"
+#include "gtkappchooserwidget.h"
 
 #include "gtkintl.h"
 #include "gtkmarshalers.h"
-#include "gtkopenwith.h"
-#include "gtkopenwithprivate.h"
+#include "gtkappchooser.h"
+#include "gtkappchooserprivate.h"
 
 #include <string.h>
 #include <glib/gi18n-lib.h>
 #include <gtk/gtk.h>
 #include <gio/gio.h>
 
-struct _GtkOpenWithWidgetPrivate {
+struct _GtkAppChooserWidgetPrivate {
   GAppInfo *selected_app_info;
 
   gchar *content_type;
@@ -90,14 +90,14 @@ enum {
 
 static guint signals[N_SIGNALS] = { 0, };
 
-static void gtk_open_with_widget_iface_init (GtkOpenWithIface *iface);
+static void gtk_app_chooser_widget_iface_init (GtkAppChooserIface *iface);
 
-G_DEFINE_TYPE_WITH_CODE (GtkOpenWithWidget, gtk_open_with_widget, GTK_TYPE_BOX,
-			 G_IMPLEMENT_INTERFACE (GTK_TYPE_OPEN_WITH,
-						gtk_open_with_widget_iface_init));
+G_DEFINE_TYPE_WITH_CODE (GtkAppChooserWidget, gtk_app_chooser_widget, GTK_TYPE_BOX,
+			 G_IMPLEMENT_INTERFACE (GTK_TYPE_APP_CHOOSER,
+						gtk_app_chooser_widget_iface_init));
 
 static void
-refresh_and_emit_app_selected (GtkOpenWithWidget *self,
+refresh_and_emit_app_selected (GtkAppChooserWidget *self,
 			       GtkTreeSelection *selection)
 {
   GtkTreeModel *model;
@@ -159,7 +159,7 @@ program_list_selection_activated (GtkTreeView *view,
 				  GtkTreeViewColumn *column,
 				  gpointer user_data)
 {
-  GtkOpenWithWidget *self = user_data;
+  GtkAppChooserWidget *self = user_data;
   GtkTreeSelection *selection;
 
   if (path_is_heading (view, path))
@@ -174,7 +174,7 @@ program_list_selection_activated (GtkTreeView *view,
 }
 
 static gboolean
-gtk_open_with_search_equal_func (GtkTreeModel *model,
+gtk_app_chooser_search_equal_func (GtkTreeModel *model,
 				 int column,
 				 const char *key,
 				 GtkTreeIter *iter,
@@ -244,7 +244,7 @@ gtk_open_with_search_equal_func (GtkTreeModel *model,
 }
 
 static gint
-gtk_open_with_sort_func (GtkTreeModel *model,
+gtk_app_chooser_sort_func (GtkTreeModel *model,
 			 GtkTreeIter *a,
 			 GtkTreeIter *b,
 			 gpointer user_data)
@@ -378,7 +378,7 @@ padding_cell_renderer_func (GtkTreeViewColumn *column,
 }
 
 static gboolean
-gtk_open_with_selection_func (GtkTreeSelection *selection,
+gtk_app_chooser_selection_func (GtkTreeSelection *selection,
 			      GtkTreeModel *model,
 			      GtkTreePath *path,
 			      gboolean path_currently_selected,
@@ -403,7 +403,7 @@ compare_apps_func (gconstpointer a,
 }
 
 static gboolean
-gtk_open_with_widget_add_section (GtkOpenWithWidget *self,
+gtk_app_chooser_widget_add_section (GtkAppChooserWidget *self,
 				  const gchar *heading_title,
 				  gboolean show_headings,
 				  gboolean recommended,
@@ -486,7 +486,7 @@ gtk_open_with_widget_add_section (GtkOpenWithWidget *self,
 
 
 static void
-gtk_open_with_add_default (GtkOpenWithWidget *self,
+gtk_app_chooser_add_default (GtkAppChooserWidget *self,
 			   GAppInfo *app)
 {
   GtkTreeIter iter;
@@ -537,7 +537,7 @@ gtk_open_with_add_default (GtkOpenWithWidget *self,
 }
 
 static void
-add_no_applications_label (GtkOpenWithWidget *self)
+add_no_applications_label (GtkAppChooserWidget *self)
 {
   gchar *text = NULL, *desc;
   const gchar *string;
@@ -565,7 +565,7 @@ add_no_applications_label (GtkOpenWithWidget *self)
 }
 
 static void
-gtk_open_with_widget_select_first (GtkOpenWithWidget *self)
+gtk_app_chooser_widget_select_first (GtkAppChooserWidget *self)
 {
   GtkTreeIter iter;
   GAppInfo *info = NULL;
@@ -599,7 +599,7 @@ gtk_open_with_widget_select_first (GtkOpenWithWidget *self)
 }
 
 static void
-gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self)
+gtk_app_chooser_widget_real_add_items (GtkAppChooserWidget *self)
 {
   GList *all_applications = NULL, *recommended_apps = NULL, *fallback_apps = NULL;
   GList *exclude_apps = NULL;
@@ -619,7 +619,7 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self)
 
       if (default_app != NULL)
 	{
-	  gtk_open_with_add_default (self, default_app);
+	  gtk_app_chooser_add_default (self, default_app);
 	  apps_added = TRUE;
 	  exclude_apps = g_list_prepend (exclude_apps, default_app);
 	}
@@ -629,7 +629,7 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self)
     {
       recommended_apps = g_app_info_get_recommended_for_type (self->priv->content_type);
 
-      apps_added |= gtk_open_with_widget_add_section (self, _("Recommended Applications"),
+      apps_added |= gtk_app_chooser_widget_add_section (self, _("Recommended Applications"),
 						      show_headings,
 						      !self->priv->show_all, /* mark as recommended */
 						      FALSE, /* mark as fallback */
@@ -643,7 +643,7 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self)
     {
       fallback_apps = g_app_info_get_fallback_for_type (self->priv->content_type);
 
-      apps_added |= gtk_open_with_widget_add_section (self, _("Related Applications"),
+      apps_added |= gtk_app_chooser_widget_add_section (self, _("Related Applications"),
 						      show_headings,
 						      FALSE, /* mark as recommended */
 						      !self->priv->show_all, /* mark as fallback */
@@ -656,7 +656,7 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self)
     {
       all_applications = g_app_info_get_all ();
 
-      apps_added |= gtk_open_with_widget_add_section (self, _("Other Applications"),
+      apps_added |= gtk_app_chooser_widget_add_section (self, _("Other Applications"),
 						      show_headings,
 						      FALSE,
 						      FALSE,
@@ -666,7 +666,7 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self)
   if (!apps_added)
     add_no_applications_label (self);
 
-  gtk_open_with_widget_select_first (self);
+  gtk_app_chooser_widget_select_first (self);
 
   if (default_app != NULL)
     g_object_unref (default_app);
@@ -685,7 +685,7 @@ gtk_open_with_widget_real_add_items (GtkOpenWithWidget *self)
 }
 
 static void
-gtk_open_with_widget_add_items (GtkOpenWithWidget *self)
+gtk_app_chooser_widget_add_items (GtkAppChooserWidget *self)
 {
   GtkCellRenderer *renderer;
   GtkTreeViewColumn *column;
@@ -712,12 +712,12 @@ gtk_open_with_widget_add_items (GtkOpenWithWidget *self)
 					GTK_SORT_ASCENDING);
   gtk_tree_sortable_set_sort_func (GTK_TREE_SORTABLE (sort),
 				   COLUMN_NAME,
-				   gtk_open_with_sort_func,
+				   gtk_app_chooser_sort_func,
 				   self, NULL);
   gtk_tree_view_set_search_column (GTK_TREE_VIEW (self->priv->program_list),
 				   COLUMN_NAME);
   gtk_tree_view_set_search_equal_func (GTK_TREE_VIEW (self->priv->program_list),
-  				       gtk_open_with_search_equal_func,
+  				       gtk_app_chooser_search_equal_func,
   				       NULL, NULL);
 
   column = gtk_tree_view_column_new ();
@@ -776,16 +776,16 @@ gtk_open_with_widget_add_items (GtkOpenWithWidget *self)
   gtk_tree_view_append_column (GTK_TREE_VIEW (self->priv->program_list), column);
 
   /* populate the widget */
-  gtk_open_with_widget_real_add_items (self);
+  gtk_app_chooser_widget_real_add_items (self);
 }
 
 static void
-gtk_open_with_widget_set_property (GObject *object,
+gtk_app_chooser_widget_set_property (GObject *object,
 				   guint property_id,
 				   const GValue *value,
 				   GParamSpec *pspec)
 {
-  GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object);
+  GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object);
 
   switch (property_id)
     {
@@ -793,22 +793,22 @@ gtk_open_with_widget_set_property (GObject *object,
       self->priv->content_type = g_value_dup_string (value);
       break;
     case PROP_SHOW_DEFAULT:
-      gtk_open_with_widget_set_show_default (self, g_value_get_boolean (value));
+      gtk_app_chooser_widget_set_show_default (self, g_value_get_boolean (value));
       break;
     case PROP_SHOW_RECOMMENDED:
-      gtk_open_with_widget_set_show_recommended (self, g_value_get_boolean (value));
+      gtk_app_chooser_widget_set_show_recommended (self, g_value_get_boolean (value));
       break;
     case PROP_SHOW_FALLBACK:
-      gtk_open_with_widget_set_show_fallback (self, g_value_get_boolean (value));
+      gtk_app_chooser_widget_set_show_fallback (self, g_value_get_boolean (value));
       break;
     case PROP_SHOW_OTHER:
-      gtk_open_with_widget_set_show_other (self, g_value_get_boolean (value));
+      gtk_app_chooser_widget_set_show_other (self, g_value_get_boolean (value));
       break;
     case PROP_SHOW_ALL:
-      gtk_open_with_widget_set_show_all (self, g_value_get_boolean (value));
+      gtk_app_chooser_widget_set_show_all (self, g_value_get_boolean (value));
       break;
     case PROP_DEFAULT_TEXT:
-      gtk_open_with_widget_set_default_text (self, g_value_get_string (value));
+      gtk_app_chooser_widget_set_default_text (self, g_value_get_string (value));
       break;
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
@@ -817,12 +817,12 @@ gtk_open_with_widget_set_property (GObject *object,
 }
 
 static void
-gtk_open_with_widget_get_property (GObject *object,
+gtk_app_chooser_widget_get_property (GObject *object,
 				   guint property_id,
 				   GValue *value,
 				   GParamSpec *pspec)
 {
-  GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object);
+  GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object);
 
   switch (property_id)
     {
@@ -854,33 +854,33 @@ gtk_open_with_widget_get_property (GObject *object,
 }
 
 static void
-gtk_open_with_widget_constructed (GObject *object)
+gtk_app_chooser_widget_constructed (GObject *object)
 {
-  GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object);
+  GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object);
 
   g_assert (self->priv->content_type != NULL);
 
-  if (G_OBJECT_CLASS (gtk_open_with_widget_parent_class)->constructed != NULL)
-    G_OBJECT_CLASS (gtk_open_with_widget_parent_class)->constructed (object);
+  if (G_OBJECT_CLASS (gtk_app_chooser_widget_parent_class)->constructed != NULL)
+    G_OBJECT_CLASS (gtk_app_chooser_widget_parent_class)->constructed (object);
 
-  gtk_open_with_widget_add_items (self);
+  gtk_app_chooser_widget_add_items (self);
 }
 
 static void
-gtk_open_with_widget_finalize (GObject *object)
+gtk_app_chooser_widget_finalize (GObject *object)
 {
-  GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object);
+  GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object);
 
   g_free (self->priv->content_type);
   g_free (self->priv->default_text);
 
-  G_OBJECT_CLASS (gtk_open_with_widget_parent_class)->finalize (object);
+  G_OBJECT_CLASS (gtk_app_chooser_widget_parent_class)->finalize (object);
 }
 
 static void
-gtk_open_with_widget_dispose (GObject *object)
+gtk_app_chooser_widget_dispose (GObject *object)
 {
-  GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object);
+  GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object);
 
   if (self->priv->selected_app_info != NULL)
     {
@@ -888,21 +888,21 @@ gtk_open_with_widget_dispose (GObject *object)
       self->priv->selected_app_info = NULL;
     }
 
-  G_OBJECT_CLASS (gtk_open_with_widget_parent_class)->dispose (object);
+  G_OBJECT_CLASS (gtk_app_chooser_widget_parent_class)->dispose (object);
 }
 
 static void
-gtk_open_with_widget_class_init (GtkOpenWithWidgetClass *klass)
+gtk_app_chooser_widget_class_init (GtkAppChooserWidgetClass *klass)
 {
   GObjectClass *gobject_class;
   GParamSpec *pspec;
 
   gobject_class = G_OBJECT_CLASS (klass);
-  gobject_class->dispose = gtk_open_with_widget_dispose;
-  gobject_class->finalize = gtk_open_with_widget_finalize;
-  gobject_class->set_property = gtk_open_with_widget_set_property;
-  gobject_class->get_property = gtk_open_with_widget_get_property;
-  gobject_class->constructed = gtk_open_with_widget_constructed;
+  gobject_class->dispose = gtk_app_chooser_widget_dispose;
+  gobject_class->finalize = gtk_app_chooser_widget_finalize;
+  gobject_class->set_property = gtk_app_chooser_widget_set_property;
+  gobject_class->get_property = gtk_app_chooser_widget_get_property;
+  gobject_class->constructed = gtk_app_chooser_widget_constructed;
 
   g_object_class_override_property (gobject_class, PROP_CONTENT_TYPE, "content-type");
 
@@ -950,9 +950,9 @@ gtk_open_with_widget_class_init (GtkOpenWithWidgetClass *klass)
 
   signals[SIGNAL_APPLICATION_SELECTED] =
     g_signal_new ("application-selected",
-		  GTK_TYPE_OPEN_WITH_WIDGET,
+		  GTK_TYPE_APP_CHOOSER_WIDGET,
 		  G_SIGNAL_RUN_FIRST,
-		  G_STRUCT_OFFSET (GtkOpenWithWidgetClass, application_selected),
+		  G_STRUCT_OFFSET (GtkAppChooserWidgetClass, application_selected),
 		  NULL, NULL,
 		  _gtk_marshal_VOID__OBJECT,
 		  G_TYPE_NONE,
@@ -960,25 +960,25 @@ gtk_open_with_widget_class_init (GtkOpenWithWidgetClass *klass)
 
   signals[SIGNAL_APPLICATION_ACTIVATED] =
     g_signal_new ("application-activated",
-		  GTK_TYPE_OPEN_WITH_WIDGET,
+		  GTK_TYPE_APP_CHOOSER_WIDGET,
 		  G_SIGNAL_RUN_FIRST,
-		  G_STRUCT_OFFSET (GtkOpenWithWidgetClass, application_activated),
+		  G_STRUCT_OFFSET (GtkAppChooserWidgetClass, application_activated),
 		  NULL, NULL,
 		  _gtk_marshal_VOID__OBJECT,
 		  G_TYPE_NONE,
 		  1, G_TYPE_APP_INFO);
 
-  g_type_class_add_private (klass, sizeof (GtkOpenWithWidgetPrivate));
+  g_type_class_add_private (klass, sizeof (GtkAppChooserWidgetPrivate));
 }
 
 static void
-gtk_open_with_widget_init (GtkOpenWithWidget *self)
+gtk_app_chooser_widget_init (GtkAppChooserWidget *self)
 {
   GtkWidget *scrolled_window;
   GtkTreeSelection *selection;
 
-  self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_OPEN_WITH_WIDGET,
-					    GtkOpenWithWidgetPrivate);
+  self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GTK_TYPE_APP_CHOOSER_WIDGET,
+					    GtkAppChooserWidgetPrivate);
   gtk_orientable_set_orientation (GTK_ORIENTABLE (self), GTK_ORIENTATION_VERTICAL);
 
   scrolled_window = gtk_scrolled_window_new (NULL, NULL);
@@ -999,7 +999,7 @@ gtk_open_with_widget_init (GtkOpenWithWidget *self)
 
   selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (self->priv->program_list));
   gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE);
-  gtk_tree_selection_set_select_function (selection, gtk_open_with_selection_func,
+  gtk_tree_selection_set_select_function (selection, gtk_app_chooser_selection_func,
 					  self, NULL);
   g_signal_connect_swapped (selection, "changed",
 			    G_CALLBACK (refresh_and_emit_app_selected),
@@ -1010,9 +1010,9 @@ gtk_open_with_widget_init (GtkOpenWithWidget *self)
 }
 
 static GAppInfo *
-gtk_open_with_widget_get_app_info (GtkOpenWith *object)
+gtk_app_chooser_widget_get_app_info (GtkAppChooser *object)
 {
-  GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object);
+  GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object);
 
   if (self->priv->selected_app_info == NULL)
     return NULL;
@@ -1021,9 +1021,9 @@ gtk_open_with_widget_get_app_info (GtkOpenWith *object)
 }
 
 static void
-gtk_open_with_widget_refresh (GtkOpenWith *object)
+gtk_app_chooser_widget_refresh (GtkAppChooser *object)
 {
-  GtkOpenWithWidget *self = GTK_OPEN_WITH_WIDGET (object);
+  GtkAppChooserWidget *self = GTK_APP_CHOOSER_WIDGET (object);
 
   if (self->priv->program_list_store != NULL)
     {
@@ -1034,30 +1034,30 @@ gtk_open_with_widget_refresh (GtkOpenWith *object)
 		    "visible", !self->priv->show_all,
 		    NULL);
 
-      gtk_open_with_widget_real_add_items (self);
+      gtk_app_chooser_widget_real_add_items (self);
     }
 }
 
 static void
-gtk_open_with_widget_iface_init (GtkOpenWithIface *iface)
+gtk_app_chooser_widget_iface_init (GtkAppChooserIface *iface)
 {
-  iface->get_app_info = gtk_open_with_widget_get_app_info;
-  iface->refresh = gtk_open_with_widget_refresh;
+  iface->get_app_info = gtk_app_chooser_widget_get_app_info;
+  iface->refresh = gtk_app_chooser_widget_refresh;
 }
 
 GtkWidget *
-gtk_open_with_widget_new (const gchar *content_type)
+gtk_app_chooser_widget_new (const gchar *content_type)
 {
-  return g_object_new (GTK_TYPE_OPEN_WITH_WIDGET,
+  return g_object_new (GTK_TYPE_APP_CHOOSER_WIDGET,
 		       "content-type", content_type,
 		       NULL);
 }
 
 void
-gtk_open_with_widget_set_show_default (GtkOpenWithWidget *self,
+gtk_app_chooser_widget_set_show_default (GtkAppChooserWidget *self,
 				       gboolean setting)
 {
-  g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self));
+  g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self));
 
   if (self->priv->show_default != setting)
     {
@@ -1065,23 +1065,23 @@ gtk_open_with_widget_set_show_default (GtkOpenWithWidget *self,
 
       g_object_notify (G_OBJECT (self), "show-default");
 
-      gtk_open_with_refresh (GTK_OPEN_WITH (self));
+      gtk_app_chooser_refresh (GTK_APP_CHOOSER (self));
     }
 }
 
 gboolean
-gtk_open_with_widget_get_show_default (GtkOpenWithWidget *self)
+gtk_app_chooser_widget_get_show_default (GtkAppChooserWidget *self)
 {
-  g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), FALSE);
+  g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), FALSE);
 
   return self->priv->show_default;
 }
 
 void
-gtk_open_with_widget_set_show_recommended (GtkOpenWithWidget *self,
+gtk_app_chooser_widget_set_show_recommended (GtkAppChooserWidget *self,
 					   gboolean setting)
 {
-  g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self));
+  g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self));
 
   if (self->priv->show_recommended != setting)
     {
@@ -1089,23 +1089,23 @@ gtk_open_with_widget_set_show_recommended (GtkOpenWithWidget *self,
 
       g_object_notify (G_OBJECT (self), "show-recommended");
 
-      gtk_open_with_refresh (GTK_OPEN_WITH (self));
+      gtk_app_chooser_refresh (GTK_APP_CHOOSER (self));
     }
 }
 
 gboolean
-gtk_open_with_widget_get_show_recommended (GtkOpenWithWidget *self)
+gtk_app_chooser_widget_get_show_recommended (GtkAppChooserWidget *self)
 {
-  g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), FALSE);
+  g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), FALSE);
 
   return self->priv->show_recommended;
 }
 
 void
-gtk_open_with_widget_set_show_fallback (GtkOpenWithWidget *self,
+gtk_app_chooser_widget_set_show_fallback (GtkAppChooserWidget *self,
 					gboolean setting)
 {
-  g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self));
+  g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self));
 
   if (self->priv->show_fallback != setting)
     {
@@ -1113,23 +1113,23 @@ gtk_open_with_widget_set_show_fallback (GtkOpenWithWidget *self,
 
       g_object_notify (G_OBJECT (self), "show-fallback");
 
-      gtk_open_with_refresh (GTK_OPEN_WITH (self));
+      gtk_app_chooser_refresh (GTK_APP_CHOOSER (self));
     }
 }
 
 gboolean
-gtk_open_with_widget_get_show_fallback (GtkOpenWithWidget *self)
+gtk_app_chooser_widget_get_show_fallback (GtkAppChooserWidget *self)
 {
-  g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), FALSE);
+  g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), FALSE);
 
   return self->priv->show_fallback;
 }
 
 void
-gtk_open_with_widget_set_show_other (GtkOpenWithWidget *self,
+gtk_app_chooser_widget_set_show_other (GtkAppChooserWidget *self,
 				     gboolean setting)
 {
-  g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self));
+  g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self));
 
   if (self->priv->show_other != setting)
     {
@@ -1137,22 +1137,22 @@ gtk_open_with_widget_set_show_other (GtkOpenWithWidget *self,
 
       g_object_notify (G_OBJECT (self), "show-other");
 
-      gtk_open_with_refresh (GTK_OPEN_WITH (self));
+      gtk_app_chooser_refresh (GTK_APP_CHOOSER (self));
     }
 }
 
-gboolean gtk_open_with_widget_get_show_other (GtkOpenWithWidget *self)
+gboolean gtk_app_chooser_widget_get_show_other (GtkAppChooserWidget *self)
 {
-  g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), FALSE);
+  g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), FALSE);
 
   return self->priv->show_other;
 }
 
 void
-gtk_open_with_widget_set_show_all (GtkOpenWithWidget *self,
+gtk_app_chooser_widget_set_show_all (GtkAppChooserWidget *self,
 				   gboolean setting)
 {
-  g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self));
+  g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self));
 
   if (self->priv->show_all != setting)
     {
@@ -1160,23 +1160,23 @@ gtk_open_with_widget_set_show_all (GtkOpenWithWidget *self,
 
       g_object_notify (G_OBJECT (self), "show-all");
 
-      gtk_open_with_refresh (GTK_OPEN_WITH (self));
+      gtk_app_chooser_refresh (GTK_APP_CHOOSER (self));
     }
 }
 
 gboolean
-gtk_open_with_widget_get_show_all (GtkOpenWithWidget *self)
+gtk_app_chooser_widget_get_show_all (GtkAppChooserWidget *self)
 {
-  g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), FALSE);
+  g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), FALSE);
 
   return self->priv->show_all;  
 }
 
 void
-gtk_open_with_widget_set_default_text (GtkOpenWithWidget *self,
+gtk_app_chooser_widget_set_default_text (GtkAppChooserWidget *self,
 				       const gchar *text)
 {
-  g_return_if_fail (GTK_IS_OPEN_WITH_WIDGET (self));
+  g_return_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self));
 
   if (g_strcmp0 (text, self->priv->default_text) != 0)
     {
@@ -1185,14 +1185,14 @@ gtk_open_with_widget_set_default_text (GtkOpenWithWidget *self,
 
       g_object_notify (G_OBJECT (self), "default-text");
 
-      gtk_open_with_refresh (GTK_OPEN_WITH (self));
+      gtk_app_chooser_refresh (GTK_APP_CHOOSER (self));
     }
 }
 
 const gchar *
-gtk_open_with_widget_get_default_text (GtkOpenWithWidget *self)
+gtk_app_chooser_widget_get_default_text (GtkAppChooserWidget *self)
 {
-  g_return_val_if_fail (GTK_IS_OPEN_WITH_WIDGET (self), NULL);
+  g_return_val_if_fail (GTK_IS_APP_CHOOSER_WIDGET (self), NULL);
 
   return self->priv->default_text;
 }
diff --git a/gtk/gtkappchooserwidget.h b/gtk/gtkappchooserwidget.h
new file mode 100644
index 0000000..910656e
--- /dev/null
+++ b/gtk/gtkappchooserwidget.h
@@ -0,0 +1,109 @@
+/*
+ * gtkappchooserwidget.h: an app-chooser widget
+ *
+ * Copyright (C) 2004 Novell, Inc.
+ * Copyright (C) 2007, 2010 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the Gnome Library; see the file COPYING.LIB.  If not,
+ * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ * Authors: Dave Camp <dave novell com>
+ *          Alexander Larsson <alexl redhat com>
+ *          Cosimo Cecchi <ccecchi redhat com>
+ */
+
+#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
+#error "Only <gtk/gtk.h> can be included directly."
+#endif
+
+#ifndef __GTK_APP_CHOOSER_WIDGET_H__
+#define __GTK_APP_CHOOSER_WIDGET_H__
+
+#include <gtk/gtkbox.h>
+#include <gio/gio.h>
+
+#define GTK_TYPE_APP_CHOOSER_WIDGET\
+  (gtk_app_chooser_widget_get_type ())
+#define GTK_APP_CHOOSER_WIDGET(obj)\
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_APP_CHOOSER_WIDGET, GtkAppChooserWidget))
+#define GTK_APP_CHOOSER_WIDGET_CLASS(klass)\
+  (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_APP_CHOOSER_WIDGET, GtkAppChooserWidgetClass))
+#define GTK_IS_APP_CHOOSER_WIDGET(obj)\
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_APP_CHOOSER_WIDGET))
+#define GTK_IS_APP_CHOOSER_WIDGET_CLASS(klass)\
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_APP_CHOOSER_WIDGET))
+#define GTK_APP_CHOOSER_WIDGET_GET_CLASS(obj)\
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_APP_CHOOSER_WIDGET, GtkAppChooserWidgetClass))
+
+typedef struct _GtkAppChooserWidget        GtkAppChooserWidget;
+typedef struct _GtkAppChooserWidgetClass   GtkAppChooserWidgetClass;
+typedef struct _GtkAppChooserWidgetPrivate GtkAppChooserWidgetPrivate;
+
+struct _GtkAppChooserWidget {
+  GtkBox parent;
+
+  /*< private >*/
+  GtkAppChooserWidgetPrivate *priv;
+};
+
+struct _GtkAppChooserWidgetClass {
+  GtkBoxClass parent_class;
+
+  void (* application_selected) (GtkAppChooserWidget *self,
+				 GAppInfo *app_info);
+
+  void (* application_activated) (GtkAppChooserWidget *self,
+				  GAppInfo *app_info);
+
+  /* padding for future class expansion */
+  gpointer padding[16];
+};
+
+typedef enum {
+  GTK_APP_CHOOSER_WIDGET_SHOW_RECOMMENDED = 1 << 0,
+  GTK_APP_CHOOSER_WIDGET_SHOW_FALLBACK = 1 << 1,
+  GTK_APP_CHOOSER_WIDGET_SHOW_OTHER = 1 << 2,
+  GTK_APP_CHOOSER_WIDGET_SHOW_ALL = 1 << 3,
+} GtkAppChooserWidgetShowFlags;
+
+GType      gtk_app_chooser_widget_get_type (void) G_GNUC_CONST;
+
+GtkWidget * gtk_app_chooser_widget_new (const gchar *content_type);
+
+void gtk_app_chooser_widget_set_show_default (GtkAppChooserWidget *self,
+					    gboolean setting);
+gboolean gtk_app_chooser_widget_get_show_default (GtkAppChooserWidget *self);
+
+void gtk_app_chooser_widget_set_show_recommended (GtkAppChooserWidget *self,
+						gboolean setting);
+gboolean gtk_app_chooser_widget_get_show_recommended (GtkAppChooserWidget *self);
+
+void gtk_app_chooser_widget_set_show_fallback (GtkAppChooserWidget *self,
+					     gboolean setting);
+gboolean gtk_app_chooser_widget_get_show_fallback (GtkAppChooserWidget *self);
+
+void gtk_app_chooser_widget_set_show_other (GtkAppChooserWidget *self,
+					  gboolean setting);
+gboolean gtk_app_chooser_widget_get_show_other (GtkAppChooserWidget *self);
+
+void gtk_app_chooser_widget_set_show_all (GtkAppChooserWidget *self,
+					gboolean show_all);
+gboolean gtk_app_chooser_widget_get_show_all (GtkAppChooserWidget *self);
+
+void gtk_app_chooser_widget_set_default_text (GtkAppChooserWidget *self,
+					    const gchar *text);
+const gchar * gtk_app_chooser_widget_get_default_text (GtkAppChooserWidget *self);
+
+#endif /* __GTK_APP_CHOOSER_WIDGET_H__ */
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 1da067e..7aca0f6 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -66,7 +66,7 @@ noinst_PROGRAMS =  $(TEST_PROGS)	\
 	testoffscreen			\
 	testoffscreenwindow		\
 	testorientable			\
-	testopenwith			\
+	testappchooser			\
 	testprint			\
 	testrecentchooser 		\
 	testrecentchoosermenu		\
@@ -154,7 +154,7 @@ testnotebookdnd_DEPENDENCIES = $(TEST_DEPS)
 testnouiprint_DEPENDENCIES = $(TEST_DEPS)
 testoffscreen_DEPENDENCIES = $(TEST_DEPS)
 testoffscreenwindow_DEPENDENCIES = $(TEST_DEPS)
-testopenwith_DEPENDENCIES = $(TEST_DEPS)
+testappchooser_DEPENDENCIES = $(TEST_DEPS)
 testorientable_DEPENDENCIES = $(TEST_DEPS)
 testprint_DEPENDENCIES = $(TEST_DEPS)
 testrecentchooser_DEPENDENCIES = $(TEST_DEPS)
@@ -227,7 +227,7 @@ testnotebookdnd_LDADD = $(LDADDS)
 testnouiprint_LDADD = $(LDADDS)
 testoffscreen_LDADD = $(LDADDS)
 testoffscreenwindow_LDADD = $(LDADDS)
-testopenwith_LDADD = $(LDADDS)
+testappchooser_LDADD = $(LDADDS)
 testorientable_LDADD = $(LDADDS)
 testprint_LDADD = $(LDADDS)
 testrecentchooser_LDADD = $(LDADDS)
@@ -378,8 +378,8 @@ testoffscreen_SOURCES = 	\
 testoffscreenwindow_SOURCES =	\
 	testoffscreenwindow.c
 
-testopenwith_SOURCES = \
-	testopenwith.c
+testappchooser_SOURCES = \
+	testappchooser.c
 
 testwindows_SOURCES = 	\
 	testwindows.c
diff --git a/tests/testopenwith.c b/tests/testappchooser.c
similarity index 90%
rename from tests/testopenwith.c
rename to tests/testappchooser.c
index 34cd94b..400b8e2 100644
--- a/tests/testopenwith.c
+++ b/tests/testappchooser.c
@@ -1,4 +1,4 @@
-/* testopenwith.c
+/* testappchooser.c
  * Copyright (C) 2010 Red Hat, Inc.
  * Authors: Cosimo Cecchi
  *
@@ -27,7 +27,7 @@ static GtkWidget *toplevel;
 static GFile *file;
 static GtkWidget *grid, *file_l, *open;
 static GtkWidget *radio_file, *radio_content, *dialog;
-static GtkWidget *open_with_widget;
+static GtkWidget *app_chooser_widget;
 static GtkWidget *recommended, *fallback, *other, *all, *radio;
 
 static void
@@ -42,7 +42,7 @@ dialog_response (GtkDialog *d,
 
   if (response_id == GTK_RESPONSE_OK)
     {
-      app_info = gtk_open_with_get_app_info (GTK_OPEN_WITH (d));
+      app_info = gtk_app_chooser_get_app_info (GTK_APP_CHOOSER (d));
       name = g_app_info_get_name (app_info);
       g_print ("Application selected: %s\n", name);
 
@@ -57,19 +57,19 @@ static void
 bind_props (void)
 {
   g_object_bind_property (recommended, "active",
-			  open_with_widget, "show-recommended",
+			  app_chooser_widget, "show-recommended",
 			  G_BINDING_SYNC_CREATE);
   g_object_bind_property (fallback, "active",
-			  open_with_widget, "show-fallback",
+			  app_chooser_widget, "show-fallback",
 			  G_BINDING_SYNC_CREATE);
   g_object_bind_property (other, "active",
-			  open_with_widget, "show-other",
+			  app_chooser_widget, "show-other",
 			  G_BINDING_SYNC_CREATE);
   g_object_bind_property (all, "active",
-			  open_with_widget, "show-all",
+			  app_chooser_widget, "show-all",
 			  G_BINDING_SYNC_CREATE);
   g_object_bind_property (radio, "active",
-			  open_with_widget, "radio-mode",
+			  app_chooser_widget, "radio-mode",
 			  G_BINDING_SYNC_CREATE);
 }
 
@@ -86,7 +86,7 @@ prepare_dialog (void)
 
   if (use_file)
     {
-      dialog = gtk_open_with_dialog_new (GTK_WINDOW (toplevel),
+      dialog = gtk_app_chooser_dialog_new (GTK_WINDOW (toplevel),
 					 0, file);
     }
   else
@@ -100,7 +100,7 @@ prepare_dialog (void)
 
       g_object_unref (info);
 
-      dialog = gtk_open_with_dialog_new_for_content_type (GTK_WINDOW (toplevel),
+      dialog = gtk_app_chooser_dialog_new_for_content_type (GTK_WINDOW (toplevel),
 							  0, content_type);
     }
 
@@ -109,7 +109,7 @@ prepare_dialog (void)
 
   g_free (content_type);
 
-  open_with_widget = gtk_open_with_dialog_get_widget (GTK_OPEN_WITH_DIALOG (dialog));
+  app_chooser_widget = gtk_app_chooser_dialog_get_widget (GTK_APP_CHOOSER_DIALOG (dialog));
   bind_props ();
 }
 
@@ -188,7 +188,7 @@ main (int argc,
   gtk_grid_attach_next_to (GTK_GRID (grid), radio_content,
 			   radio_file, GTK_POS_BOTTOM, 1, 1);
 
-  open = gtk_button_new_with_label ("Trigger Open With dialog");
+  open = gtk_button_new_with_label ("Trigger App Chooser dialog");
   gtk_grid_attach_next_to (GTK_GRID (grid), open,
 			   radio_content, GTK_POS_BOTTOM, 1, 1);
 



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