1
0
Fork 0

1:47.0-1: Sync to main

Signed-off-by: Mingi Sung <sungmg@saltyming.net>
This commit is contained in:
Mingi Sung 2024-09-15 14:54:21 +09:00
parent 9ed55768df
commit 1d4a42fac4
Signed by: sungmg
GPG key ID: 41BAFD6FFD8036C5
6 changed files with 239 additions and 3638 deletions

View file

@ -1,6 +1,6 @@
pkgbase = mutter-performance
pkgdesc = A window manager for GNOME | Attempts to improve performances with non-upstreamed merge-requests and frequent stable branch resync
pkgver = 46.5
pkgver = 47.0
pkgrel = 1
epoch = 1
url = https://gitlab.gnome.org/GNOME/mutter
@ -73,21 +73,21 @@ pkgbase = mutter-performance
depends = systemd-libs
depends = wayland
depends = xorg-xwayland
source = git+https://gitlab.gnome.org/GNOME/mutter.git#commit=f585134c114797aae27f1a82013c665a5c1b94ed
source = git+https://gitlab.gnome.org/GNOME/mutter.git#commit=8b8f052ff9cb778c5f7c403f9e57fc4555a56ec2
source = git+https://gitlab.gnome.org/GNOME/gvdb.git#commit=b54bc5da25127ef416858a3ad92e57159ff565b3
source = mr1441.patch
source = mr3567.patch
source = mr3751.patch
sha256sums = caf3b0c514334e4684d294ba65a64e22c94bf3458118ea2a3f02de761e0b71f2
sha256sums = 1fe74042bc5d4369680036918eae10fb3d788983d7b57043a75b291b7f1050c8
sha256sums = 2e474a574edad8dc047a53a920fc7cbe005cac0102907eef80a252fc556d0517
sha256sums = 4c15b0e6d0001c8c3feedf05a9140f7f17d52eb36ff7b8039e0281c1373ccdfe
b2sums = 3c7990afd584836dd092e30813194ac24608416051a9b06c51d2f9577206360cb0f8bafceccc42ce1809d47e7a1676326fe8b87fa231c6abe2d9dddba10b6581
b2sums = cd0ae704aefdee7052f18fa75b156027da93243e1abd32692fe7d264b1e63bb41b63c7ea7ca76b74650e4dcdc76c456c83e5d37972196864bbe185aa2819f876
b2sums = 65302b1fa24a7aba26915269fb694c7a64b134ee2062ec7e649036a3a41efb2f2f4110cff6194808af34985855ade641c5fb01f0b97536cd3c912892ea3a0d4c
b2sums = f9f2284d7236d6072a818de3784a339c2d934490da8870876f49d4effd59ce807593ce8b8a3c5e06586fd5fd7e81fb31fedca84115acf1e71cfe23d4a5e727b3
sha256sums = 6f7c2bc14fe1fff7aa474aa0531a91b9a412827433850f693373d86f037afa53
sha256sums = ba56c003c1c16f1f8e411f6d5213878bcf059d4d39ece100fc414228a1bf22d5
sha256sums = 68d67a39cc6297126f30230a696bfb1c15bb0f7836fec542f6e4fb26c731e2b9
sha256sums = 67943a22cb75df955fc475e5ae101984d87e4a1f51d56be5f50696cc3355a3c4
b2sums = 0dc3e7541707fe7c9fd24397f08fd29272bd3f104a51503f7657b9b4589a22ee3a6ce407c440785e06bd19b3347fd555c3187aae4f5c87052ce94783d599426d
b2sums = f989bc2ceb52aad3c6a23c439df3bbc672bc11d561a247d19971d30cc85ed5d42295de40f8e55b13404ed32aa44f12307c9f5b470f2e288d1c9c8329255c43bf
b2sums = f669646bea17505d095c9ac635299790e6b94a5589e568315d7a90f7fe337221fd6958831082582c37a3e082f052cdad87530ae15122b40defed6faf6c3cf5de
b2sums = e13742a68cd831827e88ddf1801caca39fa9c77dd8c08a851bc87914f2961119fc1a7643628fc63cad8dedf03533148539a242cca23313c250bd65867ea84d8d
pkgname = mutter-performance
groups = gnome
provides = mutter
provides = libmutter-14.so
provides = libmutter-15.so
conflicts = mutter

1
.gitignore vendored
View file

@ -1 +1,2 @@
mutter
gvdb

View file

@ -11,7 +11,7 @@
### PACKAGE OPTIONS
## MERGE REQUESTS SELECTION
# Merge Requests List: ('579' '1441' '3567' '3751')
# Merge Requests List: ('579' '1441' '3751')
_merge_requests_to_use=('1441' '3751')
@ -20,7 +20,7 @@ _merge_requests_to_use=('1441' '3751')
_pkgname=mutter
pkgname=mutter-performance
epoch=1
pkgver=46.5
pkgver=47.0
pkgrel=1
pkgdesc="A window manager for GNOME | Attempts to improve performances with non-upstreamed merge-requests and frequent stable branch resync"
url="https://gitlab.gnome.org/GNOME/mutter"
@ -97,28 +97,19 @@ makedepends=(
xorg-server
xorg-server-xvfb
)
if [ -n "$_enable_check" ]; then
checkdepends=(gnome-session xorg-server-xvfb pipewire-session-manager python-dbusmock zenity)
fi
_commit=f585134c114797aae27f1a82013c665a5c1b94ed # tags/46.5^0
_commit=8b8f052ff9cb778c5f7c403f9e57fc4555a56ec2 # tags/47.0^0
source=("git+$url.git#commit=$_commit"
"git+https://gitlab.gnome.org/GNOME/gvdb.git#commit=b54bc5da25127ef416858a3ad92e57159ff565b3"
'mr1441.patch'
'mr3567.patch'
'mr3751.patch')
sha256sums=('caf3b0c514334e4684d294ba65a64e22c94bf3458118ea2a3f02de761e0b71f2'
'1fe74042bc5d4369680036918eae10fb3d788983d7b57043a75b291b7f1050c8'
'2e474a574edad8dc047a53a920fc7cbe005cac0102907eef80a252fc556d0517'
'4c15b0e6d0001c8c3feedf05a9140f7f17d52eb36ff7b8039e0281c1373ccdfe')
b2sums=('3c7990afd584836dd092e30813194ac24608416051a9b06c51d2f9577206360cb0f8bafceccc42ce1809d47e7a1676326fe8b87fa231c6abe2d9dddba10b6581'
'cd0ae704aefdee7052f18fa75b156027da93243e1abd32692fe7d264b1e63bb41b63c7ea7ca76b74650e4dcdc76c456c83e5d37972196864bbe185aa2819f876'
'65302b1fa24a7aba26915269fb694c7a64b134ee2062ec7e649036a3a41efb2f2f4110cff6194808af34985855ade641c5fb01f0b97536cd3c912892ea3a0d4c'
'f9f2284d7236d6072a818de3784a339c2d934490da8870876f49d4effd59ce807593ce8b8a3c5e06586fd5fd7e81fb31fedca84115acf1e71cfe23d4a5e727b3')
for mr in "${_merge_requests_to_use[@]}"; do
if [ '3567' = "$mr" ]; then
depends+=(gnome-settings-daemon-xwayland-scaling)
fi
done
sha256sums=('6f7c2bc14fe1fff7aa474aa0531a91b9a412827433850f693373d86f037afa53'
'ba56c003c1c16f1f8e411f6d5213878bcf059d4d39ece100fc414228a1bf22d5'
'68d67a39cc6297126f30230a696bfb1c15bb0f7836fec542f6e4fb26c731e2b9'
'67943a22cb75df955fc475e5ae101984d87e4a1f51d56be5f50696cc3355a3c4')
b2sums=('0dc3e7541707fe7c9fd24397f08fd29272bd3f104a51503f7657b9b4589a22ee3a6ce407c440785e06bd19b3347fd555c3187aae4f5c87052ce94783d599426d'
'f989bc2ceb52aad3c6a23c439df3bbc672bc11d561a247d19971d30cc85ed5d42295de40f8e55b13404ed32aa44f12307c9f5b470f2e288d1c9c8329255c43bf'
'f669646bea17505d095c9ac635299790e6b94a5589e568315d7a90f7fe337221fd6958831082582c37a3e082f052cdad87530ae15122b40defed6faf6c3cf5de'
'e13742a68cd831827e88ddf1801caca39fa9c77dd8c08a851bc87914f2961119fc1a7643628fc63cad8dedf03533148539a242cca23313c250bd65867ea84d8d')
pkgver() {
cd $_pkgname
@ -201,15 +192,6 @@ prepare() {
# If you use stenography software or play hardcore rhythm games like Lunatic Rave 2/osumania, use it.
pick_mr '579' ce86f90efbaa51522ba14c5b4cad933c2106de42 'revert'
# Title: Let scaling-aware Xwayland clients scale themselves with "scale-monitor-framebuffers"
# Author: Jonas Dreßler <verdre@v0yd.nl>
# URL: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3567
# Type: 1
# Status: 3
# Comment: Backported to gnome-46. It needs more testing.
# Goes with https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/merge_requests/353
pick_mr '3567' 'mr3567.patch' 'patch'
# Title: wayland/text-input-v1: Implement basic text-input-v1 support
# Author: Alynx Zhou <alynx.zhou@gmail.com>
# URL: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3751
@ -237,18 +219,21 @@ build() {
-D installed_tests=false
-D libdisplay_info=enabled
-D docs=false
-D tests=false
-D tests=disabled
)
CFLAGS="${CFLAGS/-O2/-O3} -fno-semantic-interposition"
LDFLAGS+=" -Wl,-Bsymbolic-functions"
# Inject gvdb
export MESON_PACKAGE_CACHE_DIR="$srcdir"
arch-meson $_pkgname build "${meson_options[@]}"
meson compile -C build
}
package() {
provides=(mutter libmutter-14.so)
provides=(mutter libmutter-15.so)
conflicts=(mutter)
groups=(gnome)

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,4 @@
From 0bcbfa0ae68bac604b6922c236a2dc42e535e994 Mon Sep 17 00:00:00 2001
From f5adba2fae5da369338d142880f6d8481c2a5601 Mon Sep 17 00:00:00 2001
From: Alynx Zhou <alynx.zhou@gmail.com>
Date: Wed, 15 May 2024 00:07:41 +0800
Subject: [PATCH] wayland/text-input-v1: Implement basic text-input-v1 support
@ -10,9 +10,6 @@ Japanese or Korean.
Closes <https://gitlab.gnome.org/GNOME/mutter/-/issues/3200>.
Origin: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3751
Commit: 2a94e19b00434fe4d7ab858a6cdcff6364f6e408
Signed-off-by: Mingi Sung <sungmg@saltyming.net>
---
clutter/clutter/clutter-enums.h | 3 +
@ -30,10 +27,10 @@ Signed-off-by: Mingi Sung <sungmg@saltyming.net>
create mode 100644 src/wayland/meta-wayland-text-input-v1.h
diff --git a/clutter/clutter/clutter-enums.h b/clutter/clutter/clutter-enums.h
index 45956bf57b..8198e73516 100644
index 9bd508fb67..8f174087e6 100644
--- a/clutter/clutter/clutter-enums.h
+++ b/clutter/clutter/clutter-enums.h
@@ -1183,6 +1183,9 @@ typedef enum
@@ -1172,6 +1172,9 @@ typedef enum
CLUTTER_INPUT_CONTENT_HINT_SENSITIVE_DATA = 1 << 7,
CLUTTER_INPUT_CONTENT_HINT_LATIN = 1 << 8,
CLUTTER_INPUT_CONTENT_HINT_MULTILINE = 1 << 9,
@ -44,10 +41,10 @@ index 45956bf57b..8198e73516 100644
typedef enum
diff --git a/src/core/events.c b/src/core/events.c
index 1f36d2feb6..a1874d6737 100644
index fb4c7574c8..31f5af705f 100644
--- a/src/core/events.c
+++ b/src/core/events.c
@@ -238,6 +238,7 @@ meta_display_handle_event (MetaDisplay *display,
@@ -239,6 +239,7 @@ meta_display_handle_event (MetaDisplay *display,
#ifdef HAVE_WAYLAND
MetaWaylandCompositor *wayland_compositor;
MetaWaylandTextInput *wayland_text_input = NULL;
@ -55,7 +52,7 @@ index 1f36d2feb6..a1874d6737 100644
#endif
#ifdef HAVE_WAYLAND
@@ -246,6 +247,8 @@ meta_display_handle_event (MetaDisplay *display,
@@ -247,6 +248,8 @@ meta_display_handle_event (MetaDisplay *display,
{
wayland_text_input =
meta_wayland_compositor_get_text_input (wayland_compositor);
@ -64,7 +61,7 @@ index 1f36d2feb6..a1874d6737 100644
}
#endif
@@ -287,9 +290,11 @@ meta_display_handle_event (MetaDisplay *display,
@@ -288,9 +291,11 @@ meta_display_handle_event (MetaDisplay *display,
}
#ifdef HAVE_WAYLAND
@ -80,10 +77,10 @@ index 1f36d2feb6..a1874d6737 100644
if (wayland_compositor)
diff --git a/src/meson.build b/src/meson.build
index 05df3bfd28..fad08706a6 100644
index bfa8306d2f..396d58eb43 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -688,6 +688,8 @@ if have_wayland
@@ -696,6 +696,8 @@ if have_wayland
'wayland/meta-wayland-tablet-tool.h',
'wayland/meta-wayland-text-input.c',
'wayland/meta-wayland-text-input.h',
@ -92,19 +89,19 @@ index 05df3bfd28..fad08706a6 100644
'wayland/meta-wayland-touch.c',
'wayland/meta-wayland-touch.h',
'wayland/meta-wayland-transaction.c',
@@ -1076,6 +1078,7 @@ if have_wayland
@@ -1109,6 +1111,7 @@ if have_wayland
['single-pixel-buffer', 'staging', 'v1', ],
['tablet', 'unstable', 'v2', ],
['text-input', 'unstable', 'v3', ],
+ ['text-input', 'unstable', 'v1', ],
['viewporter', 'stable', ],
['xdg-activation', 'staging', 'v1', ],
['xdg-foreign', 'unstable', 'v1', ],
['xdg-dialog', 'staging', 'v1', ],
diff --git a/src/wayland/meta-wayland-seat.c b/src/wayland/meta-wayland-seat.c
index 2301e00685..d0f8880840 100644
index 8e592d6c88..e72a7a1f45 100644
--- a/src/wayland/meta-wayland-seat.c
+++ b/src/wayland/meta-wayland-seat.c
@@ -229,6 +229,7 @@ default_focus (MetaWaylandEventHandler *handler,
@@ -232,6 +232,7 @@ default_focus (MetaWaylandEventHandler *handler,
surface);
meta_wayland_tablet_seat_set_pad_focus (seat->tablet_seat, surface);
meta_wayland_text_input_set_focus (seat->text_input, surface);
@ -112,7 +109,7 @@ index 2301e00685..d0f8880840 100644
}
if (caps & CLUTTER_INPUT_CAPABILITY_TABLET_TOOL)
@@ -290,6 +291,8 @@ meta_wayland_seat_new (MetaWaylandCompositor *compositor,
@@ -297,6 +298,8 @@ meta_wayland_seat_new (MetaWaylandCompositor *compositor,
NULL);
seat->text_input = meta_wayland_text_input_new (seat);
@ -121,7 +118,7 @@ index 2301e00685..d0f8880840 100644
meta_wayland_data_device_init (&seat->data_device, seat);
meta_wayland_data_device_primary_init (&seat->primary_data_device, seat);
@@ -338,6 +341,7 @@ meta_wayland_seat_free (MetaWaylandSeat *seat)
@@ -342,6 +345,7 @@ meta_wayland_seat_free (MetaWaylandSeat *seat)
g_object_unref (seat->touch);
meta_wayland_text_input_destroy (seat->text_input);
@ -129,7 +126,7 @@ index 2301e00685..d0f8880840 100644
g_free (seat);
}
@@ -478,7 +482,10 @@ meta_wayland_seat_handle_event_internal (MetaWaylandSeat *seat,
@@ -494,7 +498,10 @@ meta_wayland_seat_handle_event_internal (MetaWaylandSeat *seat,
if (event_type == CLUTTER_BUTTON_PRESS ||
event_type == CLUTTER_TOUCH_BEGIN)
{
@ -141,7 +138,7 @@ index 2301e00685..d0f8880840 100644
}
switch (event_type)
@@ -510,7 +517,8 @@ meta_wayland_seat_handle_event_internal (MetaWaylandSeat *seat,
@@ -526,7 +533,8 @@ meta_wayland_seat_handle_event_internal (MetaWaylandSeat *seat,
case CLUTTER_IM_COMMIT:
case CLUTTER_IM_DELETE:
case CLUTTER_IM_PREEDIT:
@ -152,7 +149,7 @@ index 2301e00685..d0f8880840 100644
break;
diff --git a/src/wayland/meta-wayland-seat.h b/src/wayland/meta-wayland-seat.h
index 83fd7de1ed..37704cf5a1 100644
index cfca962385..fd5772aa54 100644
--- a/src/wayland/meta-wayland-seat.h
+++ b/src/wayland/meta-wayland-seat.h
@@ -30,6 +30,7 @@
@ -163,7 +160,7 @@ index 83fd7de1ed..37704cf5a1 100644
#include "wayland/meta-wayland-touch.h"
#include "wayland/meta-wayland-types.h"
@@ -49,6 +50,7 @@ struct _MetaWaylandSeat
@@ -51,6 +52,7 @@ struct _MetaWaylandSeat
MetaWaylandDataDevicePrimary primary_data_device;
MetaWaylandTextInput *text_input;
@ -1081,7 +1078,7 @@ index 0000000000..79b1c0a541
+gboolean meta_wayland_text_input_v1_handle_event (MetaWaylandTextInputV1 *text_input,
+ const ClutterEvent *event);
diff --git a/src/wayland/meta-wayland-versions.h b/src/wayland/meta-wayland-versions.h
index 900f30d788..a77b81461b 100644
index f0d0355067..21d14b4895 100644
--- a/src/wayland/meta-wayland-versions.h
+++ b/src/wayland/meta-wayland-versions.h
@@ -49,6 +49,7 @@
@ -1093,10 +1090,10 @@ index 900f30d788..a77b81461b 100644
#define META_ZWP_PRIMARY_SELECTION_V1_VERSION 1
#define META_WP_PRESENTATION_VERSION 1
diff --git a/src/wayland/meta-wayland.c b/src/wayland/meta-wayland.c
index 501b69a91c..0114823c14 100644
index fd7b6e4731..c42d8a9c31 100644
--- a/src/wayland/meta-wayland.c
+++ b/src/wayland/meta-wayland.c
@@ -865,6 +865,7 @@ meta_wayland_compositor_new (MetaContext *context)
@@ -887,6 +887,7 @@ meta_wayland_compositor_new (MetaContext *context)
meta_wayland_keyboard_shortcuts_inhibit_init (compositor);
meta_wayland_surface_inhibit_shortcuts_dialog_init ();
meta_wayland_text_input_init (compositor);
@ -1104,7 +1101,7 @@ index 501b69a91c..0114823c14 100644
meta_wayland_init_presentation_time (compositor);
meta_wayland_activation_init (compositor);
meta_wayland_transaction_init (compositor);
@@ -1124,6 +1125,12 @@ meta_wayland_compositor_get_text_input (MetaWaylandCompositor *compositor)
@@ -1153,6 +1154,12 @@ meta_wayland_compositor_get_text_input (MetaWaylandCompositor *compositor)
return compositor->seat->text_input;
}