Mike Gabriel pushed to branch master at Debian and Ubuntu MATE Packaging Team / marco
Commits:
-
4400765a
by Mike Gabriel at 2023-04-25T15:57:19+02:00
-
d0ff4b33
by Mike Gabriel at 2023-04-25T16:05:14+02:00
-
393f6ea7
by Mike Gabriel at 2023-04-25T16:06:09+02:00
7 changed files:
- + debian/20_marco-debian.gschema.override
- debian/changelog
- debian/marco-common.install
- + debian/patches/0001_test-retval-from-XResQueryClientIds.patch
- + debian/patches/0002_test-xres-1.2-is-present.patch
- + debian/patches/0003_test-if-XResQueryClientIds-is-available.patch
- debian/patches/series
Changes:
1 | +[org.mate.Marco.general]
|
|
2 | +compositing-manager=false |
1 | +marco (1.26.1-2) unstable; urgency=medium
|
|
2 | + |
|
3 | + * debian/patches:
|
|
4 | + + Add patches 0001, 0002 and 0003. Fixes marco crashing when run in an X2Go
|
|
5 | + session. (Closes: #1034677).
|
|
6 | + * debian/{marco-common.install,20_marco-debian.gschema.override}:
|
|
7 | + + Disable compositing manager in marco, hides dark border around windows in
|
|
8 | + X2Go. (Closes: #982879). This also works around screen tearing in MATE
|
|
9 | + desktop when installing MATE in Debian with default settings. (Closes:
|
|
10 | + #1034605).
|
|
11 | + |
|
12 | + -- Mike Gabriel <sunweaver@debian.org> Tue, 25 Apr 2023 15:49:34 +0200
|
|
13 | + |
|
1 | 14 | marco (1.26.1-1) unstable; urgency=medium
|
2 | 15 | |
3 | 16 | * New upstream release.
|
... | ... | @@ -5,3 +5,4 @@ usr/share/marco/ |
5 | 5 | usr/share/mate-control-center/
|
6 | 6 | usr/share/mate/
|
7 | 7 | usr/share/themes/
|
8 | +debian/20_marco-debian.gschema.override usr/share/glib-2.0/schemas/ |
1 | +From 9c8e9564d2f5ed27175c0a6061394c25889dfb31 Mon Sep 17 00:00:00 2001
|
|
2 | +From: Joakim Tjernlund <joakim.tjernlund@infinera.com>
|
|
3 | +Date: Mon, 19 Dec 2022 16:58:10 +0100
|
|
4 | +Subject: [PATCH] test return value from XResQueryClientIds()
|
|
5 | + |
|
6 | +---
|
|
7 | + src/core/window-props.c | 11 ++++++-----
|
|
8 | + 1 file changed, 6 insertions(+), 5 deletions(-)
|
|
9 | + |
|
10 | +diff --git a/src/core/window-props.c b/src/core/window-props.c
|
|
11 | +index 3414a3d9a..b27809ab4 100644
|
|
12 | +--- a/src/core/window-props.c
|
|
13 | ++++ b/src/core/window-props.c
|
|
14 | +@@ -309,11 +309,12 @@ get_local_pid (MetaWindow *window)
|
|
15 | + spec.client = window->xwindow;
|
|
16 | + spec.mask = XRES_CLIENT_ID_PID_MASK;
|
|
17 | +
|
|
18 | +- XResQueryClientIds (window->display->xdisplay,
|
|
19 | +- 1,
|
|
20 | +- &spec,
|
|
21 | +- &num_ids,
|
|
22 | +- &client_ids);
|
|
23 | ++ if (!XResQueryClientIds (window->display->xdisplay,
|
|
24 | ++ 1,
|
|
25 | ++ &spec,
|
|
26 | ++ &num_ids,
|
|
27 | ++ &client_ids))
|
|
28 | ++ return pid;
|
|
29 | +
|
|
30 | + for (i = 0; i < num_ids; i++)
|
|
31 | + { |
1 | +From 066888715066fbc4625612c8738c32b66666ceee Mon Sep 17 00:00:00 2001
|
|
2 | +From: Joakim Tjernlund <joakim.tjernlund@infinera.com>
|
|
3 | +Date: Mon, 19 Dec 2022 16:59:06 +0100
|
|
4 | +Subject: [PATCH] Test Xres 1.2 is present
|
|
5 | + |
|
6 | +Before using any Xres extension one must call XResQueryExtension()
|
|
7 | +Also make sure Xres 1.2 is available as marco need XResQueryClientIds()
|
|
8 | +---
|
|
9 | + src/core/display-private.h | 1 +
|
|
10 | + src/core/display.c | 14 ++++++++++++--
|
|
11 | + 2 files changed, 13 insertions(+), 2 deletions(-)
|
|
12 | + |
|
13 | +--- a/src/core/display-private.h
|
|
14 | ++++ b/src/core/display-private.h
|
|
15 | +@@ -80,6 +80,7 @@
|
|
16 | + struct _MetaDisplay {
|
|
17 | + char* name;
|
|
18 | + Display* xdisplay;
|
|
19 | ++ gboolean have_xres; /* Got XRES >= 1.2 */
|
|
20 | +
|
|
21 | + Window leader_window;
|
|
22 | + Window timestamp_pinging_window;
|
|
23 | +--- a/src/core/display.c
|
|
24 | ++++ b/src/core/display.c
|
|
25 | +@@ -50,6 +50,7 @@
|
|
26 | + #include "compositor.h"
|
|
27 | + #include <X11/Xatom.h>
|
|
28 | + #include <X11/cursorfont.h>
|
|
29 | ++#include <X11/extensions/XRes.h>
|
|
30 | +
|
|
31 | + #ifdef HAVE_SOLARIS_XINERAMA
|
|
32 | + #include <X11/extensions/xinerama.h>
|
|
33 | +@@ -329,7 +330,8 @@
|
|
34 | + Display *xdisplay;
|
|
35 | + GSList *screens;
|
|
36 | + GSList *tmp;
|
|
37 | +- int i;
|
|
38 | ++ int i, event_base, error_base, major, minor;
|
|
39 | ++ gboolean have_xres = FALSE;
|
|
40 | + guint32 timestamp;
|
|
41 | +
|
|
42 | + /* A list of all atom names, so that we can intern them in one go. */
|
|
43 | +@@ -343,6 +345,7 @@
|
|
44 | + meta_verbose ("Opening display '%s'\n", XDisplayName (NULL));
|
|
45 | +
|
|
46 | + xdisplay = meta_ui_get_display ();
|
|
47 | ++ event_base = error_base = major = minor = 0;
|
|
48 | +
|
|
49 | + if (xdisplay == NULL)
|
|
50 | + {
|
|
51 | +@@ -350,7 +353,13 @@
|
|
52 | + XDisplayName (NULL));
|
|
53 | + return FALSE;
|
|
54 | + }
|
|
55 | +-
|
|
56 | ++ /* Make sure to init Xres any extensions */
|
|
57 | ++ if (XResQueryExtension(xdisplay, &event_base, &error_base) &&
|
|
58 | ++ XResQueryVersion (xdisplay, &major, &minor) == 1)
|
|
59 | ++ {
|
|
60 | ++ if (major > 1 || (major == 1 && minor >= 2))
|
|
61 | ++ have_xres = TRUE;
|
|
62 | ++ }
|
|
63 | + if (meta_is_syncing ())
|
|
64 | + XSynchronize (xdisplay, True);
|
|
65 | +
|
|
66 | +@@ -365,6 +374,7 @@
|
|
67 | + */
|
|
68 | + the_display->name = g_strdup (XDisplayName (NULL));
|
|
69 | + the_display->xdisplay = xdisplay;
|
|
70 | ++ the_display->have_xres = have_xres;
|
|
71 | + the_display->error_trap_synced_at_last_pop = TRUE;
|
|
72 | + the_display->error_traps = 0;
|
|
73 | + the_display->error_trap_handler = NULL; |
1 | +From 6cc8a2ff1e80d55d8edd7cd9c605bd068e83a72b Mon Sep 17 00:00:00 2001
|
|
2 | +From: Joakim Tjernlund <joakim.tjernlund@infinera.com>
|
|
3 | +Date: Thu, 29 Dec 2022 14:51:57 +0100
|
|
4 | +Subject: [PATCH] Test if XResQueryClientIds() is available before using it.
|
|
5 | + |
|
6 | +Needed for X2Go as it does not have XRES 1.2 extension.
|
|
7 | +---
|
|
8 | + src/core/window-props.c | 2 ++
|
|
9 | + 1 file changed, 2 insertions(+)
|
|
10 | + |
|
11 | +diff --git a/src/core/window-props.c b/src/core/window-props.c
|
|
12 | +index b27809ab4..06df9e660 100644
|
|
13 | +--- a/src/core/window-props.c
|
|
14 | ++++ b/src/core/window-props.c
|
|
15 | +@@ -305,6 +305,8 @@ get_local_pid (MetaWindow *window)
|
|
16 | + long i;
|
|
17 | +
|
|
18 | + pid = -1;
|
|
19 | ++ if (window->display->have_xres == FALSE)
|
|
20 | ++ return pid;
|
|
21 | +
|
|
22 | + spec.client = window->xwindow;
|
|
23 | + spec.mask = XRES_CLIENT_ID_PID_MASK; |
1 | 1 | |
2 | 2 | 0000_shadows.patch
|
3 | 3 | 1001_marco-Add-cmdline-option-no-keybindings-for-disablin.patch
|
4 | +0001_test-retval-from-XResQueryClientIds.patch
|
|
5 | +0002_test-xres-1.2-is-present.patch
|
|
6 | +0003_test-if-XResQueryClientIds-is-available.patch |