From b29a7ae399c690894f98cc51c9b4adc2a772dddf Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Thu, 19 Nov 2015 12:01:37 -0700 Subject: [PATCH] Gtk+ 3: open library in "global" mode to support the printer dialog Opening a shared object in global mode risks conflicts with other shared objects, but opening only one library that way will hopefully not create conflicts. --- gui-lib/mred/private/wx/gtk/gtk3.rkt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gui-lib/mred/private/wx/gtk/gtk3.rkt b/gui-lib/mred/private/wx/gtk/gtk3.rkt index f903336d..1af38571 100644 --- a/gui-lib/mred/private/wx/gtk/gtk3.rkt +++ b/gui-lib/mred/private/wx/gtk/gtk3.rkt @@ -8,7 +8,9 @@ (define (get-gdk3-lib) (ffi-lib "libgdk-3" '("0" "") #:fail (lambda () #f))) (define (get-gtk3-lib) - (ffi-lib "libgtk-3" '("0" "") #:fail (lambda () #f))) + ;; Open in "global" mode so that gtk_print_operation_run() + ;; can find the printer dialog using _g_module_symbol(): + (ffi-lib "libgtk-3" '("0" "") #:global? #t #:fail (lambda () #f))) (define gtk3? (and (not (getenv "PLT_GTK2"))