summaryrefslogtreecommitdiff
path: root/test/test-nautilus-mime-actions.c
diff options
context:
space:
mode:
authorRebecca Schulman <rebecka@eazel.com>2001-01-26 23:16:59 +0000
committerRebecca Schulman <rebecka@src.gnome.org>2001-01-26 23:16:59 +0000
commit5dfee0c35d7091873a30c0c63cfcb0b5cec3e6cf (patch)
treedb251215f92aa9ba2d8c49977164757d5d3168f0 /test/test-nautilus-mime-actions.c
parent2717a5cdd36e86d5c90ecd56ebecc4f9d79dbdbb (diff)
downloadnautilus-5dfee0c35d7091873a30c0c63cfcb0b5cec3e6cf.tar.gz
Fix bugs 4094, 4425, 5201 and 4106 about inappopriate applications being
2001-01-27 Rebecca Schulman <rebecka@eazel.com> Fix bugs 4094, 4425, 5201 and 4106 about inappopriate applications being offered to view remote files. This change filters applications that don't support a uri scheme from a file's short list. reviewed by: Pavel Cisler <pavel@eazel.com> * libnautilus-extensions/nautilus-mime-actions.c: (nautilus_mime_actions_get_minimum_file_attributes), (nautilus_mime_get_short_list_applications_for_file), (application_supports_uri_scheme): Filter out applications from the short list that do not support the uri scheme for the file in question. * libnautilus-extensions/nautilus-program-choosing.c: (nautilus_launch_application): Change "can_open_uris" to "expects_uris" to go along with the gnome vfs change * test/test-nautilus-mime-actions.c: (append_comma_and_scheme), (format_supported_uri_schemes_for_display), (print_application): update the tests similarly to the way the gnome-vfs tests were updated, so that all of the fields of the GnomeVFSMimeApplication structure are correctly printed. * libnautilus-extensions/nautilus-glib-extensions.c: Correct spelling and naming error in a comment
Diffstat (limited to 'test/test-nautilus-mime-actions.c')
-rw-r--r--test/test-nautilus-mime-actions.c34
1 files changed, 32 insertions, 2 deletions
diff --git a/test/test-nautilus-mime-actions.c b/test/test-nautilus-mime-actions.c
index 0b6adc1ca..3a4a7866e 100644
--- a/test/test-nautilus-mime-actions.c
+++ b/test/test-nautilus-mime-actions.c
@@ -32,16 +32,46 @@
static gboolean ready = FALSE;
+
+static void
+append_comma_and_scheme (gpointer scheme,
+ gpointer user_data)
+{
+ char **string;
+
+ string = (char **) user_data;
+ if (strlen (*string) > 0) {
+ *string = g_strconcat (*string, ", ", scheme, NULL);
+ }
+ else {
+ *string = g_strdup (scheme);
+ }
+}
+
+
+static char *
+format_supported_uri_schemes_for_display (GList *supported_uri_schemes)
+{
+ char *string;
+
+ string = g_strdup ("");
+ g_list_foreach (supported_uri_schemes,
+ append_comma_and_scheme,
+ &string);
+ return string;
+}
+
static void
print_application (GnomeVFSMimeApplication *application)
{
if (application == NULL) {
puts ("(none)");
} else {
- printf ("name: %s\ncommand: %s\ncan_open_multiple_files: %s\ncan_open_uris: %s\nrequires_terminal: %s\n",
+ printf ("name: %s\ncommand: %s\ncan_open_multiple_files: %s\nexpects_uris: %s\nsupported_uri_schemes: %s\nrequires_terminal: %s\n",
application->name, application->command,
(application->can_open_multiple_files ? "TRUE" : "FALSE"),
- (application->can_open_uris ? "TRUE" : "FALSE"),
+ (application->expects_uris ? "TRUE" : "FALSE"),
+ format_supported_uri_schemes_for_display (application->supported_uri_schemes),
(application->requires_terminal ? "TRUE" : "FALSE"));
}
}