Blame SOURCES/0005-Use-GtkFileChooserNative-instead-of-GtkFileChooserDi.patch

f3fb5a
From 41c04d1c5ee84b1f42a9fabf7623a98ff02b9bf1 Mon Sep 17 00:00:00 2001
f3fb5a
From: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
f3fb5a
Date: Fri, 10 Jul 2020 04:37:55 +0200
f3fb5a
Subject: [PATCH 05/18] Use GtkFileChooserNative instead of
f3fb5a
 GtkFileChooserDialog
f3fb5a
f3fb5a
This class allows it to work even in containers.
f3fb5a
f3fb5a
---
f3fb5a
 src/gui/engine.cc | 13 ++++++-------
f3fb5a
 1 file changed, 6 insertions(+), 7 deletions(-)
f3fb5a
f3fb5a
diff --git a/src/gui/engine.cc b/src/gui/engine.cc
f3fb5a
index 2d2e58bb9a21..21e446e0359d 100644
f3fb5a
--- a/src/gui/engine.cc
f3fb5a
+++ b/src/gui/engine.cc
f3fb5a
@@ -460,7 +460,7 @@ static void redirect_cout(std::ofstream &out, bool enable = true)
f3fb5a
 void save_as(GtkWidget *mainwindow)
f3fb5a
 {
f3fb5a
   struct utsname buf;
f3fb5a
-  GtkWidget *dialog = NULL;
f3fb5a
+  GtkFileChooserNative *dialog = NULL;
f3fb5a
   GtkWidget *sanitize = NULL;
f3fb5a
   GtkFileFilter *filter = NULL;
f3fb5a
   bool proceed = true;
f3fb5a
@@ -469,12 +469,11 @@ void save_as(GtkWidget *mainwindow)
f3fb5a
   if(!computer)		// nothing to save
f3fb5a
     return;
f3fb5a
 
f3fb5a
-  dialog = gtk_file_chooser_dialog_new ("Save hardware configuration",
f3fb5a
+  dialog = gtk_file_chooser_native_new ("Save hardware configuration",
f3fb5a
 				      GTK_WINDOW(mainwindow),
f3fb5a
 				      GTK_FILE_CHOOSER_ACTION_SAVE,
f3fb5a
-				      GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
f3fb5a
-				      GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT,
f3fb5a
-				      NULL);
f3fb5a
+				      "_Save",
f3fb5a
+				      "_Cancel");
f3fb5a
   //gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE);
f3fb5a
   sanitize = gtk_check_button_new_with_label("Anonymize output");
f3fb5a
   gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sanitize), enabled("output:sanitize")?TRUE:FALSE);
f3fb5a
@@ -511,7 +510,7 @@ void save_as(GtkWidget *mainwindow)
f3fb5a
   if(uname(&buf)==0)
f3fb5a
     gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (dialog), buf.nodename);
f3fb5a
 
f3fb5a
-  if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT)
f3fb5a
+  if (gtk_native_dialog_run (GTK_NATIVE_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT)
f3fb5a
   {
f3fb5a
     char *filename;
f3fb5a
 
f3fb5a
@@ -603,5 +602,5 @@ void save_as(GtkWidget *mainwindow)
f3fb5a
     }
f3fb5a
   }
f3fb5a
 
f3fb5a
-  gtk_widget_destroy (dialog);
f3fb5a
+  g_object_unref (dialog);
f3fb5a
 }
f3fb5a
-- 
f3fb5a
2.17.1
f3fb5a