diff options
author | Maxim Baz | 2019-05-15 10:32:51 +0200 |
---|---|---|
committer | Maxim Baz | 2019-05-15 10:32:51 +0200 |
commit | c0b37d1ac1b7d7721a76100d4109523c4a042546 (patch) | |
tree | 6a5c6bbf6a456c0506de0d93e80ce71b5ad1463f | |
parent | c58f2f79526bee8527dd4613ea979fc79ebc188d (diff) | |
download | aur-c0b37d1ac1b7d7721a76100d4109523c4a042546.tar.gz |
chromium-vaapi: 74.0.3729.157
-rw-r--r-- | .SRCINFO | 10 | ||||
-rw-r--r-- | PKGBUILD | 9 | ||||
-rw-r--r-- | chromium-fix-window-flash-for-some-WMs.patch | 98 |
3 files changed, 110 insertions, 7 deletions
@@ -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 @@ -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; |