diff -Naur chromium.orig/gtk3-fix.patch chromium/gtk3-fix.patch --- chromium.orig/gtk3-fix.patch 1970-01-01 01:00:00.000000000 +0100 +++ chromium/gtk3-fix.patch 2016-07-23 22:52:52.883810115 +0200 @@ -0,0 +1,27 @@ +--- chromium-52.0.2743.82.orig/chrome/browser/ui/libgtk2ui/native_theme_gtk2.cc 2016-07-23 20:22:44.965804588 +0000 ++++ chromium-52.0.2743.82/chrome/browser/ui/libgtk2ui/native_theme_gtk2.cc 2016-07-23 20:24:05.772234006 +0000 +@@ -138,6 +138,11 @@ + gtk_widget_get_style_context(widget), stateMap[state], &color); + G_GNUC_END_IGNORE_DEPRECATIONS + ++ if (color.alpha == 0.0) ++ gtk_style_context_get_background_color( ++ gtk_widget_get_style_context(gtk_widget_get_toplevel(widget)), ++ stateMap[state], &color); ++ + // Hack for default color + if (color.alpha == 0.0) + color = {1, 1, 1, 1}; +@@ -510,8 +515,11 @@ + GtkWidget* NativeThemeGtk2::GetLabel() const { + static GtkWidget* fake_label = NULL; + +- if (!fake_label) ++ if (!fake_label) { + fake_label = gtk_label_new(""); ++ gtk_style_context_add_class( ++ gtk_widget_get_style_context(fake_label), "gtkstyle-fallback"); ++ } + + return fake_label; + } diff -Naur chromium.orig/PKGBUILD chromium/PKGBUILD --- chromium.orig/PKGBUILD 2016-07-23 22:22:04.062134023 +0200 +++ chromium/PKGBUILD 2016-07-23 23:15:01.069423278 +0200 @@ -12,12 +12,12 @@ arch=('i686' 'x86_64') url="http://www.chromium.org/" license=('BSD') -depends=('gtk2' 'nss' 'alsa-lib' 'xdg-utils' 'bzip2' 'libevent' 'libxss' +depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'bzip2' 'libevent' 'libxss' 'libexif' 'libgcrypt' 'ttf-font' 'systemd' 'dbus' 'flac' 'snappy' 'speech-dispatcher' 'pciutils' 'libpulse' 'harfbuzz' 'libsecret' 'libvpx' 'perl' 'perl-file-basedir' 'desktop-file-utils' 'hicolor-icon-theme') -makedepends=('python2' 'gperf' 'yasm' 'mesa' 'ninja') +makedepends=('gtk2' 'python2' 'gperf' 'yasm' 'mesa' 'ninja') makedepends_x86_64=('lib32-gcc-libs' 'lib32-zlib') optdepends=('kdebase-kdialog: needed for file dialogs in KDE' 'gnome-keyring: for storing passwords in GNOME keyring' @@ -28,12 +28,14 @@ chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz chromium.desktop chromium-widevine.patch - PNGImageDecoder.patch) + PNGImageDecoder.patch + gtk3-fix.patch) sha256sums=('a7de6015df9cf685d68efd1e070ae9c706c723cd9395d079a7d43672a2c37eb4' '8b01fb4efe58146279858a754d90b49e5a38c9a0b36a1f84cbb7d12f92b84c28' '028a748a5c275de9b8f776f97909f999a8583a4b77fd1cd600b4fc5c0c3e91e9' 'd6fdcb922e5a7fbe15759d39ccc8ea4225821c44d98054ce0f23f9d1f00c9808' - 'd9fd982ba6d50edb7743db6122b975ad1d3da5a9ad907c8ab7cf574395b186cd') + 'd9fd982ba6d50edb7743db6122b975ad1d3da5a9ad907c8ab7cf574395b186cd' + 'aa22e99d559a8c441f4ba21e4916671428326d92cf2f429c5226840ef4ea0892') # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) # Note: These are for Arch Linux use ONLY. For your own distribution, please @@ -67,6 +69,9 @@ # Chromium 51 won't build without this patch. Not reported upstream yet AFAIK. patch -p1 -i "$srcdir"/PNGImageDecoder.patch + # Fix gtk3 theme integration + patch -p1 -i "$srcdir"/gtk3-fix.patch + # Commentception – use bundled ICU due to build failures (50.0.2661.75) # See https://crbug.com/584920 and https://crbug.com/592268 # --- @@ -92,7 +97,7 @@ build() { cd "$srcdir/chromium-launcher-$_launcher_ver" - make PREFIX=/usr + make PREFIX=/usr GTK=3 cd "$srcdir/$pkgname-$pkgver" @@ -148,6 +153,7 @@ -Duse_mojo=0 -Duse_gconf=0 -Duse_sysroot=0 + -Duse_gtk3=1 -Denable_hangout_services_extension=1 -Denable_widevine=1 -Ddisable_fatal_linker_warnings=1