summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntonin Décimo2021-11-01 10:57:42 +0100
committerAntonin Décimo2021-11-01 10:57:42 +0100
commit7d7f8ff770ea0c10524320d5699e9648980b9c9d (patch)
tree4b3d538a692578f0f020ccdb5d4cdf274bf5b7b7
parent7e7a43d203f76676db93b990ba71cf4cc1e529ef (diff)
downloadaur-7d7f8ff770ea0c10524320d5699e9648980b9c9d.tar.gz
Rebase xwlScaling branch
-rw-r--r--.SRCINFO4
-rw-r--r--PKGBUILD4
-rw-r--r--xwlScaling.diff83
3 files changed, 39 insertions, 52 deletions
diff --git a/.SRCINFO b/.SRCINFO
index f8dfd099563a..80bdd74cf787 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = xorg-xwayland-hidpi-git
pkgdesc = Run X clients under Wayland, with HiDPI (git version)
- pkgver = 21.1.2.901.r270.gccffe90c3
+ pkgver = 21.1.2.901.r274.gc97397dc4
pkgrel = 1
url = https://xorg.freedesktop.org
arch = x86_64
@@ -41,6 +41,6 @@ pkgbase = xorg-xwayland-hidpi-git
source = xserver::git+https://gitlab.freedesktop.org/xorg/xserver.git
source = xwlScaling.diff
sha256sums = SKIP
- sha256sums = 3b5b20e8402948bca050d4d91d6733abfcc7e1a1644baa052f2c9196285c7667
+ sha256sums = 66135299c9d13e46444f8f32281cdc3f616c3a77f69bf13d798077e643992d2a
pkgname = xorg-xwayland-hidpi-git
diff --git a/PKGBUILD b/PKGBUILD
index 044ee781e84f..c6ebe6edb6b9 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,7 +2,7 @@
# Contributor: AndyRTR <andyrtr@archlinux.org>
pkgname=xorg-xwayland-hidpi-git
-pkgver=21.1.2.901.r270.gccffe90c3
+pkgver=21.1.2.901.r274.gc97397dc4
pkgrel=1
arch=('x86_64')
license=('custom')
@@ -23,7 +23,7 @@ makedepends=('meson' 'git'
source=("xserver::git+https://gitlab.freedesktop.org/xorg/xserver.git"
'xwlScaling.diff')
sha256sums=('SKIP'
- '3b5b20e8402948bca050d4d91d6733abfcc7e1a1644baa052f2c9196285c7667')
+ '66135299c9d13e46444f8f32281cdc3f616c3a77f69bf13d798077e643992d2a')
provides=('xorg-xwayland' 'xorg-server-xwayland' 'xorg-server-xwayland-git' 'xorg-server-xwayland-hidpi-git')
conflicts=('xorg-xwayland' 'xorg-server-xwayland' 'xorg-server-xwayland-git' 'xorg-server-xwayland-hidpi-git')
replaces=('xorg-server-xwayland-hidpi-git')
diff --git a/xwlScaling.diff b/xwlScaling.diff
index 88bda1018c3f..6270e50d922c 100644
--- a/xwlScaling.diff
+++ b/xwlScaling.diff
@@ -1,16 +1,3 @@
-diff --git a/hw/xwayland/Makefile.am b/hw/xwayland/Makefile.am
-index 088ec5e66..7e679bf56 100644
---- a/hw/xwayland/Makefile.am
-+++ b/hw/xwayland/Makefile.am
-@@ -20,6 +20,8 @@ Xwayland_SOURCES = \
- xwayland-input.h \
- xwayland-cursor.c \
- xwayland-cursor.h \
-+ xwayland-ext.c \
-+ xwayland-ext.h \
- xwayland-glamor.h \
- xwayland-glx.h \
- xwayland-pixmap.c \
diff --git a/hw/xwayland/meson.build b/hw/xwayland/meson.build
index 1dea64bff..7b3d3a4f7 100644
--- a/hw/xwayland/meson.build
@@ -25,10 +12,10 @@ index 1dea64bff..7b3d3a4f7 100644
'xwayland-glx.h',
'xwayland-pixmap.c',
diff --git a/hw/xwayland/xwayland-cursor.c b/hw/xwayland/xwayland-cursor.c
-index c4457cc2a..da4bcea02 100644
+index 16c13fb64..a88a3d311 100644
--- a/hw/xwayland/xwayland-cursor.c
+++ b/hw/xwayland/xwayland-cursor.c
-@@ -171,6 +171,8 @@ xwl_cursor_attach_pixmap(struct xwl_seat *xwl_seat,
+@@ -162,6 +162,8 @@ xwl_cursor_attach_pixmap(struct xwl_seat *xwl_seat,
}
wl_surface_attach(xwl_cursor->surface, buffer, 0, 0);
@@ -37,7 +24,7 @@ index c4457cc2a..da4bcea02 100644
xwl_surface_damage(xwl_seat->xwl_screen, xwl_cursor->surface, 0, 0,
xwl_seat->x_cursor->bits->width,
xwl_seat->x_cursor->bits->height);
-@@ -190,6 +192,7 @@ xwl_cursor_attach_pixmap(struct xwl_seat *xwl_seat,
+@@ -193,6 +195,7 @@ xwl_cursor_clear_frame_cb(struct xwl_cursor *xwl_cursor)
void
xwl_seat_set_cursor(struct xwl_seat *xwl_seat)
{
@@ -45,7 +32,7 @@ index c4457cc2a..da4bcea02 100644
struct xwl_cursor *xwl_cursor = &xwl_seat->cursor;
PixmapPtr pixmap;
CursorPtr cursor;
-@@ -220,8 +223,8 @@ xwl_seat_set_cursor(struct xwl_seat *xwl_seat)
+@@ -223,8 +226,8 @@ xwl_seat_set_cursor(struct xwl_seat *xwl_seat)
wl_pointer_set_cursor(xwl_seat->wl_pointer,
xwl_seat->pointer_enter_serial,
xwl_cursor->surface,
@@ -56,7 +43,7 @@ index c4457cc2a..da4bcea02 100644
xwl_cursor_attach_pixmap(xwl_seat, xwl_cursor, pixmap);
}
-@@ -230,6 +233,7 @@ void
+@@ -233,6 +236,7 @@ void
xwl_tablet_tool_set_cursor(struct xwl_tablet_tool *xwl_tablet_tool)
{
struct xwl_seat *xwl_seat = xwl_tablet_tool->seat;
@@ -64,7 +51,7 @@ index c4457cc2a..da4bcea02 100644
struct xwl_cursor *xwl_cursor = &xwl_tablet_tool->cursor;
PixmapPtr pixmap;
CursorPtr cursor;
-@@ -258,8 +262,8 @@ xwl_tablet_tool_set_cursor(struct xwl_tablet_tool *xwl_tablet_tool)
+@@ -261,8 +265,8 @@ xwl_tablet_tool_set_cursor(struct xwl_tablet_tool *xwl_tablet_tool)
zwp_tablet_tool_v2_set_cursor(xwl_tablet_tool->tool,
xwl_tablet_tool->proximity_in_serial,
xwl_cursor->surface,
@@ -298,7 +285,7 @@ index 000000000..be8fb39d9
+
+#endif /* XWAYLAND_EXT_H */
diff --git a/hw/xwayland/xwayland-input.c b/hw/xwayland/xwayland-input.c
-index 26b3630c7..86711e685 100644
+index f5c24048f..946272fd3 100644
--- a/hw/xwayland/xwayland-input.c
+++ b/hw/xwayland/xwayland-input.c
@@ -412,8 +412,8 @@ pointer_handle_enter(void *data, struct wl_pointer *pointer,
@@ -312,7 +299,7 @@ index 26b3630c7..86711e685 100644
int dx, dy;
ScreenPtr pScreen = xwl_seat->xwl_screen->screen;
ValuatorMask mask;
-@@ -592,13 +592,14 @@ pointer_handle_motion(void *data, struct wl_pointer *pointer,
+@@ -589,13 +589,14 @@ pointer_handle_motion(void *data, struct wl_pointer *pointer,
uint32_t time, wl_fixed_t sx_w, wl_fixed_t sy_w)
{
struct xwl_seat *xwl_seat = data;
@@ -329,7 +316,7 @@ index 26b3630c7..86711e685 100644
if (wl_proxy_get_version((struct wl_proxy *) xwl_seat->wl_pointer) < 5)
dispatch_pointer_motion_event(xwl_seat);
-@@ -672,7 +673,8 @@ pointer_handle_axis(void *data, struct wl_pointer *pointer,
+@@ -669,7 +670,8 @@ pointer_handle_axis(void *data, struct wl_pointer *pointer,
xorg_list_del(&pending->l);
free(pending);
} else {
@@ -339,7 +326,7 @@ index 26b3630c7..86711e685 100644
}
QueuePointerEvents(get_pointer_device(xwl_seat),
-@@ -740,12 +742,13 @@ relative_pointer_handle_relative_motion(void *data,
+@@ -737,12 +739,13 @@ relative_pointer_handle_relative_motion(void *data,
wl_fixed_t dy_unaccelf)
{
struct xwl_seat *xwl_seat = data;
@@ -357,7 +344,7 @@ index 26b3630c7..86711e685 100644
if (!xwl_seat->focus_window)
return;
-@@ -1057,8 +1060,8 @@ touch_handle_down(void *data, struct wl_touch *wl_touch,
+@@ -1054,8 +1057,8 @@ touch_handle_down(void *data, struct wl_touch *wl_touch,
xwl_touch->window = wl_surface_get_user_data(surface);
xwl_touch->id = id;
@@ -368,7 +355,7 @@ index 26b3630c7..86711e685 100644
xorg_list_add(&xwl_touch->link_touch, &xwl_seat->touches);
xwl_touch_send_event(xwl_touch, xwl_seat, XI_TouchBegin);
-@@ -1094,8 +1097,8 @@ touch_handle_motion(void *data, struct wl_touch *wl_touch,
+@@ -1091,8 +1094,8 @@ touch_handle_motion(void *data, struct wl_touch *wl_touch,
if (!xwl_touch)
return;
@@ -379,7 +366,7 @@ index 26b3630c7..86711e685 100644
xwl_touch_send_event(xwl_touch, xwl_seat, XI_TouchUpdate);
}
-@@ -1726,8 +1729,8 @@ tablet_tool_motion(void *data, struct zwp_tablet_tool_v2 *tool,
+@@ -1719,8 +1722,8 @@ tablet_tool_motion(void *data, struct zwp_tablet_tool_v2 *tool,
struct xwl_tablet_tool *xwl_tablet_tool = data;
struct xwl_seat *xwl_seat = xwl_tablet_tool->seat;
int32_t dx, dy;
@@ -390,7 +377,7 @@ index 26b3630c7..86711e685 100644
if (!xwl_seat->tablet_focus_window)
return;
-@@ -2714,6 +2717,7 @@ xwl_pointer_warp_emulator_set_fake_pos(struct xwl_pointer_warp_emulator *warp_em
+@@ -2707,6 +2710,7 @@ xwl_pointer_warp_emulator_set_fake_pos(struct xwl_pointer_warp_emulator *warp_em
int x,
int y)
{
@@ -398,7 +385,7 @@ index 26b3630c7..86711e685 100644
struct zwp_locked_pointer_v1 *locked_pointer =
warp_emulator->locked_pointer;
WindowPtr window;
-@@ -2725,6 +2729,7 @@ xwl_pointer_warp_emulator_set_fake_pos(struct xwl_pointer_warp_emulator *warp_em
+@@ -2718,6 +2722,7 @@ xwl_pointer_warp_emulator_set_fake_pos(struct xwl_pointer_warp_emulator *warp_em
if (!warp_emulator->xwl_seat->focus_window)
return;
@@ -406,7 +393,7 @@ index 26b3630c7..86711e685 100644
window = warp_emulator->xwl_seat->focus_window->window;
if (x >= window->drawable.x ||
y >= window->drawable.y ||
-@@ -2733,8 +2738,8 @@ xwl_pointer_warp_emulator_set_fake_pos(struct xwl_pointer_warp_emulator *warp_em
+@@ -2726,8 +2731,8 @@ xwl_pointer_warp_emulator_set_fake_pos(struct xwl_pointer_warp_emulator *warp_em
sx = x - window->drawable.x;
sy = y - window->drawable.y;
zwp_locked_pointer_v1_set_cursor_position_hint(locked_pointer,
@@ -418,7 +405,7 @@ index 26b3630c7..86711e685 100644
}
}
diff --git a/hw/xwayland/xwayland-output.c b/hw/xwayland/xwayland-output.c
-index d4634467d..b27bad110 100644
+index 1f22c4cf6..a5a502aa0 100644
--- a/hw/xwayland/xwayland-output.c
+++ b/hw/xwayland/xwayland-output.c
@@ -191,6 +191,9 @@ update_screen_size(struct xwl_output *xwl_output, int width, int height)
@@ -431,8 +418,8 @@ index d4634467d..b27bad110 100644
if (xwl_screen->root_clip_mode == ROOT_CLIP_FULL)
SetRootClip(xwl_screen->screen, ROOT_CLIP_NONE);
-@@ -495,14 +498,15 @@ xwl_output_set_emulated_mode(struct xwl_output *xwl_output, ClientPtr client,
- xwl_output_set_randr_emu_props(xwl_output->xwl_screen, client);
+@@ -591,14 +594,15 @@ xwl_output_set_emulated_mode(struct xwl_output *xwl_output, ClientPtr client,
+ new_emulated_height);
}
-static void
@@ -449,7 +436,7 @@ index d4634467d..b27bad110 100644
/* Clear out the "done" received flags */
xwl_output->wl_output_done = FALSE;
-@@ -521,10 +525,10 @@ apply_output_change(struct xwl_output *xwl_output)
+@@ -617,10 +621,10 @@ apply_output_change(struct xwl_output *xwl_output)
}
/* Build a fresh modes array using the current refresh rate */
@@ -462,7 +449,7 @@ index d4634467d..b27bad110 100644
xwl_output->rotation, NULL, 1, &xwl_output->randr_output);
/* RROutputSetModes takes ownership of the passed in modes, so we only
* have to free the pointer array.
-@@ -565,7 +569,7 @@ output_handle_done(void *data, struct wl_output *wl_output)
+@@ -661,7 +665,7 @@ output_handle_done(void *data, struct wl_output *wl_output)
*/
if (xwl_output->xdg_output_done || !xwl_output->xdg_output ||
zxdg_output_v1_get_version(xwl_output->xdg_output) >= 3)
@@ -471,7 +458,7 @@ index d4634467d..b27bad110 100644
}
static void
-@@ -608,7 +612,7 @@ xdg_output_handle_done(void *data, struct zxdg_output_v1 *xdg_output)
+@@ -704,7 +708,7 @@ xdg_output_handle_done(void *data, struct zxdg_output_v1 *xdg_output)
xwl_output->xdg_output_done = TRUE;
if (xwl_output->wl_output_done &&
zxdg_output_v1_get_version(xdg_output) < 3)
@@ -480,9 +467,9 @@ index d4634467d..b27bad110 100644
}
static void
-@@ -675,6 +679,8 @@ xwl_output_create(struct xwl_screen *xwl_screen, uint32_t id)
- RROutputSetCrtcs(xwl_output->randr_output, &xwl_output->randr_crtc, 1);
+@@ -772,6 +776,8 @@ xwl_output_create(struct xwl_screen *xwl_screen, uint32_t id)
RROutputSetConnection(xwl_output->randr_output, RR_Connected);
+ RRTellChanged(xwl_screen->screen);
+ xwl_output->scale = 1;
+
@@ -512,10 +499,10 @@ index 02b983108..ec089757f 100644
#endif /* XWAYLAND_OUTPUT_H */
diff --git a/hw/xwayland/xwayland-present.c b/hw/xwayland/xwayland-present.c
-index 83d67517a..f73080ac2 100644
+index 69c02dce4..6a0670892 100644
--- a/hw/xwayland/xwayland-present.c
+++ b/hw/xwayland/xwayland-present.c
-@@ -475,6 +475,7 @@ xwl_present_flip(WindowPtr present_window,
+@@ -680,6 +680,7 @@ xwl_present_flip(WindowPtr present_window,
/* We can flip directly to the main surface (full screen window without clips) */
wl_surface_attach(xwl_window->surface, buffer, 0, 0);
@@ -524,10 +511,10 @@ index 83d67517a..f73080ac2 100644
if (!xwl_window->frame_callback)
xwl_window_create_frame_callback(xwl_window);
diff --git a/hw/xwayland/xwayland-screen.c b/hw/xwayland/xwayland-screen.c
-index c18e2fbb5..3be3674f5 100644
+index b39a3d2fd..78b5bef59 100644
--- a/hw/xwayland/xwayland-screen.c
+++ b/hw/xwayland/xwayland-screen.c
-@@ -106,6 +106,12 @@ xwl_screen_has_resolution_change_emulation(struct xwl_screen *xwl_screen)
+@@ -110,6 +110,12 @@ xwl_screen_has_resolution_change_emulation(struct xwl_screen *xwl_screen)
return xwl_screen->rootless && xwl_screen_has_viewport_support(xwl_screen);
}
@@ -540,7 +527,7 @@ index c18e2fbb5..3be3674f5 100644
/* Return the output @ 0x0, falling back to the first output in the list */
struct xwl_output *
xwl_screen_get_first_output(struct xwl_screen *xwl_screen)
-@@ -517,8 +523,14 @@ void xwl_surface_damage(struct xwl_screen *xwl_screen,
+@@ -521,8 +527,14 @@ void xwl_surface_damage(struct xwl_screen *xwl_screen,
{
if (wl_surface_get_version(surface) >= WL_SURFACE_DAMAGE_BUFFER_SINCE_VERSION)
wl_surface_damage_buffer(surface, x, y, width, height);
@@ -556,7 +543,7 @@ index c18e2fbb5..3be3674f5 100644
}
void
-@@ -534,6 +546,18 @@ xwl_screen_roundtrip(struct xwl_screen *xwl_screen)
+@@ -538,6 +550,18 @@ xwl_screen_roundtrip(struct xwl_screen *xwl_screen)
xwl_give_up("could not connect to wayland server\n");
}
@@ -575,7 +562,7 @@ index c18e2fbb5..3be3674f5 100644
Bool
xwl_screen_init(ScreenPtr pScreen, int argc, char **argv)
{
-@@ -569,6 +593,7 @@ xwl_screen_init(ScreenPtr pScreen, int argc, char **argv)
+@@ -573,6 +597,7 @@ xwl_screen_init(ScreenPtr pScreen, int argc, char **argv)
#ifdef XWL_HAS_GLAMOR
xwl_screen->glamor = 1;
#endif
@@ -584,7 +571,7 @@ index c18e2fbb5..3be3674f5 100644
for (i = 1; i < argc; i++) {
if (strcmp(argv[i], "-rootless") == 0) {
diff --git a/hw/xwayland/xwayland-screen.h b/hw/xwayland/xwayland-screen.h
-index 5fe4712bd..c0862528b 100644
+index b965dddd7..6cfc441e3 100644
--- a/hw/xwayland/xwayland-screen.h
+++ b/hw/xwayland/xwayland-screen.h
@@ -72,6 +72,8 @@ struct xwl_screen {
@@ -596,7 +583,7 @@ index 5fe4712bd..c0862528b 100644
int wayland_fd;
struct wl_display *display;
struct wl_registry *registry;
-@@ -131,5 +133,7 @@ void xwl_screen_roundtrip (struct xwl_screen *xwl_screen);
+@@ -134,5 +136,7 @@ void xwl_screen_roundtrip (struct xwl_screen *xwl_screen);
void xwl_surface_damage(struct xwl_screen *xwl_screen,
struct wl_surface *surface,
int32_t x, int32_t y, int32_t width, int32_t height);
@@ -627,7 +614,7 @@ index 00f161eda..ed3903853 100644
/* Arbitrary limit to try to avoid flooding the Wayland
* connection. If we flood it too much anyway, this could
diff --git a/hw/xwayland/xwayland.c b/hw/xwayland/xwayland.c
-index 27fbdf28e..149593c60 100644
+index 21587dbb6..7a0251504 100644
--- a/hw/xwayland/xwayland.c
+++ b/hw/xwayland/xwayland.c
@@ -41,12 +41,15 @@
@@ -646,7 +633,7 @@ index 27fbdf28e..149593c60 100644
void
ddxGiveUp(enum ExitCode error)
{
-@@ -241,6 +244,7 @@ xwl_log_handler(const char *format, va_list args)
+@@ -246,6 +249,7 @@ xwl_log_handler(const char *format, va_list args)
static const ExtensionModule xwayland_extensions[] = {
#ifdef XF86VIDMODE
{ xwlVidModeExtensionInit, XF86VIDMODENAME, &noXFree86VidModeExtension },