summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2018-09-17 18:50:39 -0400
committerMatthias Clasen <mclasen@redhat.com>2018-09-17 18:51:46 -0400
commit87dd0ca26392dc4c26cac32b9d2b503c7baa7cec (patch)
tree2ffb0204e89d54d7429168a0eb5099477fb70ad9
parentd6b3f03c9aa6787a1cd804522ccc75450081b2ed (diff)
downloadeog-native-filechooser.tar.gz
Use a native file choosernative-filechooser
This makes eog work in a sandboxed environment.
-rw-r--r--src/eog-window.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/eog-window.c b/src/eog-window.c
index 4e913271..e40979fb 100644
--- a/src/eog-window.c
+++ b/src/eog-window.c
@@ -1673,7 +1673,7 @@ view_zoom_changed_cb (GtkWidget *widget, double zoom, gpointer user_data)
}
static void
-file_open_dialog_response_cb (GtkWidget *chooser,
+file_open_dialog_response_cb (GtkNativeDialog *chooser,
gint response_id,
EogWindow *ev_window)
{
@@ -1692,7 +1692,7 @@ file_open_dialog_response_cb (GtkWidget *chooser,
g_slist_free (uris);
}
- gtk_widget_destroy (chooser);
+ gtk_native_dialog_destroy (chooser);
}
static void
@@ -2265,7 +2265,7 @@ eog_window_action_file_open (GSimpleAction *action,
EogWindow *window;
EogWindowPrivate *priv;
EogImage *current;
- GtkWidget *dlg;
+ GtkFileChooserNative *dlg;
g_return_if_fail (EOG_IS_WINDOW (user_data));
@@ -2273,8 +2273,12 @@ eog_window_action_file_open (GSimpleAction *action,
priv = window->priv;
- dlg = eog_file_chooser_new (GTK_FILE_CHOOSER_ACTION_OPEN);
- gtk_window_set_transient_for (GTK_WINDOW (dlg), GTK_WINDOW (window));
+ dlg = gtk_file_chooser_native_new (_("Open Image"),
+ GTK_WINDOW (window),
+ GTK_FILE_CHOOSER_ACTION_OPEN,
+ _("_Open"),
+ _("_Cancel"));
+ gtk_native_dialog_set_modal (GTK_NATIVE_DIALOG (dlg), TRUE);
current = eog_thumb_view_get_first_selected_image (EOG_THUMB_VIEW (priv->thumbview));
@@ -2308,7 +2312,7 @@ eog_window_action_file_open (GSimpleAction *action,
G_CALLBACK (file_open_dialog_response_cb),
window);
- gtk_widget_show_all (dlg);
+ gtk_native_dialog_show (GTK_NATIVE_DIALOG (dlg));
}
static void