summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Lebl <jirka@5z.com>2000-08-09 06:28:25 +0000
committerGeorge Lebl <jirka@src.gnome.org>2000-08-09 06:28:25 +0000
commit7ed27c172ff960419f3205b92f030556931b7fd6 (patch)
tree1d098c3bb1b79400b481740b422000b16af5ac29
parenta3702dd5e940e8b78e83f6a868c14550989b1d76 (diff)
downloadnautilus-7ed27c172ff960419f3205b92f030556931b7fd6.tar.gz
Use the new application registry api. Also remove the hack for "merging"
Tue Aug 08 23:23:50 2000 George Lebl <jirka@5z.com> * libnautilus-extensions/nautilus-mime-actions.c (nautilus_mime_get_default_application_fo) (nautilus_mime_get_short_list_application) (nautilus_mime_get_all_applications_for_u): Use the new application registry api. Also remove the hack for "merging" (bug 1268) the application with short list as this should now be not necessary because of the application registry. * src/nautilus-sidebar.c (command_button_callback): Use the new application registry api and check for NULL return from get_mime_application just for sanity's sake.
-rw-r--r--ChangeLog14
-rw-r--r--libnautilus-extensions/nautilus-mime-actions.c13
-rw-r--r--libnautilus-private/nautilus-mime-actions.c13
-rw-r--r--src/nautilus-information-panel.c9
-rw-r--r--src/nautilus-sidebar.c9
5 files changed, 34 insertions, 24 deletions
diff --git a/ChangeLog b/ChangeLog
index 6fd80bdcb..e9ed8eed1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+Tue Aug 08 23:23:50 2000 George Lebl <jirka@5z.com>
+
+ * libnautilus-extensions/nautilus-mime-actions.c
+ (nautilus_mime_get_default_application_fo)
+ (nautilus_mime_get_short_list_application)
+ (nautilus_mime_get_all_applications_for_u):
+ Use the new application registry api. Also remove the hack for
+ "merging" (bug 1268) the application with short list as this
+ should now be not necessary because of the application registry.
+
+ * src/nautilus-sidebar.c (command_button_callback):
+ Use the new application registry api and check for NULL
+ return from get_mime_application just for sanity's sake.
+
2000-08-08 Andy Hertzfeld <andy@eazel.com>
* libnautilus-extensions/nautilus-icon-container.c:
diff --git a/libnautilus-extensions/nautilus-mime-actions.c b/libnautilus-extensions/nautilus-mime-actions.c
index 749b48f70..f538f6a08 100644
--- a/libnautilus-extensions/nautilus-mime-actions.c
+++ b/libnautilus-extensions/nautilus-mime-actions.c
@@ -28,6 +28,7 @@
#include <libgnomevfs/gnome-vfs.h>
#include <libgnomevfs/gnome-vfs-mime.h>
#include <libgnomevfs/gnome-vfs-mime-info.h>
+#include <libgnomevfs/gnome-vfs-application-registry.h>
#include "nautilus-lib-self-check-functions.h"
#include "nautilus-directory.h"
#include "nautilus-file.h"
@@ -189,7 +190,7 @@ nautilus_mime_get_default_application_for_uri_internal (const char *uri, gboolea
g_free (mime_type);
used_user_chosen_info = FALSE;
} else {
- result = gnome_vfs_mime_application_new_from_id (default_application_string);
+ result = gnome_vfs_application_registry_get_mime_application (default_application_string);
}
if (user_chosen != NULL) {
@@ -444,7 +445,7 @@ nautilus_mime_get_short_list_applications_for_uri (const char *uri)
g_list_find_custom (metadata_application_remove_ids,
p->data,
(GCompareFunc) strcmp) == NULL) {
- application = gnome_vfs_mime_application_new_from_id (p->data);
+ application = gnome_vfs_application_registry_get_mime_application (p->data);
if (application != NULL) {
result = g_list_prepend (result, application);
@@ -591,18 +592,12 @@ nautilus_mime_get_all_applications_for_uri (const char *uri)
mime_type = get_mime_type_from_uri (uri);
result = gnome_vfs_mime_get_all_applications (mime_type);
- /* FIXME bugzilla.eazel.com 1268:
- * temporary hack; the non_uri code should do this merge
- */
- if (result == NULL) {
- result = gnome_vfs_mime_get_short_list_applications (mime_type);
- }
for (p = metadata_application_ids; p != NULL; p = p->next) {
if (!g_list_find_custom (result,
p->data,
(GCompareFunc) gnome_vfs_mime_application_has_id)) {
- application = gnome_vfs_mime_application_new_from_id (p->data);
+ application = gnome_vfs_application_registry_get_mime_application (p->data);
if (application != NULL) {
result = g_list_prepend (result, application);
diff --git a/libnautilus-private/nautilus-mime-actions.c b/libnautilus-private/nautilus-mime-actions.c
index 749b48f70..f538f6a08 100644
--- a/libnautilus-private/nautilus-mime-actions.c
+++ b/libnautilus-private/nautilus-mime-actions.c
@@ -28,6 +28,7 @@
#include <libgnomevfs/gnome-vfs.h>
#include <libgnomevfs/gnome-vfs-mime.h>
#include <libgnomevfs/gnome-vfs-mime-info.h>
+#include <libgnomevfs/gnome-vfs-application-registry.h>
#include "nautilus-lib-self-check-functions.h"
#include "nautilus-directory.h"
#include "nautilus-file.h"
@@ -189,7 +190,7 @@ nautilus_mime_get_default_application_for_uri_internal (const char *uri, gboolea
g_free (mime_type);
used_user_chosen_info = FALSE;
} else {
- result = gnome_vfs_mime_application_new_from_id (default_application_string);
+ result = gnome_vfs_application_registry_get_mime_application (default_application_string);
}
if (user_chosen != NULL) {
@@ -444,7 +445,7 @@ nautilus_mime_get_short_list_applications_for_uri (const char *uri)
g_list_find_custom (metadata_application_remove_ids,
p->data,
(GCompareFunc) strcmp) == NULL) {
- application = gnome_vfs_mime_application_new_from_id (p->data);
+ application = gnome_vfs_application_registry_get_mime_application (p->data);
if (application != NULL) {
result = g_list_prepend (result, application);
@@ -591,18 +592,12 @@ nautilus_mime_get_all_applications_for_uri (const char *uri)
mime_type = get_mime_type_from_uri (uri);
result = gnome_vfs_mime_get_all_applications (mime_type);
- /* FIXME bugzilla.eazel.com 1268:
- * temporary hack; the non_uri code should do this merge
- */
- if (result == NULL) {
- result = gnome_vfs_mime_get_short_list_applications (mime_type);
- }
for (p = metadata_application_ids; p != NULL; p = p->next) {
if (!g_list_find_custom (result,
p->data,
(GCompareFunc) gnome_vfs_mime_application_has_id)) {
- application = gnome_vfs_mime_application_new_from_id (p->data);
+ application = gnome_vfs_application_registry_get_mime_application (p->data);
if (application != NULL) {
result = g_list_prepend (result, application);
diff --git a/src/nautilus-information-panel.c b/src/nautilus-information-panel.c
index deb467a14..6255da9a6 100644
--- a/src/nautilus-information-panel.c
+++ b/src/nautilus-information-panel.c
@@ -30,6 +30,7 @@
#include <math.h>
#include <libgnomeui/gnome-uidefs.h>
#include <libgnomevfs/gnome-vfs-mime-handlers.h>
+#include <libgnomevfs/gnome-vfs-application-registry.h>
#include <libgnomevfs/gnome-vfs-types.h>
#include <libgnomevfs/gnome-vfs-uri.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
@@ -1066,11 +1067,13 @@ command_button_callback (GtkWidget *button, char *id_str)
sidebar = NAUTILUS_SIDEBAR (gtk_object_get_user_data (GTK_OBJECT (button)));
- application = gnome_vfs_mime_application_new_from_id (id_str);
+ application = gnome_vfs_application_registry_get_mime_application (id_str);
- nautilus_launch_application (application, sidebar->details->uri);
+ if (application != NULL) {
+ nautilus_launch_application (application, sidebar->details->uri);
- gnome_vfs_mime_application_free (application);
+ gnome_vfs_mime_application_free (application);
+ }
}
/* interpret commands for buttons specified by metadata. Handle some built-in ones explicitly, or fork
diff --git a/src/nautilus-sidebar.c b/src/nautilus-sidebar.c
index deb467a14..6255da9a6 100644
--- a/src/nautilus-sidebar.c
+++ b/src/nautilus-sidebar.c
@@ -30,6 +30,7 @@
#include <math.h>
#include <libgnomeui/gnome-uidefs.h>
#include <libgnomevfs/gnome-vfs-mime-handlers.h>
+#include <libgnomevfs/gnome-vfs-application-registry.h>
#include <libgnomevfs/gnome-vfs-types.h>
#include <libgnomevfs/gnome-vfs-uri.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
@@ -1066,11 +1067,13 @@ command_button_callback (GtkWidget *button, char *id_str)
sidebar = NAUTILUS_SIDEBAR (gtk_object_get_user_data (GTK_OBJECT (button)));
- application = gnome_vfs_mime_application_new_from_id (id_str);
+ application = gnome_vfs_application_registry_get_mime_application (id_str);
- nautilus_launch_application (application, sidebar->details->uri);
+ if (application != NULL) {
+ nautilus_launch_application (application, sidebar->details->uri);
- gnome_vfs_mime_application_free (application);
+ gnome_vfs_mime_application_free (application);
+ }
}
/* interpret commands for buttons specified by metadata. Handle some built-in ones explicitly, or fork