summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorSung Mingi2022-03-22 18:05:56 +0900
committerSung Mingi2022-03-22 18:30:35 +0900
commit638aac4f752535395553803b96b7c035f7f632b4 (patch)
treec40d2188cad3d856e891592d3ed307fe0c2a6af8
parent0010abe333f6ffa7f5186dcb0cb935f1ec892b89 (diff)
downloadaur-638aac4f752535395553803b96b7c035f7f632b4.tar.gz
Sync to gnome-41 & Replace !1862 with !1915
Signed-off-by: Sung Mingi <FiestaLake@protonmail.com>
-rw-r--r--.SRCINFO10
-rw-r--r--PKGBUILD24
-rw-r--r--mr1915.patch79
3 files changed, 99 insertions, 14 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 3e65f9441450..c516e62c0ce4 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = gnome-shell-performance
pkgdesc = Next generation desktop shell
- pkgver = 41.4
+ pkgver = 41.5
pkgrel = 1
epoch = 1
url = https://wiki.gnome.org/Projects/GnomeShell
@@ -41,13 +41,15 @@ pkgbase = gnome-shell-performance
optdepends = gnome-control-center: System settings
optdepends = evolution-data-server: Evolution calendar integration
provides = gnome-shell
- provides = gnome-shell=41.4
- provides = gnome-shell=1:41.4
+ provides = gnome-shell=41.5
+ provides = gnome-shell=1:41.5
conflicts = gnome-shell
- source = git+https://gitlab.gnome.org/GNOME/gnome-shell.git#commit=637a9a4dd8574573394980ab13f3e9e4421778b4
+ source = git+https://gitlab.gnome.org/GNOME/gnome-shell.git#commit=87f944a1d43b8ee2586fdaf16520036dc101cdf6
source = git+https://gitlab.gnome.org/GNOME/libgnome-volume-control.git
+ source = mr1915.patch
sha256sums = SKIP
sha256sums = SKIP
+ sha256sums = b2ceb32e96838351b4942bff6afdbd9cb1fb197c084a957ce30e23812857054c
pkgname = gnome-shell-performance
depends = accountsservice
diff --git a/PKGBUILD b/PKGBUILD
index 7912c77a36c8..ee00034d5264 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -11,15 +11,15 @@
### MERGE REQUESTS SELECTION
-# available MR: ('536' '786' '923' '1862')
-_merge_requests_to_use=('1862')
+# available MR: ('536' '786' '923' '1915')
+_merge_requests_to_use=('1915')
### IMPORTANT: Do no edit below this line unless you know what you're doing
pkgname=gnome-shell-performance
_pkgname=gnome-shell
-pkgver=41.4
+pkgver=41.5
pkgrel=1
epoch=1
pkgdesc="Next generation desktop shell"
@@ -38,11 +38,13 @@ optdepends=('gnome-control-center: System settings'
groups=(gnome)
provides=(gnome-shell gnome-shell=$pkgver gnome-shell=$epoch:$pkgver)
conflicts=(gnome-shell)
-_commit=637a9a4dd8574573394980ab13f3e9e4421778b4 # tags/41.4^0
+_commit=87f944a1d43b8ee2586fdaf16520036dc101cdf6 # tags/41.5^0
source=("git+https://gitlab.gnome.org/GNOME/gnome-shell.git#commit=$_commit"
- "git+https://gitlab.gnome.org/GNOME/libgnome-volume-control.git")
+ "git+https://gitlab.gnome.org/GNOME/libgnome-volume-control.git"
+ "mr1915.patch")
sha256sums=('SKIP'
- 'SKIP')
+ 'SKIP'
+ 'b2ceb32e96838351b4942bff6afdbd9cb1fb197c084a957ce30e23812857054c')
pkgver() {
cd $_pkgname
@@ -145,12 +147,14 @@ prepare() {
# Comment: Unlock freezes, it hits me too.
pick_mr '923'
- # Title: Optimize box-shadow rendering (part 2) [property design]
- # URL: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1862
+ # Title: Optimize box-shadow rendering (part 2) [chroma key design]
+ # URL: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1915
# Type: 1
# Status: 1
- # Comment: Part 1 was in !1904 (merged)
- pick_mr '1862'
+ # Comment: This reduces the render time of the overview by about 15%.
+ # Part 1 was in !1904 (merged).
+ # This is an alternate design to !1862 (closed).
+ pick_mr '1915' 'mr1915.patch' 'patch'
git submodule init
git submodule set-url subprojects/gvc "$srcdir/libgnome-volume-control"
diff --git a/mr1915.patch b/mr1915.patch
new file mode 100644
index 000000000000..32f2a1cc5227
--- /dev/null
+++ b/mr1915.patch
@@ -0,0 +1,79 @@
+Author: Daniel van Vugt <daniel.van.vugt@canonical.com>
+Source: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1915
+Editor: Sung Mingi <FiestaLake@protonmail.com>
+Commit: 6f195a883c84284c4be802f1a74e425ea1264728
+Last Updated: 03/22/22 (gnome-shell 41.5-1)
+
+diff --git a/data/theme/gnome-shell-sass/_common.scss b/data/theme/gnome-shell-sass/_common.scss
+index 9df3d8d43..2fa90dbc2 100644
+--- a/data/theme/gnome-shell-sass/_common.scss
++++ b/data/theme/gnome-shell-sass/_common.scss
+@@ -35,6 +35,11 @@ $base_border_radius: 8px;
+
+ $modal_radius:$base_border_radius * 2;
+
++// Chroma key to flag when a background-color is always occluded, not visible.
++// This allows any box-shadow behind it to be rendered more efficiently by
++// omitting the middle rectangle.
++$invisible_occluded_bg_color: rgba(3,2,1,0);
++
+ // non-standard colors
+ $bubble_borders_color: lighten($borders_color, if($variant=='light', 0%, 5%));
+ // $bubble_borders_color: if($variant == 'light', rgba(255,255,255,0.1), rgba(0,0,0,0.3));
+diff --git a/data/theme/gnome-shell-sass/widgets/_window-picker.scss b/data/theme/gnome-shell-sass/widgets/_window-picker.scss
+index fa3f19194..784391822 100644
+--- a/data/theme/gnome-shell-sass/widgets/_window-picker.scss
++++ b/data/theme/gnome-shell-sass/widgets/_window-picker.scss
+@@ -48,5 +48,6 @@ $window_close_button_padding: 3px;
+ .workspace-background {
+ // keep in sync with BACKGROUND_CORNER_RADIUS_PIXELS in workspace.js
+ border-radius: 30px;
++ background-color: $invisible_occluded_bg_color;
+ box-shadow: 0 4px 16px 4px transparentize(darken($osd_bg_color, 30%), 0.7);
+ }
+diff --git a/src/st/st-theme-node-drawing.c b/src/st/st-theme-node-drawing.c
+index b32c76be2..72745ed66 100644
+--- a/src/st/st-theme-node-drawing.c
++++ b/src/st/st-theme-node-drawing.c
+@@ -2021,6 +2021,8 @@ st_theme_node_paint_sliced_shadow (StThemeNodePaintState *state,
+ gfloat shadow_blur_radius, x_spread_factor, y_spread_factor;
+ float rectangles[8 * 9];
+ gint idx;
++ ClutterColor background_color;
++ static const ClutterColor invisible_occluded = {3, 2, 1, 0};
+
+ if (paint_opacity == 0)
+ return;
+@@ -2178,16 +2180,23 @@ st_theme_node_paint_sliced_shadow (StThemeNodePaintState *state,
+ rectangles[idx++] = s_bottom;
+ }
+
+- /* Center middle */
+- rectangles[idx++] = left;
+- rectangles[idx++] = top;
+- rectangles[idx++] = right;
+- rectangles[idx++] = bottom;
++ /* Center middle is not definitely occluded? */
++ st_theme_node_get_background_color (node, &background_color);
++ if (!clutter_color_equal (&background_color, &invisible_occluded) ||
++ paint_opacity < 255 ||
++ xoffset > shadow_blur_radius || left < 0 ||
++ yoffset > shadow_blur_radius || top < 0)
++ {
++ rectangles[idx++] = left;
++ rectangles[idx++] = top;
++ rectangles[idx++] = right;
++ rectangles[idx++] = bottom;
+
+- rectangles[idx++] = s_left;
+- rectangles[idx++] = s_top;
+- rectangles[idx++] = s_right;
+- rectangles[idx++] = s_bottom;
++ rectangles[idx++] = s_left;
++ rectangles[idx++] = s_top;
++ rectangles[idx++] = s_right;
++ rectangles[idx++] = s_bottom;
++ }
+
+ if (xend > right)
+ {