|
Peter Oliver |
16d205 |
From 7099578f18b1ea6a168b1883fa7a4ac7f49fc08f Mon Sep 17 00:00:00 2001
|
|
Peter Oliver |
16d205 |
From: Peter Oliver <git@mavit.org.uk>
|
|
Peter Oliver |
16d205 |
Date: Sun, 14 Jul 2024 20:47:14 +0100
|
|
Peter Oliver |
16d205 |
Subject: [PATCH 2/2] Fall back to the terminal from pure GTK when no display
|
|
Peter Oliver |
16d205 |
is available
|
|
Peter Oliver |
16d205 |
MIME-Version: 1.0
|
|
Peter Oliver |
16d205 |
Content-Type: text/plain; charset=UTF-8
|
|
Peter Oliver |
16d205 |
Content-Transfer-Encoding: 8bit
|
|
Peter Oliver |
16d205 |
|
|
Peter Oliver |
16d205 |
* src/dispnew.c (init_display_interactive): Only use PGTK windowing if
|
|
Peter Oliver |
16d205 |
at least one of the environment variables WAYLAND_DISPLAY, DISPLAY,
|
|
Peter Oliver |
16d205 |
BROADWAY_DISPLAY is set. (Bug#63555)
|
|
Peter Oliver |
16d205 |
|
|
Peter Oliver |
16d205 |
This patch is not suitable for merging, because it doesn’t consider
|
|
Peter Oliver |
16d205 |
what happens if you try to use PGTK on Windows or MacOS.
|
|
Peter Oliver |
16d205 |
---
|
|
Peter Oliver |
16d205 |
src/dispnew.c | 29 ++++++++++++++++++++++++++---
|
|
Peter Oliver |
16d205 |
1 file changed, 26 insertions(+), 3 deletions(-)
|
|
Peter Oliver |
16d205 |
|
|
Peter Oliver |
16d205 |
diff --git a/src/dispnew.c b/src/dispnew.c
|
|
Peter Oliver |
16d205 |
index 7cf2b49273c..481d33a7302 100644
|
|
Peter Oliver |
16d205 |
--- a/src/dispnew.c
|
|
Peter Oliver |
16d205 |
+++ b/src/dispnew.c
|
|
Peter Oliver |
16d205 |
@@ -6557,10 +6557,33 @@ init_display_interactive (void)
|
|
Peter Oliver |
16d205 |
#endif
|
|
Peter Oliver |
16d205 |
|
|
Peter Oliver |
16d205 |
#ifdef HAVE_PGTK
|
|
Peter Oliver |
16d205 |
- if (!inhibit_window_system && !will_dump_p ())
|
|
Peter Oliver |
16d205 |
+ if (!inhibit_window_system)
|
|
Peter Oliver |
16d205 |
{
|
|
Peter Oliver |
16d205 |
- Vinitial_window_system = Qpgtk;
|
|
Peter Oliver |
16d205 |
- return;
|
|
Peter Oliver |
16d205 |
+ if (!display_arg && !will_dump_p ())
|
|
Peter Oliver |
16d205 |
+ {
|
|
Peter Oliver |
16d205 |
+ int i;
|
|
Peter Oliver |
16d205 |
+ const char *gdk_display_variables[] = {
|
|
Peter Oliver |
16d205 |
+ "WAYLAND_DISPLAY",
|
|
Peter Oliver |
16d205 |
+ "DISPLAY",
|
|
Peter Oliver |
16d205 |
+ "BROADWAY_DISPLAY",
|
|
Peter Oliver |
16d205 |
+ };
|
|
Peter Oliver |
16d205 |
+ size_t n = ARRAYELTS (gdk_display_variables);
|
|
Peter Oliver |
16d205 |
+
|
|
Peter Oliver |
16d205 |
+ for (i = 0; i < n; i++)
|
|
Peter Oliver |
16d205 |
+ {
|
|
Peter Oliver |
16d205 |
+ char *display;
|
|
Peter Oliver |
16d205 |
+ display = getenv (gdk_display_variables[i]);
|
|
Peter Oliver |
16d205 |
+ if (display != 0 && *display != 0)
|
|
Peter Oliver |
16d205 |
+ {
|
|
Peter Oliver |
16d205 |
+ display_arg = 1;
|
|
Peter Oliver |
16d205 |
+ break;
|
|
Peter Oliver |
16d205 |
+ }
|
|
Peter Oliver |
16d205 |
+ }
|
|
Peter Oliver |
16d205 |
+ }
|
|
Peter Oliver |
16d205 |
+ if (display_arg) {
|
|
Peter Oliver |
16d205 |
+ Vinitial_window_system = Qpgtk;
|
|
Peter Oliver |
16d205 |
+ return;
|
|
Peter Oliver |
16d205 |
+ }
|
|
Peter Oliver |
16d205 |
}
|
|
Peter Oliver |
16d205 |
#endif
|
|
Peter Oliver |
16d205 |
|
|
Peter Oliver |
16d205 |
--
|
|
Peter Oliver |
16d205 |
2.45.2
|
|
Peter Oliver |
16d205 |
|