Add mr2694
Signed-off-by: Mingi Sung <FiestaLake@protonmail.com>
This commit is contained in:
parent
e648f81631
commit
d334c13dbb
4 changed files with 71 additions and 12 deletions
6
.SRCINFO
6
.SRCINFO
|
@ -1,7 +1,7 @@
|
|||
pkgbase = mutter-performance
|
||||
pkgdesc = A window manager for GNOME | Attempts to improve performances with non-upstreamed merge-requests and frequent stable branch resync
|
||||
pkgver = 43.1+r1+gaccf532a2
|
||||
pkgrel = 1
|
||||
pkgrel = 2
|
||||
url = https://gitlab.gnome.org/GNOME/mutter
|
||||
arch = x86_64
|
||||
license = GPL
|
||||
|
@ -39,10 +39,12 @@ pkgbase = mutter-performance
|
|||
source = mr1441.patch
|
||||
source = mr1880.patch
|
||||
source = mr2671.patch
|
||||
source = mr2694.patch
|
||||
sha256sums = SKIP
|
||||
sha256sums = d7a014965cbb90892ccbe65d0de49ddce50191dbd7521467d7f11c2f4825045c
|
||||
sha256sums = a075fad955d589ea5e59178221a80fe162f7b10cd0c77fcb94219fb380810952
|
||||
sha256sums = d7f8e1a52ddcc02af677b7a7167b720028a4363f1b4df8a9a47fdf5b770ca721
|
||||
sha256sums = 45ba598e88a4b18ab2d0522abe058efaf0ceb05895bae6f31887bcd4492c45ce
|
||||
sha256sums = 620aabe6b59a6b4ccde95c0aecf98c290ad218c0b8a340bb0bc075c6cc0846e1
|
||||
|
||||
pkgname = mutter-performance
|
||||
groups = gnome
|
||||
|
|
28
PKGBUILD
28
PKGBUILD
|
@ -11,17 +11,16 @@
|
|||
|
||||
|
||||
### PACKAGE OPTIONS
|
||||
|
||||
## MERGE REQUESTS SELECTION
|
||||
# Merge Requests List: ('579' '1441' '1880' '2671')
|
||||
_merge_requests_to_use=('1441' '1880' '2671')
|
||||
# Merge Requests List: ('579' '1441' '1880' '2671' '2694')
|
||||
_merge_requests_to_use=('1441' '1880' '2671' '2694')
|
||||
|
||||
## Disable building a DOCS package
|
||||
# Remember to unset this variable when producing .SRCINFO
|
||||
: "${_disable_docs:=""}"
|
||||
|
||||
|
||||
### IMPORTANT: Do no edit below this line unless you know what you're doing
|
||||
### IMPORTANT: Do no edit below this line unless you know what you're doing!
|
||||
|
||||
pkgbase=mutter-performance
|
||||
if [ -n "$_disable_docs" ]; then
|
||||
|
@ -30,7 +29,7 @@ else
|
|||
pkgname=(mutter-performance mutter-performance-docs)
|
||||
fi
|
||||
pkgver=43.1+r1+gaccf532a2
|
||||
pkgrel=1
|
||||
pkgrel=2
|
||||
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"
|
||||
arch=(x86_64)
|
||||
|
@ -46,11 +45,13 @@ _commit=accf532a29ea9a1d70880dfaa1834050aa3ae7be # tags/43.1^1
|
|||
source=("$pkgname::git+https://gitlab.gnome.org/GNOME/mutter.git#commit=$_commit"
|
||||
'mr1441.patch'
|
||||
'mr1880.patch'
|
||||
'mr2671.patch')
|
||||
'mr2671.patch'
|
||||
'mr2694.patch')
|
||||
sha256sums=('SKIP'
|
||||
'd7a014965cbb90892ccbe65d0de49ddce50191dbd7521467d7f11c2f4825045c'
|
||||
'a075fad955d589ea5e59178221a80fe162f7b10cd0c77fcb94219fb380810952'
|
||||
'd7f8e1a52ddcc02af677b7a7167b720028a4363f1b4df8a9a47fdf5b770ca721')
|
||||
'45ba598e88a4b18ab2d0522abe058efaf0ceb05895bae6f31887bcd4492c45ce'
|
||||
'620aabe6b59a6b4ccde95c0aecf98c290ad218c0b8a340bb0bc075c6cc0846e1')
|
||||
|
||||
pkgver() {
|
||||
cd $pkgname
|
||||
|
@ -98,7 +99,6 @@ prepare() {
|
|||
#git fetch verdre
|
||||
#git fetch 3v1no
|
||||
|
||||
|
||||
### Merge Requests
|
||||
|
||||
# Merge Request Prototype
|
||||
|
@ -124,7 +124,6 @@ prepare() {
|
|||
#
|
||||
# Generally, a MR status oscillate between 2 and 3 and then becomes 4.
|
||||
|
||||
|
||||
# Title: backends: Do not reload keymap on new keyboard notifications
|
||||
# Author: Carlos Garnacho <carlosg@gnome.org>
|
||||
# URL: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/579
|
||||
|
@ -158,8 +157,19 @@ prepare() {
|
|||
# Type: 1
|
||||
# Status: 2
|
||||
# Comment: Avoid some allocations, save some CPU cycles and make the code easier to read.
|
||||
# NOTE: This changes mutter's behaviors, which can bring regressions when using extensions.
|
||||
# Disable this MR if you encounter errors with those extensions.
|
||||
pick_mr '2671' 'mr2671.patch' 'patch'
|
||||
|
||||
# Title: clutter/actor: Show on all stage-views when actors have no allocation
|
||||
# Author: Jonas Dreßler <verdre@v0yd.nl>
|
||||
# URL: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2694
|
||||
# Type: 3
|
||||
# Status: 3
|
||||
# Comment: For paint volumes, queue full-stage redraws. For actors without valid allocations,
|
||||
# set priv->stage_views to all available stage views.
|
||||
pick_mr '2694' 'mr2694.patch' 'patch'
|
||||
|
||||
}
|
||||
|
||||
build() {
|
||||
|
|
|
@ -2,7 +2,7 @@ Author: Robert Mader <robert.mader@posteo.de>
|
|||
Source: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2671
|
||||
Editor: Mingi Sung <FiestaLake@protonmail.com>
|
||||
Commit: d9f1681b149c12c94e3e457c6decd34babed951f
|
||||
Last Updated: 11/16/22 (Mutter 43.0-1)
|
||||
Last Updated: 11/16/22 (Mutter 43.1-1)
|
||||
---
|
||||
|
||||
Avoid some allocations, save some CPU cycles and make the code easier
|
||||
|
|
47
mr2694.patch
Normal file
47
mr2694.patch
Normal file
|
@ -0,0 +1,47 @@
|
|||
Author: Jonas Dreßler <verdre@v0yd.nl>
|
||||
Source: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2694
|
||||
Editor: Mingi Sung <FiestaLake@protonmail.com>
|
||||
Commit: c627b9c3c7fc7ce59a2696dd3012a08b18e6b1cb
|
||||
Last Updated: 11/24/22 (Mutter 43.1+r1+gaccf532a2-2)
|
||||
---
|
||||
|
||||
When a badly behaving ClutterActor implementation manages to invalidate
|
||||
the allocation after the layout phase and before painting, we have no
|
||||
idea where the actor should be painted without running the whole layout
|
||||
machinery again.
|
||||
|
||||
For paint volumes in this case we pretend the actor covers the whole
|
||||
stage and queue full-stage redraws. When updating stage-views, we're
|
||||
also handling this case, but not in the most graceful way. Just like
|
||||
with paint volumes, we should assume an actor without a valid allocation
|
||||
is simply everywhere, so set priv->stage_views to all available stage
|
||||
views in that case.
|
||||
|
||||
---
|
||||
diff --git a/clutter/clutter/clutter-actor.c b/clutter/clutter/clutter-actor.c
|
||||
index 1dde8d94863b3ef3f309e2bc6ab8064aec2d4f7f..10a5e3203b393ec6bc6bed41b5f9ae58a2c16ac1 100644
|
||||
--- a/clutter/clutter/clutter-actor.c
|
||||
+++ b/clutter/clutter/clutter-actor.c
|
||||
@@ -15463,18 +15463,19 @@ update_stage_views (ClutterActor *self)
|
||||
ClutterStage *stage;
|
||||
graphene_rect_t bounding_rect;
|
||||
|
||||
+ stage = CLUTTER_STAGE (_clutter_actor_get_stage_internal (self));
|
||||
+ g_return_if_fail (stage);
|
||||
+
|
||||
old_stage_views = g_steal_pointer (&priv->stage_views);
|
||||
|
||||
if (priv->needs_allocation)
|
||||
{
|
||||
g_warning ("Can't update stage views actor %s is on because it needs an "
|
||||
"allocation.", _clutter_actor_get_debug_name (self));
|
||||
+ priv->stage_views = g_list_copy (clutter_stage_peek_stage_views (stage));
|
||||
goto out;
|
||||
}
|
||||
|
||||
- stage = CLUTTER_STAGE (_clutter_actor_get_stage_internal (self));
|
||||
- g_return_if_fail (stage);
|
||||
-
|
||||
clutter_actor_get_transformed_extents (self, &bounding_rect);
|
||||
|
||||
if (bounding_rect.size.width == 0.0 ||
|
Loading…
Reference in a new issue