gchar *try_exec;
GtkTreeIter iter;
gboolean category_geeqie = FALSE;
+ GList *work;
+ gboolean disabled;
if (g_hash_table_lookup(editors, key)) return FALSE; /* the file found earlier wins */
if (editor->ignored) return TRUE;
+ work = options->disabled_plugins;
+
+ disabled = FALSE;
+ while (work)
+ {
+ if (g_strcmp0(path, work->data) == 0)
+ {
+ disabled = TRUE;
+ break;
+ }
+ work = work->next;
+ }
+
+ editor->disabled = disabled;
+
gtk_list_store_append(desktop_file_list, &iter);
gtk_list_store_set(desktop_file_list, &iter,
DESKTOP_FILE_COLUMN_KEY, key,
+ DESKTOP_FILE_COLUMN_DISABLED, editor->disabled,
DESKTOP_FILE_COLUMN_NAME, editor->name,
DESKTOP_FILE_COLUMN_HIDDEN, editor->hidden ? _("yes") : _("no"),
DESKTOP_FILE_COLUMN_WRITABLE, access_file(path, W_OK),
}
else
{
- desktop_file_list = gtk_list_store_new(DESKTOP_FILE_COLUMN_COUNT, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_STRING);
+ desktop_file_list = gtk_list_store_new(DESKTOP_FILE_COLUMN_COUNT, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_STRING);
}
if (editors)
{
strcmp(editor->key, CMD_DELETE) == 0 ||
strcmp(editor->key, CMD_FOLDER) == 0) return;
+ if (editor->disabled)
+ {
+ return;
+ }
+
*listp = g_list_prepend(*listp, editor);
}