summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaxim Baz2019-05-15 10:32:51 +0200
committerMaxim Baz2019-05-15 10:32:51 +0200
commitc0b37d1ac1b7d7721a76100d4109523c4a042546 (patch)
tree6a5c6bbf6a456c0506de0d93e80ce71b5ad1463f
parentc58f2f79526bee8527dd4613ea979fc79ebc188d (diff)
downloadaur-c0b37d1ac1b7d7721a76100d4109523c4a042546.tar.gz
chromium-vaapi: 74.0.3729.157
-rw-r--r--.SRCINFO10
-rw-r--r--PKGBUILD9
-rw-r--r--chromium-fix-window-flash-for-some-WMs.patch98
3 files changed, 110 insertions, 7 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 8098a9e2c069..59fd3f075fed 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = chromium-vaapi
pkgdesc = Chromium with VA-API support to enable hardware acceleration
- pkgver = 74.0.3729.131
- pkgrel = 2
+ pkgver = 74.0.3729.157
+ pkgrel = 1
url = https://www.chromium.org/Home
install = chromium.install
arch = x86_64
@@ -55,22 +55,24 @@ pkgbase = chromium-vaapi
optdepends = kwallet: for storing passwords in KWallet
provides = chromium
conflicts = chromium
- source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-74.0.3729.131.tar.xz
+ source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-74.0.3729.157.tar.xz
source = chromium-launcher-6.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v6.tar.gz
source = chromium-drirc-disable-10bpc-color-configs.conf
source = chromium-vaapi.patch
source = chromium-system-icu.patch
source = chromium-glibc-2.29.patch
source = chromium-fix-the-flash-for-new-windows.patch
+ source = chromium-fix-window-flash-for-some-WMs.patch
source = chromium-widevine.patch
source = chromium-skia-harmony.patch
- sha256sums = d178c7842f8f858ac876d88ce866cbd2132d7ca6c73940613ebf7e9c3fada986
+ sha256sums = dcbe311d6ba7124496beca4a7ae401ac072c1f8e1a47d17b0919dba1b5962e06
sha256sums = 04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1
sha256sums = babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb
sha256sums = e87ede45edf39ac19e56ac1ae49c9d1f5f5130e5838bcbb4c3d4fb16e55575c0
sha256sums = e2d284311f49c529ea45083438a768db390bde52949995534034d2a814beab89
sha256sums = dd791f154b48e69cd47fd94753c45448655b529590995fd71ac1591c53a3d60c
sha256sums = 6d82c052eb1f1ae5644a09f7ad7a88d9e2966d1836124445ca4df93b7657c10a
+ sha256sums = 183d8cc712f0bcf1afcb01ce90c4c104a4c8d8070a06f94974a28b007d9e2ce4
sha256sums = d081f2ef8793544685aad35dea75a7e6264a2cb987ff3541e6377f4a3650a28b
sha256sums = 5887f78b55c4ecbbcba5930f3f0bb7bc0117c2a41c2f761805fcf7f46f1ca2b3
diff --git a/PKGBUILD b/PKGBUILD
index 7801b62ed58d..f4a9662c0633 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -10,8 +10,8 @@
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
pkgname=chromium-vaapi
-pkgver=74.0.3729.131
-pkgrel=2
+pkgver=74.0.3729.157
+pkgrel=1
_launcher_ver=6
pkgdesc="Chromium with VA-API support to enable hardware acceleration"
arch=('x86_64')
@@ -36,15 +36,17 @@ source=(https://commondatastorage.googleapis.com/chromium-browser-official/chrom
chromium-system-icu.patch
chromium-glibc-2.29.patch
chromium-fix-the-flash-for-new-windows.patch
+ chromium-fix-window-flash-for-some-WMs.patch
chromium-widevine.patch
chromium-skia-harmony.patch)
-sha256sums=('d178c7842f8f858ac876d88ce866cbd2132d7ca6c73940613ebf7e9c3fada986'
+sha256sums=('dcbe311d6ba7124496beca4a7ae401ac072c1f8e1a47d17b0919dba1b5962e06'
'04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1'
'babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb'
'e87ede45edf39ac19e56ac1ae49c9d1f5f5130e5838bcbb4c3d4fb16e55575c0'
'e2d284311f49c529ea45083438a768db390bde52949995534034d2a814beab89'
'dd791f154b48e69cd47fd94753c45448655b529590995fd71ac1591c53a3d60c'
'6d82c052eb1f1ae5644a09f7ad7a88d9e2966d1836124445ca4df93b7657c10a'
+ '183d8cc712f0bcf1afcb01ce90c4c104a4c8d8070a06f94974a28b007d9e2ce4'
'd081f2ef8793544685aad35dea75a7e6264a2cb987ff3541e6377f4a3650a28b'
'5887f78b55c4ecbbcba5930f3f0bb7bc0117c2a41c2f761805fcf7f46f1ca2b3')
@@ -104,6 +106,7 @@ prepare() {
# https://crbug.com/956061
patch -Np1 -i ../chromium-fix-the-flash-for-new-windows.patch
+ patch -Np1 -i ../chromium-fix-window-flash-for-some-WMs.patch
# Load Widevine CDM if available
patch -Np1 -i ../chromium-widevine.patch
diff --git a/chromium-fix-window-flash-for-some-WMs.patch b/chromium-fix-window-flash-for-some-WMs.patch
new file mode 100644
index 000000000000..f977cbf38cc4
--- /dev/null
+++ b/chromium-fix-window-flash-for-some-WMs.patch
@@ -0,0 +1,98 @@
+From 90e226ba50c98b5e60f74f9dce998b17117f9051 Mon Sep 17 00:00:00 2001
+From: Peng Huang <penghuang@chromium.org>
+Date: Tue, 7 May 2019 13:16:21 +0000
+Subject: [PATCH] Fix window flash for some WMs
+
+Bug: 956061
+Change-Id: I0d8d196395e70006a8fdc770f1e4a5ba6f93dd57
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1597388
+Commit-Queue: Peng Huang <penghuang@chromium.org>
+Reviewed-by: Antoine Labour <piman@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#657215}
+---
+ ui/gl/BUILD.gn | 5 ++++-
+ ui/gl/gl_surface_glx.cc | 41 ++++++++++++++++++++++++++++-------------
+ 2 files changed, 32 insertions(+), 14 deletions(-)
+
+diff --git a/ui/gl/BUILD.gn b/ui/gl/BUILD.gn
+index 50df0e4085..1753dd480b 100644
+--- a/ui/gl/BUILD.gn
++++ b/ui/gl/BUILD.gn
+@@ -274,7 +274,10 @@ jumbo_component("gl") {
+ "//build/config/linux:xext",
+ ]
+
+- deps += [ "//ui/gfx/x" ]
++ deps += [
++ "//ui/base/x",
++ "//ui/gfx/x",
++ ]
+ }
+ if (is_win) {
+ sources += [
+diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc
+index f4c13bed18..777bf767cb 100644
+--- a/ui/gl/gl_surface_glx.cc
++++ b/ui/gl/gl_surface_glx.cc
+@@ -21,6 +21,7 @@
+ #include "base/time/time.h"
+ #include "base/trace_event/trace_event.h"
+ #include "build/build_config.h"
++#include "ui/base/x/x11_util.h"
+ #include "ui/events/platform/platform_event_source.h"
+ #include "ui/gfx/x/x11.h"
+ #include "ui/gfx/x/x11_connection.h"
+@@ -431,7 +432,9 @@ bool GLSurfaceGLX::InitializeOneOff() {
+ }
+
+ const XVisualInfo& visual_info =
+- gl::GLVisualPickerGLX::GetInstance()->rgba_visual();
++ ui::IsCompositingManagerPresent()
++ ? gl::GLVisualPickerGLX::GetInstance()->rgba_visual()
++ : gl::GLVisualPickerGLX::GetInstance()->system_visual();
+ g_visual = visual_info.visual;
+ g_depth = visual_info.depth;
+ g_colormap =
+@@ -581,18 +584,30 @@ bool NativeViewGLSurfaceGLX::Initialize(GLSurfaceFormat format) {
+ }
+ size_ = gfx::Size(attributes.width, attributes.height);
+
+- XSetWindowAttributes swa;
+- memset(&swa, 0, sizeof(swa));
+- swa.background_pixmap = 0;
+- swa.bit_gravity = NorthWestGravity;
+- swa.colormap = g_colormap;
+- swa.background_pixel = 0;
+- swa.border_pixel = 0;
+- window_ = XCreateWindow(
+- gfx::GetXDisplay(), parent_window_, 0 /* x */, 0 /* y */, size_.width(),
+- size_.height(), 0 /* border_width */, g_depth, InputOutput, g_visual,
+- CWBackPixmap | CWBitGravity | CWColormap | CWBackPixel | CWBorderPixel,
+- &swa);
++ XSetWindowAttributes swa = {
++ .background_pixmap = 0,
++ .bit_gravity = NorthWestGravity,
++ .colormap = g_colormap,
++ .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM
++ .border_pixel = 0,
++ };
++ auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel;
++ if (ui::IsCompositingManagerPresent() &&
++ XVisualIDFromVisual(attributes.visual) == XVisualIDFromVisual(g_visual)) {
++ // When parent and child are using the same visual, the back buffer will be
++ // shared between parent and child. If WM compositing is enabled, we set
++ // child's background pixel to ARGB(0,0,0,0), so ARGB(0,0,0,0) will be
++ // filled to the shared buffer, when the child window is mapped. It can
++ // avoid an annoying flash when the child window is mapped below.
++ // If WM compositing is disabled, we don't set the background pixel, so
++ // nothing will be draw when the child window is mapped.
++ value_mask |= CWBackPixel;
++ }
++
++ window_ =
++ XCreateWindow(gfx::GetXDisplay(), parent_window_, 0 /* x */, 0 /* y */,
++ size_.width(), size_.height(), 0 /* border_width */,
++ g_depth, InputOutput, g_visual, value_mask, &swa);
+ if (!window_) {
+ LOG(ERROR) << "XCreateWindow failed";
+ return false;