summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorjk2020-02-09 19:46:47 -0500
committerjk2020-02-09 19:46:47 -0500
commite2a5a9eaad0cab08034b70ee8cf11d26305985f0 (patch)
tree4315e72a9b7ad6c17d1c62fe713857d63ec0eafe
parentd42c0ced9abda7550a6c144fd012669a9ccd411d (diff)
downloadaur-e2a5a9eaad0cab08034b70ee8cf11d26305985f0.tar.gz
update to version 80.0.3987.87
-rw-r--r--.SRCINFO55
-rw-r--r--0001-Add-missing-algorithm-header-in-bitmap_cursor_factor.patch47
-rw-r--r--PKGBUILD99
-rw-r--r--chromium-system-hb.patch19
-rw-r--r--chromium-system-icu.patch20
-rw-r--r--chromium-system-zlib.patch13
-rw-r--r--cros-search-service-Include-cmath-for-std-pow.patch35
-rw-r--r--fix-browser-frame-view-not-getting-a-relayout.patch38
-rw-r--r--fix-building-with-system-zlib.patch32
-rw-r--r--fix-building-with-unbundled-libxml.patch127
-rw-r--r--fix-shim-header-generation-when-unbundling-ICU.patch50
-rw-r--r--fix-spammy-unique-font-matching-log.patch13
-rw-r--r--flags.archlinux.gn2
-rw-r--r--icu65.patch64
-rw-r--r--include-algorithm-to-use-std-lower_bound.patch49
-rw-r--r--launch_manager.h-uses-std-vector.patch36
-rw-r--r--move-RemoteTreeNode-declaration.patch237
-rw-r--r--rebuild-Linux-frame-button-cache-when-activation.patch62
-rw-r--r--remove-verbose-logging-in-local-unique-font-matching.patch33
-rw-r--r--rename-Relayout-in-DesktopWindowTreeHostPlatform.patch64
-rw-r--r--sync-enable-USSPasswords-by-default.patch28
21 files changed, 844 insertions, 279 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 94033a9fa6c7..09bdbf96331e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = ungoogled-chromium-ozone
pkgdesc = A lightweight approach to removing Google web service dependency with patches for wayland support via Ozone
- pkgver = 79.0.3945.79
+ pkgver = 80.0.3987.87
pkgrel = 1
url = https://ungoogled-software.github.io/
arch = x86_64
@@ -25,18 +25,20 @@ pkgbase = ungoogled-chromium-ozone
depends = libxss
depends = libcups
depends = libgcrypt
- depends = ttf-font
+ depends = ttf-liberation
depends = systemd
depends = dbus
depends = libpulse
depends = pciutils
depends = json-glib
+ depends = libva
depends = desktop-file-utils
depends = hicolor-icon-theme
depends = icu
depends = libxml2
depends = fontconfig
depends = harfbuzz
+ depends = libvpx
depends = libjpeg
depends = re2
depends = snappy
@@ -48,45 +50,50 @@ pkgbase = ungoogled-chromium-ozone
depends = freetype2
depends = opus
optdepends = pepper-flash: support for Flash content
+ optdepends = pipewire: WebRTC desktop sharing under Wayland
optdepends = kdialog: needed for file dialogs in KDE
optdepends = org.freedesktop.secrets: password storage backend on GNOME / Xfce
optdepends = kwallet: for storing passwords in KWallet on KDE desktops
- optdepends = libva-intel-driver: for hardware video acceleration with Intel GPUs
- optdepends = intel-media-driver: for hardware video acceleration with newer intel gpus
- optdepends = libva-mesa-driver: for hardware video acceleration with AMD/ATI GPUs
- optdepends = libva-vdpau-driver: for hardware video acceleration with NVIDIA GPUs
provides = chromium
conflicts = chromium
- source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-79.0.3945.79.tar.xz
+ source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-80.0.3987.87.tar.xz
source = chromium-launcher-6.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v6.tar.gz
- source = ungoogled-chromium::git+https://github.com/Eloston/ungoogled-chromium
+ source = ungoogled-chromium.zip::https://github.com/Eloston/ungoogled-chromium/archive/80.0.3987.87-2.zip
+ source = 0001-Add-missing-algorithm-header-in-bitmap_cursor_factor.patch
source = flags.archlinux.gn
source = chromium-drirc-disable-10bpc-color-configs.conf
source = vaapi-fix.patch
source = fix-vaapi-ozone-build.patch
- source = launch_manager.h-uses-std-vector.patch
- source = include-algorithm-to-use-std-lower_bound.patch
- source = icu65.patch
- source = chromium-system-icu.patch
- source = chromium-system-zlib.patch
- source = chromium-system-hb.patch
- source = fix-spammy-unique-font-matching-log.patch
+ source = cros-search-service-Include-cmath-for-std-pow.patch
+ source = move-RemoteTreeNode-declaration.patch
+ source = sync-enable-USSPasswords-by-default.patch
+ source = fix-shim-header-generation-when-unbundling-ICU.patch
+ source = fix-building-with-system-zlib.patch
+ source = remove-verbose-logging-in-local-unique-font-matching.patch
+ source = fix-building-with-unbundled-libxml.patch
+ source = fix-browser-frame-view-not-getting-a-relayout.patch
+ source = rename-Relayout-in-DesktopWindowTreeHostPlatform.patch
+ source = rebuild-Linux-frame-button-cache-when-activation.patch
source = chromium-widevine.patch
source = chromium-skia-harmony.patch
- sha256sums = e1a7362d396b0f72e6ad8c1d53cae67db201e0eeaa2a96dbe9214d080925bcf3
+ sha256sums = f51f6fca5d9abbef855aa6b5bf427410c6e96ae58b64a7d45f843868cfb0ac8e
sha256sums = 04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1
sha256sums = SKIP
- sha256sums = 2f77b02f0e5b2396cdbede4360bd44f71d03844c36bd8c4f038f3e238fac8981
+ sha256sums = d8a57adf4b3106ab4d7ecdf5b050e02b87901b61c33cfa8810a7143c483e1fe4
+ sha256sums = 157ba62d6b9ae92ade0babebd8a4f2d5ef8bdd54ae2f3646a61261e9805b86fa
sha256sums = babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb
sha256sums = 0ec6ee49113cc8cc5036fa008519b94137df6987bf1f9fbffb2d42d298af868a
sha256sums = 9aebd800e5fe191cd5f4bd82c33419eefdd80919e6c6f5a3a9346a224625f094
- sha256sums = bd0fae907c451252e91c4cbf1ad301716bc9f8a4644ecc60e9590a64197477d3
- sha256sums = 1f906676563e866e2b59719679e76e0b2f7f082f48ef0593e86da0351a586c73
- sha256sums = 1de9bdbfed482295dda45c7d4e323cee55a34e42f66b892da1c1a778682b7a41
- sha256sums = e73cc2ee8d3ea35aab18c478d76fdfc68ca4463e1e10306fa1e738c03b3f26b5
- sha256sums = eb67eda4945a89c3b90473fa8dc20637511ca4dcb58879a8ed6bf403700ca9c8
- sha256sums = c0ad3fa426cb8fc1a237ddc6309a6b2dd4055bbe41dd07f50071ee61f969b81a
- sha256sums = 6fbffe59b886195b92c9a55137cef83021c16593f49714acb20023633e3ebb19
+ sha256sums = 0a8d1af2a3734b5f99ea8462940e332db4acee7130fe436ad3e4b7ad133e5ae5
+ sha256sums = 21f631851cdcb347f40793485b168cb5d0da65ae26ae39ba58d624c66197d0a5
+ sha256sums = 08ef82476780e0864b5bf7f20eb19db320e73b9a5d4f595351e12e97dda8746f
+ sha256sums = e477aa48a11ca4d53927f66a9593567fcd053325fb38af30ac3508465f1dd1f6
+ sha256sums = 18276e65c68a0c328601b12fefb7e8bfc632346f34b87e64944c9de8c95c5cfa
+ sha256sums = 5bc775c0ece84d67855f51b30eadcf96fa8163b416d2036e9f9ba19072f54dfe
+ sha256sums = e530d1b39504c2ab247e16f1602359c484e9e8be4ef6d4824d68b14d29a7f60b
+ sha256sums = 5db225565336a3d9b9e9f341281680433c0b7bb343dff2698b2acffd86585cbe
+ sha256sums = ae3bf107834bd8eda9a3ec7899fe35fde62e6111062e5def7d24bf49b53db3db
+ sha256sums = 46f7fc9768730c460b27681ccf3dc2685c7e1fd22d70d3a82d9e57e3389bb014
sha256sums = 709e2fddba3c1f2ed4deb3a239fc0479bfa50c46e054e7f32db4fb1365fed070
sha256sums = 771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1
diff --git a/0001-Add-missing-algorithm-header-in-bitmap_cursor_factor.patch b/0001-Add-missing-algorithm-header-in-bitmap_cursor_factor.patch
new file mode 100644
index 000000000000..dd66d5461fb7
--- /dev/null
+++ b/0001-Add-missing-algorithm-header-in-bitmap_cursor_factor.patch
@@ -0,0 +1,47 @@
+From 1def13d08fb76df631b604af75e754df94626c0c Mon Sep 17 00:00:00 2001
+From: Daniel Playfair Cal <daniel.playfair.cal@gmail.com>
+Date: Fri, 13 Dec 2019 11:48:23 +0000
+Subject: [PATCH] Add missing algorithm header in
+ bitmap_cursor_factory_ozone.cc
+
+This is needed for the use of std::find_if
+
+Change-Id: Ica47d3d323f5b2e115463372824b1af84b2294bc
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1963832
+Commit-Queue: Maksim Sisov <msisov@igalia.com>
+Reviewed-by: Maksim Sisov <msisov@igalia.com>
+Reviewed-by: Robert Kroeger <rjkroege@chromium.org>
+Auto-Submit: Daniel Playfair Cal <daniel.playfair.cal@gmail.com>
+Cr-Commit-Position: refs/heads/master@{#724589}
+---
+ AUTHORS | 1 +
+ ui/base/cursor/ozone/bitmap_cursor_factory_ozone.cc | 2 ++
+ 2 files changed, 3 insertions(+)
+
+diff --git a/AUTHORS b/AUTHORS
+index 751283238162..bf8810c3f109 100644
+--- a/AUTHORS
++++ b/AUTHORS
+@@ -205,6 +205,7 @@ Daniel Johnson <danielj41@gmail.com>
+ Daniel Lockyer <thisisdaniellockyer@gmail.com>
+ Daniel Nishi <dhnishi@gmail.com>
+ Daniel Platz <daplatz@googlemail.com>
++Daniel Playfair Cal <daniel.playfair.cal@gmail.com>
+ Daniel Shaulov <dshaulov@ptc.com>
+ Daniel Trebbien <dtrebbien@gmail.com>
+ Daniel Waxweiler <daniel.waxweiler@gmail.com>
+diff --git a/ui/base/cursor/ozone/bitmap_cursor_factory_ozone.cc b/ui/base/cursor/ozone/bitmap_cursor_factory_ozone.cc
+index 71ec564b4803..f79d7932e236 100644
+--- a/ui/base/cursor/ozone/bitmap_cursor_factory_ozone.cc
++++ b/ui/base/cursor/ozone/bitmap_cursor_factory_ozone.cc
+@@ -4,6 +4,8 @@
+
+ #include "ui/base/cursor/ozone/bitmap_cursor_factory_ozone.h"
+
++#include <algorithm>
++
+ #include "base/logging.h"
+ #include "third_party/skia/include/core/SkBitmap.h"
+ #include "ui/base/cursor/cursors_aura.h"
+--
+2.24.1
diff --git a/PKGBUILD b/PKGBUILD
index 0e9dfe591f2e..4bbc48bffb0f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,58 +3,65 @@
pkgname=ungoogled-chromium-ozone
_pkgname=ungoogled-chromium
-pkgver=79.0.3945.79
+pkgver=80.0.3987.87
pkgrel=1
_launcher_ver=6
+_ungoogled_rel=2
pkgdesc="A lightweight approach to removing Google web service dependency with patches for wayland support via Ozone"
arch=('x86_64')
url="https://ungoogled-software.github.io/"
license=('BSD')
depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt'
- 'ttf-font' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib'
+ 'ttf-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib' 'libva'
'desktop-file-utils' 'hicolor-icon-theme')
makedepends=('python' 'python2' 'gperf' 'yasm' 'mesa' 'ninja' 'nodejs' 'git'
'pipewire' 'clang' 'lld' 'gn' 'java-runtime-headless')
optdepends=('pepper-flash: support for Flash content'
+ 'pipewire: WebRTC desktop sharing under Wayland'
'kdialog: needed for file dialogs in KDE'
'org.freedesktop.secrets: password storage backend on GNOME / Xfce'
- 'kwallet: for storing passwords in KWallet on KDE desktops'
- 'libva-intel-driver: for hardware video acceleration with Intel GPUs'
- 'intel-media-driver: for hardware video acceleration with newer intel gpus'
- 'libva-mesa-driver: for hardware video acceleration with AMD/ATI GPUs'
- 'libva-vdpau-driver: for hardware video acceleration with NVIDIA GPUs')
+ 'kwallet: for storing passwords in KWallet on KDE desktops')
provides=('chromium')
conflicts=('chromium')
source=(https://commondatastorage.googleapis.com/chromium-browser-official/chromium-${pkgver}.tar.xz
chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz
- 'ungoogled-chromium::git+https://github.com/Eloston/ungoogled-chromium'
+ 'ungoogled-chromium.zip::https://github.com/Eloston/ungoogled-chromium/archive/80.0.3987.87-2.zip'
+ 0001-Add-missing-algorithm-header-in-bitmap_cursor_factor.patch
flags.archlinux.gn
chromium-drirc-disable-10bpc-color-configs.conf
vaapi-fix.patch
fix-vaapi-ozone-build.patch
- launch_manager.h-uses-std-vector.patch
- include-algorithm-to-use-std-lower_bound.patch
- icu65.patch
- chromium-system-icu.patch
- chromium-system-zlib.patch
- chromium-system-hb.patch
- fix-spammy-unique-font-matching-log.patch
+ cros-search-service-Include-cmath-for-std-pow.patch
+ move-RemoteTreeNode-declaration.patch
+ sync-enable-USSPasswords-by-default.patch
+ fix-shim-header-generation-when-unbundling-ICU.patch
+ fix-building-with-system-zlib.patch
+ remove-verbose-logging-in-local-unique-font-matching.patch
+ fix-building-with-unbundled-libxml.patch
+ fix-browser-frame-view-not-getting-a-relayout.patch
+ rename-Relayout-in-DesktopWindowTreeHostPlatform.patch
+ rebuild-Linux-frame-button-cache-when-activation.patch
chromium-widevine.patch
chromium-skia-harmony.patch)
-sha256sums=('e1a7362d396b0f72e6ad8c1d53cae67db201e0eeaa2a96dbe9214d080925bcf3'
+sha256sums=('f51f6fca5d9abbef855aa6b5bf427410c6e96ae58b64a7d45f843868cfb0ac8e'
'04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1'
'SKIP'
- '2f77b02f0e5b2396cdbede4360bd44f71d03844c36bd8c4f038f3e238fac8981'
+# '716c28bed9f6e9c32e3617e125c1b04806700aef691763923cd4ed14b8d23279'
+ 'd8a57adf4b3106ab4d7ecdf5b050e02b87901b61c33cfa8810a7143c483e1fe4'
+ '157ba62d6b9ae92ade0babebd8a4f2d5ef8bdd54ae2f3646a61261e9805b86fa'
'babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb'
'0ec6ee49113cc8cc5036fa008519b94137df6987bf1f9fbffb2d42d298af868a'
'9aebd800e5fe191cd5f4bd82c33419eefdd80919e6c6f5a3a9346a224625f094'
- 'bd0fae907c451252e91c4cbf1ad301716bc9f8a4644ecc60e9590a64197477d3'
- '1f906676563e866e2b59719679e76e0b2f7f082f48ef0593e86da0351a586c73'
- '1de9bdbfed482295dda45c7d4e323cee55a34e42f66b892da1c1a778682b7a41'
- 'e73cc2ee8d3ea35aab18c478d76fdfc68ca4463e1e10306fa1e738c03b3f26b5'
- 'eb67eda4945a89c3b90473fa8dc20637511ca4dcb58879a8ed6bf403700ca9c8'
- 'c0ad3fa426cb8fc1a237ddc6309a6b2dd4055bbe41dd07f50071ee61f969b81a'
- '6fbffe59b886195b92c9a55137cef83021c16593f49714acb20023633e3ebb19'
+ '0a8d1af2a3734b5f99ea8462940e332db4acee7130fe436ad3e4b7ad133e5ae5'
+ '21f631851cdcb347f40793485b168cb5d0da65ae26ae39ba58d624c66197d0a5'
+ '08ef82476780e0864b5bf7f20eb19db320e73b9a5d4f595351e12e97dda8746f'
+ 'e477aa48a11ca4d53927f66a9593567fcd053325fb38af30ac3508465f1dd1f6'
+ '18276e65c68a0c328601b12fefb7e8bfc632346f34b87e64944c9de8c95c5cfa'
+ '5bc775c0ece84d67855f51b30eadcf96fa8163b416d2036e9f9ba19072f54dfe'
+ 'e530d1b39504c2ab247e16f1602359c484e9e8be4ef6d4824d68b14d29a7f60b'
+ '5db225565336a3d9b9e9f341281680433c0b7bb343dff2698b2acffd86585cbe'
+ 'ae3bf107834bd8eda9a3ec7899fe35fde62e6111062e5def7d24bf49b53db3db'
+ '46f7fc9768730c460b27681ccf3dc2685c7e1fd22d70d3a82d9e57e3389bb014'
'709e2fddba3c1f2ed4deb3a239fc0479bfa50c46e054e7f32db4fb1365fed070'
'771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1')
# Possible replacements are listed in build/linux/unbundle/replace_gn_files.py
@@ -69,7 +76,7 @@ declare -gA _system_libs=(
[libdrm]=
[libjpeg]=libjpeg
#[libpng]=libpng # https://crbug.com/752403#c10
- #[libvpx]=libvpx # https://github.com/webmproject/libvpx/commit/5a0242ba5c
+ [libvpx]=libvpx
[libwebp]=libwebp
[libxml]=libxml2
[libxslt]=libxslt
@@ -96,7 +103,7 @@ prepare() {
sed -i -e 's/\<xmlMalloc\>/malloc/' -e 's/\<xmlFree\>/free/' \
third_party/blink/renderer/core/xml/*.cc \
third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \
- third_party/libxml/chromium/libxml_utils.cc
+ third_party/libxml/chromium/*.cc
msg2 'Applying archlinux patches'
@@ -105,21 +112,35 @@ prepare() {
# Fix vaapi linkage error
patch -Np1 -i ../fix-vaapi-ozone-build.patch
-
- # https://crbug.com/819294
- patch -Np1 -i ../launch_manager.h-uses-std-vector.patch
- patch -Np1 -i ../include-algorithm-to-use-std-lower_bound.patch
- # https://crbug.com/1014272
- patch -Np1 -i ../icu65.patch
+ # build fixes
+ patch -Np1 -i ../0001-Add-missing-algorithm-header-in-bitmap_cursor_factor.patch
+
+ # https://crbug.com/957519
+ patch -Np1 -i ../cros-search-service-Include-cmath-for-std-pow.patch
+ patch -Np1 -i ../move-RemoteTreeNode-declaration.patch
+
+ # https://crbug.com/1027929
+ patch -Np1 -i ../sync-enable-USSPasswords-by-default.patch
+
+ # https://crbug.com/989153
+ patch -Np1 -i ../fix-shim-header-generation-when-unbundling-ICU.patch
- # Fixes from Gentoo
- patch -Np1 -i ../chromium-system-icu.patch
- patch -Np1 -i ../chromium-system-zlib.patch
- patch -Np1 -i ../chromium-system-hb.patch
+ # https://crbug.com/977964
+ patch -Np1 -i ../fix-building-with-system-zlib.patch
# https://crbug.com/1005508
- patch -Np1 -i ../fix-spammy-unique-font-matching-log.patch
+ patch -Np1 -i ../remove-verbose-logging-in-local-unique-font-matching.patch
+
+ # https://crbug.com/1043042
+ patch -Np1 -i ../fix-building-with-unbundled-libxml.patch
+
+ # https://crbug.com/1046122
+ patch -Np1 -i ../fix-browser-frame-view-not-getting-a-relayout.patch
+
+ # https://crbug.com/1049258
+ patch -Np1 -i ../rename-Relayout-in-DesktopWindowTreeHostPlatform.patch
+ patch -Np1 -i ../rebuild-Linux-frame-button-cache-when-activation.patch
# Load bundled Widevine CDM if available (see chromium-widevine in the AUR)
# M79 is supposed to download it as a component but it doesn't seem to work
@@ -129,7 +150,7 @@ prepare() {
patch -Np0 -i ../chromium-skia-harmony.patch
# Ungoogled chromium stuff
- _ungoogled_repo="$srcdir/$_pkgname"
+ _ungoogled_repo="$srcdir/$_pkgname-$pkgver-$_ungoogled_rel"
_utils="${_ungoogled_repo}/utils"
msg2 'Applying ungoogled chromium patches'
# Prune binaries
@@ -178,7 +199,7 @@ build() {
export NM=nm
# Ungoogled Chromium stuff
- _ungoogled_repo="$srcdir/$_pkgname"
+ _ungoogled_repo="$srcdir/$_pkgname-$pkgver-$_ungoogled_rel"
nproc=$(nproc)
mkdir -p out/Release
# Assemble GN flags
diff --git a/chromium-system-hb.patch b/chromium-system-hb.patch
deleted file mode 100644
index 83e0621777f1..000000000000
--- a/chromium-system-hb.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff --git a/components/paint_preview/common/subset_font.cc b/components/paint_preview/common/subset_font.cc
-index a218d63..6a5bdae 100644
---- a/components/paint_preview/common/subset_font.cc
-+++ b/components/paint_preview/common/subset_font.cc
-@@ -10,11 +10,12 @@
- #include "base/bind.h"
- #include "base/callback.h"
- #include "base/macros.h"
--#include "third_party/harfbuzz-ng/src/src/hb-subset.h"
--#include "third_party/harfbuzz-ng/src/src/hb.h"
- #include "third_party/skia/include/core/SkStream.h"
- #include "third_party/skia/include/core/SkTypeface.h"
-
-+#include <hb-subset.h>
-+#include <hb.h>
-+
- namespace paint_preview {
-
- namespace {
diff --git a/chromium-system-icu.patch b/chromium-system-icu.patch
deleted file mode 100644
index 1f848d7ee2be..000000000000
--- a/chromium-system-icu.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/build/linux/unbundle/icu.gn b/build/linux/unbundle/icu.gn
-index 4450e40..9ca36dd 100644
---- a/build/linux/unbundle/icu.gn
-+++ b/build/linux/unbundle/icu.gn
-@@ -96,6 +96,7 @@ shim_headers("icui18n_shim") {
- "unicode/fpositer.h",
- "unicode/gender.h",
- "unicode/gregocal.h",
-+ "unicode/listformatter.h",
- "unicode/measfmt.h",
- "unicode/measunit.h",
- "unicode/measure.h",
-@@ -178,7 +179,6 @@ shim_headers("icuuc_shim") {
- "unicode/icudataver.h",
- "unicode/icuplug.h",
- "unicode/idna.h",
-- "unicode/listformatter.h",
- "unicode/localpointer.h",
- "unicode/locdspnm.h",
- "unicode/locid.h",
diff --git a/chromium-system-zlib.patch b/chromium-system-zlib.patch
deleted file mode 100644
index 951a2adb196a..000000000000
--- a/chromium-system-zlib.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn
-index 3bc618a..e0ddf6d 100644
---- a/third_party/perfetto/gn/BUILD.gn
-+++ b/third_party/perfetto/gn/BUILD.gn
-@@ -244,7 +244,7 @@ if (enable_perfetto_trace_processor || perfetto_build_standalone ||
- "//buildtools:zlib",
- ]
- } else {
-- public_configs = [ "//third_party/zlib:zlib_config" ]
-+ public_configs = [ "//third_party/zlib:system_zlib" ]
- public_deps = [
- "//third_party/zlib",
- ]
diff --git a/cros-search-service-Include-cmath-for-std-pow.patch b/cros-search-service-Include-cmath-for-std-pow.patch
new file mode 100644
index 000000000000..410b968d0fe6
--- /dev/null
+++ b/cros-search-service-Include-cmath-for-std-pow.patch
@@ -0,0 +1,35 @@
+From 8273f4d3130e06fd8b6bef87b07c936304b971d9 Mon Sep 17 00:00:00 2001
+From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
+Date: Tue, 10 Dec 2019 20:59:57 +0000
+Subject: [PATCH] [cros search service]: Include <cmath> for std::pow()
+
+IWYU. Follow up to commit 2b2ea3c09b ("[cros search service] Move shared
+string matching functions to //chrome"), which broke the libstdc++ build:
+
+ ../../chrome/common/string_matching/fuzzy_tokenized_string_match.cc:199:14: error: no member named 'pow' in namespace 'std'
+ std::pow(partial_match_penalty_rate, long_start - current - 1);
+ ~~~~~^
+
+Bug: 957519
+Change-Id: I66f61cb4f93cfa0bfa3d1b00ba391ddd8f31a7fb
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960310
+Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
+Reviewed-by: Jia Meng <jiameng@chromium.org>
+Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
+Cr-Commit-Position: refs/heads/master@{#723499}
+---
+ chrome/common/string_matching/fuzzy_tokenized_string_match.cc | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/chrome/common/string_matching/fuzzy_tokenized_string_match.cc b/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
+index 8351fa701e4..884ef638c61 100644
+--- a/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
++++ b/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
+@@ -5,6 +5,7 @@
+ #include "chrome/common/string_matching/fuzzy_tokenized_string_match.h"
+
+ #include <algorithm>
++#include <cmath>
+ #include <iterator>
+
+ #include "base/i18n/case_conversion.h"
diff --git a/fix-browser-frame-view-not-getting-a-relayout.patch b/fix-browser-frame-view-not-getting-a-relayout.patch
new file mode 100644
index 000000000000..fbdd026ff10f
--- /dev/null
+++ b/fix-browser-frame-view-not-getting-a-relayout.patch
@@ -0,0 +1,38 @@
+From c73968d63c456d4aaf55c5cd439b42403a3bbeb1 Mon Sep 17 00:00:00 2001
+From: Tom Anderson <thomasanderson@chromium.org>
+Date: Mon, 3 Feb 2020 19:53:50 +0000
+Subject: [PATCH] Fix browser frame view not getting a relayout after a state
+ change
+
+views::NonClientView has 2 things: a views::NonClientFrameView and a
+views::ClientView. We were previously only invalidating the layout on
+the ClientView after a state change. This was causing the browser
+frame to paint as if it were still maximized after restoring from
+a maximized state on Linux. Invalidating the layout of the frame view
+fixes the issue.
+
+BUG=1046122
+R=sky
+
+Change-Id: I7da525efe1f436564ffffb410afe294e901e5d89
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2033759
+Reviewed-by: Scott Violet <sky@chromium.org>
+Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#737890}
+---
+ .../widget/desktop_aura/desktop_window_tree_host_platform.cc | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
+index 9abbce89586..6c00d49eb3f 100644
+--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
++++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
+@@ -717,6 +717,8 @@ void DesktopWindowTreeHostPlatform::Relayout() {
+ NonClientView* non_client_view = widget->non_client_view();
+ // non_client_view may be NULL, especially during creation.
+ if (non_client_view) {
++ if (non_client_view->frame_view())
++ non_client_view->frame_view()->InvalidateLayout();
+ non_client_view->client_view()->InvalidateLayout();
+ non_client_view->InvalidateLayout();
+ }
diff --git a/fix-building-with-system-zlib.patch b/fix-building-with-system-zlib.patch
new file mode 100644
index 000000000000..d488ac20fe13
--- /dev/null
+++ b/fix-building-with-system-zlib.patch
@@ -0,0 +1,32 @@
+From cda86e34ddadba5f08dea764881bbb6c8ec01e8a Mon Sep 17 00:00:00 2001
+From: Stephan Hartmann <stha09@googlemail.com>
+Date: Sat, 25 Jan 2020 02:00:43 +0000
+Subject: [PATCH] Fix building with system zlib
+
+Add zlib_config target because perfetto depends on it.
+
+Bug: 977964
+Change-Id: I2aac5c3704f1274f932a61264d1c26a05f2db55e
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2019035
+Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
+Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#735201}
+---
+ build/linux/unbundle/zlib.gn | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/build/linux/unbundle/zlib.gn b/build/linux/unbundle/zlib.gn
+index 1fdd472f35e..97d6aebe6d5 100644
+--- a/build/linux/unbundle/zlib.gn
++++ b/build/linux/unbundle/zlib.gn
+@@ -13,6 +13,10 @@ config("system_zlib") {
+ defines = [ "USE_SYSTEM_ZLIB=1" ]
+ }
+
++config("zlib_config") {
++ configs = [ ":system_zlib" ]
++}
++
+ source_set("zlib") {
+ deps = [ ":zlib_shim" ]
+ libs = [ "z" ]
diff --git a/fix-building-with-unbundled-libxml.patch b/fix-building-with-unbundled-libxml.patch
new file mode 100644
index 000000000000..7b934376e6e4
--- /dev/null
+++ b/fix-building-with-unbundled-libxml.patch
@@ -0,0 +1,127 @@
+From d3afade220ddb307e16a6dd4f2b0ec88b2af91e7 Mon Sep 17 00:00:00 2001
+From: Stephan Hartmann <stha09@googlemail.com>
+Date: Tue, 28 Jan 2020 18:16:54 +0000
+Subject: [PATCH] Fix building with unbundled libxml
+
+Add new targets to libxml.gn that were added in
+ https://chromium-review.googlesource.com/c/chromium/src/+/1894877
+Adjust includes to use system libxml headers too
+
+Bug: 1043042
+Change-Id: I948c063e212e49b9e7f42fed2b8bf7f4af042ca7
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2007110
+Reviewed-by: Robert Sesek <rsesek@chromium.org>
+Reviewed-by: Daniel Cheng <dcheng@chromium.org>
+Reviewed-by: Nico Weber <thakis@chromium.org>
+Commit-Queue: Robert Sesek <rsesek@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#735957}
+---
+ build/linux/unbundle/libxml.gn | 41 ++++++++++++++++++++--
+ third_party/libxml/chromium/libxml_utils.h | 4 +--
+ third_party/libxml/chromium/xml_reader.cc | 3 +-
+ third_party/libxml/chromium/xml_writer.cc | 3 +-
+ 4 files changed, 45 insertions(+), 6 deletions(-)
+
+diff --git a/build/linux/unbundle/libxml.gn b/build/linux/unbundle/libxml.gn
+index c481bd3547b..3587881eea8 100644
+--- a/build/linux/unbundle/libxml.gn
++++ b/build/linux/unbundle/libxml.gn
+@@ -8,11 +8,48 @@ pkg_config("system_libxml") {
+ packages = [ "libxml-2.0" ]
+ }
+
+-static_library("libxml") {
++source_set("libxml") {
++ public_configs = [ ":system_libxml" ]
++}
++
++static_library("libxml_utils") {
++ # Do not expand this visibility list without first consulting with the
++ # Security Team.
++ visibility = [
++ ":xml_reader",
++ ":xml_writer",
++ "//base/test:test_support",
++ "//services/data_decoder:xml_parser_fuzzer",
++ ]
+ sources = [
+ "chromium/libxml_utils.cc",
+ "chromium/libxml_utils.h",
+ ]
+-
+ public_configs = [ ":system_libxml" ]
+ }
++
++static_library("xml_reader") {
++ # Do not expand this visibility list without first consulting with the
++ # Security Team.
++ visibility = [
++ "//base/test:test_support",
++ "//components/policy/core/common:unit_tests",
++ "//services/data_decoder:*",
++ "//tools/traffic_annotation/auditor:auditor_sources",
++ ]
++ sources = [
++ "chromium/xml_reader.cc",
++ "chromium/xml_reader.h",
++ ]
++ deps = [ ":libxml_utils" ]
++}
++
++static_library("xml_writer") {
++ # The XmlWriter is considered safe to use from any target.
++ visibility = [ "*" ]
++ sources = [
++ "chromium/xml_writer.cc",
++ "chromium/xml_writer.h",
++ ]
++ deps = [ ":libxml_utils" ]
++}
+diff --git a/third_party/libxml/chromium/libxml_utils.h b/third_party/libxml/chromium/libxml_utils.h
+index ff969fab540..8b2383f9c8b 100644
+--- a/third_party/libxml/chromium/libxml_utils.h
++++ b/third_party/libxml/chromium/libxml_utils.h
+@@ -5,9 +5,9 @@
+ #ifndef THIRD_PARTY_LIBXML_CHROMIUM_LIBXML_UTILS_H_
+ #define THIRD_PARTY_LIBXML_CHROMIUM_LIBXML_UTILS_H_
+
+-#include <string>
++#include <libxml/xmlreader.h>
+
+-#include "third_party/libxml/src/include/libxml/xmlreader.h"
++#include <string>
+
+ // libxml uses a global error function pointer for reporting errors.
+ // A ScopedXmlErrorFunc object lets you change the global error pointer
+diff --git a/third_party/libxml/chromium/xml_reader.cc b/third_party/libxml/chromium/xml_reader.cc
+index 92464f4cbcc..899ccefb7c8 100644
+--- a/third_party/libxml/chromium/xml_reader.cc
++++ b/third_party/libxml/chromium/xml_reader.cc
+@@ -4,10 +4,11 @@
+
+ #include "third_party/libxml/chromium/xml_reader.h"
+
++#include <libxml/xmlreader.h>
++
+ #include <vector>
+
+ #include "third_party/libxml/chromium/libxml_utils.h"
+-#include "third_party/libxml/src/include/libxml/xmlreader.h"
+
+ using internal::XmlStringToStdString;
+
+diff --git a/third_party/libxml/chromium/xml_writer.cc b/third_party/libxml/chromium/xml_writer.cc
+index 51fce8ebeb1..7c58031fe2d 100644
+--- a/third_party/libxml/chromium/xml_writer.cc
++++ b/third_party/libxml/chromium/xml_writer.cc
+@@ -4,8 +4,9 @@
+
+ #include "third_party/libxml/chromium/xml_writer.h"
+
++#include <libxml/xmlwriter.h>
++
+ #include "third_party/libxml/chromium/libxml_utils.h"
+-#include "third_party/libxml/src/include/libxml/xmlwriter.h"
+
+ XmlWriter::XmlWriter() : writer_(nullptr), buffer_(nullptr) {}
+
diff --git a/fix-shim-header-generation-when-unbundling-ICU.patch b/fix-shim-header-generation-when-unbundling-ICU.patch
new file mode 100644
index 000000000000..04f1ecd3bced
--- /dev/null
+++ b/fix-shim-header-generation-when-unbundling-ICU.patch
@@ -0,0 +1,50 @@
+From dcad5af090528018599277dc5d7e160fb6b2d68e Mon Sep 17 00:00:00 2001
+From: Stephan Hartmann <stha09@googlemail.com>
+Date: Wed, 15 Jan 2020 20:26:40 +0000
+Subject: [PATCH] Fix shim header generation when unbundling ICU
+
+listformatter.h was moved from icuuc to icui18n
+
+Bug: 989153
+Change-Id: I9fcb56f6d5af7787f34ea99b737e2ed8fe741c84
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2000142
+Reviewed-by: Lei Zhang <thestig@chromium.org>
+Commit-Queue: Lei Zhang <thestig@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#732114}
+---
+ AUTHORS | 1 +
+ build/linux/unbundle/icu.gn | 2 +-
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/AUTHORS b/AUTHORS
+index 7523e483aae..1618fddc633 100644
+--- a/AUTHORS
++++ b/AUTHORS
+@@ -891,6 +891,7 @@ Soren Dreijer <dreijerbit@gmail.com>
+ Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+ Srirama Chandra Sekhar Mogali <srirama.m@samsung.com>
+ Staphany Park <stapark008@gmail.com>
++Stephan Hartmann <stha09@googlemail.com>
+ Stephen Searles <stephen.searles@gmail.com>
+ Steve Sanders <steve@zanderz.com>
+ Steven Pennington <spenn@engr.uvic.ca>
+diff --git a/build/linux/unbundle/icu.gn b/build/linux/unbundle/icu.gn
+index 923bd7f5ac3..e77bc43db87 100644
+--- a/build/linux/unbundle/icu.gn
++++ b/build/linux/unbundle/icu.gn
+@@ -92,6 +92,7 @@ shim_headers("icui18n_shim") {
+ "unicode/fpositer.h",
+ "unicode/gender.h",
+ "unicode/gregocal.h",
++ "unicode/listformatter.h",
+ "unicode/measfmt.h",
+ "unicode/measunit.h",
+ "unicode/measure.h",
+@@ -174,7 +175,6 @@ shim_headers("icuuc_shim") {
+ "unicode/icudataver.h",
+ "unicode/icuplug.h",
+ "unicode/idna.h",
+- "unicode/listformatter.h",
+ "unicode/localpointer.h",
+ "unicode/locdspnm.h",
+ "unicode/locid.h",
diff --git a/fix-spammy-unique-font-matching-log.patch b/fix-spammy-unique-font-matching-log.patch
deleted file mode 100644
index 9321a98a7254..000000000000
--- a/fix-spammy-unique-font-matching-log.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/content/child/child_process_sandbox_support_impl_linux.cc b/content/child/child_process_sandbox_support_impl_linux.cc
-index 0a57543eb5..fe2ee491a2 100644
---- a/content/child/child_process_sandbox_support_impl_linux.cc
-+++ b/content/child/child_process_sandbox_support_impl_linux.cc
-@@ -78,8 +78,6 @@ void WebSandboxSupportLinux::MatchFontByPostscriptNameOrFullFontName(
- std::string family_name;
- if (!font_loader_->MatchFontByPostscriptNameOrFullFontName(font_unique_name,
- &font_identity)) {
-- LOG(ERROR) << "FontService unique font name matching request did not "
-- "receive a response.";
- return;
- }
-
diff --git a/flags.archlinux.gn b/flags.archlinux.gn
index 5eb781e02f2b..0e8efd8117cf 100644
--- a/flags.archlinux.gn
+++ b/flags.archlinux.gn
@@ -8,7 +8,6 @@ goma_dir=""
is_official_build=true
host_toolchain="//build/toolchain/linux/unbundle:default"
is_clang=true
-jumbo_file_merge_limit=8
link_pulseaudio=true
linux_use_bundled_binutils=false
proprietary_codecs=true
@@ -17,7 +16,6 @@ use_cups=true
use_custom_libcxx=false
use_gio=true
use_gnome_keyring=false
-use_jumbo_build=true
use_kerberos=false
use_libjpeg_turbo=true
use_lld=true
diff --git a/icu65.patch b/icu65.patch
deleted file mode 100644
index 811d56286a98..000000000000
--- a/icu65.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 5679c3c191ed62b62d8db22f1657a296ee9bfe8e Mon Sep 17 00:00:00 2001
-From: Frank Tang <ftang@chromium.org>
-Date: Wed, 30 Oct 2019 22:49:47 +0000
-Subject: [PATCH] Update ICU to 65.1 from 64 and fix broken tests
-
-ICU 65-1 release note
-http://site.icu-project.org/download/65
-
-CLDR 36 release blog
-http://blog.unicode.org/2019/10/unicode-cldr-version-36-languagelocale.html
-
-Most of the test expectation change is due to CLDR 36 update
-of Grapheme Cluster for Indic languages
-See the following for related changes in ICU 65.1 in this area:
-https://unicode-org.atlassian.net/browse/CLDR-10994
-https://unicode-org.atlassian.net/browse/ICU-13637
-https://github.com/unicode-org/cldr/blob/master/common/properties/segments/readme.txt
-
-Bug: chromium:1014272, chromium:1017047
-Change-Id: I9fc6d4620bf2a4c189940d06d8c79893502db3dd
-Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng_disabled
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1866059
-Reviewed-by: Jungshik Shin <jshin@chromium.org>
-Reviewed-by: Doug Turner <dougt@chromium.org>
-Reviewed-by: Michael Wasserman <msw@chromium.org>
-Reviewed-by: Kent Tamura <tkent@chromium.org>
-Reviewed-by: Trent Apted <tapted@chromium.org>
-Reviewed-by: Mason Freed <masonfreed@chromium.org>
-Commit-Queue: Frank Tang <ftang@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#711027}
----
- third_party/blink/renderer/core/dom/document.cc | 2 +-
- ui/gfx/render_text_harfbuzz.cc | 5 ++++-
- 2 files changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
-index 511aac29086..f188cf548a6 100644
---- a/third_party/blink/renderer/core/dom/document.cc
-+++ b/third_party/blink/renderer/core/dom/document.cc
-@@ -6191,7 +6191,7 @@ static ParseQualifiedNameResult ParseQualifiedNameInternal(
-
- for (unsigned i = 0; i < length;) {
- UChar32 c;
-- U16_NEXT(characters, i, length, c)
-+ U16_NEXT(characters, i, length, c);
- if (c == ':') {
- if (saw_colon)
- return ParseQualifiedNameResult(kQNMultipleColons);
-diff --git a/ui/gfx/render_text_harfbuzz.cc b/ui/gfx/render_text_harfbuzz.cc
-index 50e86af6b97..0339ff3ff8e 100644
---- a/ui/gfx/render_text_harfbuzz.cc
-+++ b/ui/gfx/render_text_harfbuzz.cc
-@@ -971,7 +971,10 @@ RangeF TextRunHarfBuzz::GetGraphemeBounds(RenderTextHarfBuzz* render_text,
- ++total;
- }
- }
-- DCHECK_GT(total, 0);
-+ // With ICU 65.1, DCHECK_GT() below fails.
-+ // See https://crbug.com/1017047 for more details.
-+ //
-+ // DCHECK_GT(total, 0);
-
- // It's possible for |text_index| to point to a diacritical mark, at the end
- // of |chars|. In this case all the grapheme boundaries come before it. Just
diff --git a/include-algorithm-to-use-std-lower_bound.patch b/include-algorithm-to-use-std-lower_bound.patch
deleted file mode 100644
index dc376321ffc4..000000000000
--- a/include-algorithm-to-use-std-lower_bound.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From f7c177d35242311ea7a2cf49a0980c61664f27ba Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 25 Oct 2019 15:07:09 +0000
-Subject: [PATCH] IWYU: include algorithm to use std::lower_bound in
- ui/gfx/font.cc
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Fix GCC build because of missing include:
-../../ui/gfx/font.cc: In function ‘gfx::Font::Weight gfx::FontWeightFromInt(int)’:
-../../ui/gfx/font.cc:114:8: error: no matching function for call to ‘lower_bound(const gfx::Font::Weight*, const gfx::Font::Weight*, int&, gfx::FontWeightFromInt(int)::<lambda(const gfx::Font::Weight&, const int&)>)’
- });
- ^
-In file included from /usr/include/c++/8/bits/char_traits.h:39,
- from /usr/include/c++/8/string:40,
- from ../../ui/gfx/font.h:8,
- from ../../ui/gfx/font.cc:5:
-/usr/include/c++/8/bits/stl_algobase.h:984:5: note: candidate: ‘template<class _ForwardIterator, class _Tp> _ForwardIterator std::lower_bound(_ForwardIterator, _ForwardIterator, const _Tp&)’
- lower_bound(_ForwardIterator __first, _ForwardIterator __last,
- ^~~~~~~~~~~
-/usr/include/c++/8/bits/stl_algobase.h:984:5: note: template argument deduction/substitution failed:
-../../ui/gfx/font.cc:114:8: note: candidate expects 3 arguments, 4 provided
- });
- ^
-
-Bug: 819294
-Change-Id: Ic59dcf3a06bdd54d1d426c08a61624873a0ff30c
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1879909
-Commit-Queue: Alexei Svitkine <asvitkine@chromium.org>
-Reviewed-by: Alexei Svitkine <asvitkine@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#709472}
----
- ui/gfx/font.cc | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/ui/gfx/font.cc b/ui/gfx/font.cc
-index 21367fd7297..92b159e13d1 100644
---- a/ui/gfx/font.cc
-+++ b/ui/gfx/font.cc
-@@ -4,6 +4,8 @@
-
- #include "ui/gfx/font.h"
-
-+#include <algorithm>
-+
- #include "base/strings/utf_string_conversions.h"
- #include "build/build_config.h"
- #include "ui/gfx/platform_font.h"
diff --git a/launch_manager.h-uses-std-vector.patch b/launch_manager.h-uses-std-vector.patch
deleted file mode 100644
index 72abe9b9ce69..000000000000
--- a/launch_manager.h-uses-std-vector.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 97eb905ba262382bc3583078761c68f4452aea71 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 25 Oct 2019 09:27:53 +0000
-Subject: [PATCH] IWYU: launch_manager.h uses std::vector
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Add #include <vector> for using std::vector. This fixes GCC build.
-
-./../chrome/browser/apps/launch_service/launch_manager.h:46:15: error: ‘vector’ in namespace ‘std’ does not name a template type
- static std::vector<base::FilePath> GetLaunchFilesFromCommandLine(
- ^~~~~~
-
-Bug: 819294
-Change-Id: I02ec3a2914a8fbe3aa0041017a0228f4b0ca1ec9
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1879289
-Reviewed-by: Alexey Baskakov <loyso@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#709411}
----
- chrome/browser/apps/launch_service/launch_manager.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/chrome/browser/apps/launch_service/launch_manager.h b/chrome/browser/apps/launch_service/launch_manager.h
-index 00aeb9d9c2a..76570ead0f9 100644
---- a/chrome/browser/apps/launch_service/launch_manager.h
-+++ b/chrome/browser/apps/launch_service/launch_manager.h
-@@ -6,6 +6,7 @@
- #define CHROME_BROWSER_APPS_LAUNCH_SERVICE_LAUNCH_MANAGER_H_
-
- #include <string>
-+#include <vector>
-
- #include "base/macros.h"
-
diff --git a/move-RemoteTreeNode-declaration.patch b/move-RemoteTreeNode-declaration.patch
new file mode 100644
index 000000000000..50fc78cdb47a
--- /dev/null
+++ b/move-RemoteTreeNode-declaration.patch
@@ -0,0 +1,237 @@
+From cdf3e81ff49b200213d67d65558f2919222b60ab Mon Sep 17 00:00:00 2001
+From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
+Date: Mon, 16 Dec 2019 11:39:11 +0000
+Subject: [PATCH] BookmarkModelMerger: Move RemoteTreeNode declaration to
+ header.
+
+This fixes the build with libstdc++ after commit 8f5dad93e58 ("Fix CHECK
+failure due to untracked local nodes"):
+
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/stl_pair.h:215:11: error: field has incomplete type 'sync_bookmarks::BookmarkModelMerger::RemoteTreeNode'
+ _T2 second; /// @c second is a copy of the second object
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/ext/aligned_buffer.h:91:28: note: in instantiation of template class 'std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>' requested here
+ : std::aligned_storage<sizeof(_Tp), __alignof__(_Tp)>
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:233:43: note: in instantiation of template class '__gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >' requested here
+ __gnu_cxx::__aligned_buffer<_Value> _M_storage;
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:264:39: note: in instantiation of template class 'std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >' requested here
+ struct _Hash_node<_Value, true> : _Hash_node_value_base<_Value>
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:2028:25: note: in instantiation of template class 'std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, true>' requested here
+ rebind_traits<typename __node_type::value_type>;
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable.h:184:15: note: in instantiation of template class 'std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, true> > >
+' requested here
+ private __detail::_Hashtable_alloc<
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/unordered_map.h:105:18: note: in instantiation of template class 'std::_Hashtable<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, std::allocator<std::pair<con
+st std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char> >, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__deta
+il::_Hashtable_traits<true, false, true> >' requested here
+ _Hashtable _M_h;
+ ^
+../../components/sync_bookmarks/bookmark_model_merger.h:146:22: note: in instantiation of template class 'std::unordered_map<std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode, std::hash<std::string>, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<con
+st std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> > >' requested here
+ const RemoteForest remote_forest_;
+ ^
+../../components/sync_bookmarks/bookmark_model_merger.h:53:9: note: forward declaration of 'sync_bookmarks::BookmarkModelMerger::RemoteTreeNode'
+ class RemoteTreeNode;
+ ^
+
+Essentially, the problem is that libstdc++'s std::unordered_map<T, U>
+implementation requires both T and U to be fully declared. I raised the
+problem in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92770, and GCC's
+position is that we are relying on undefined behavior according to the C++
+standard (https://eel.is/c++draft/requirements#res.on.functions-2.5).
+
+Bug: 957519
+Change-Id: Ife7e435e516932a795bfbe05b2c910c3272878f0
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960156
+Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
+Reviewed-by: Mikel Astiz <mastiz@chromium.org>
+Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
+Cr-Commit-Position: refs/heads/master@{#725070}
+---
+ .../sync_bookmarks/bookmark_model_merger.cc | 89 +++++++------------
+ .../sync_bookmarks/bookmark_model_merger.h | 48 +++++++++-
+ 2 files changed, 80 insertions(+), 57 deletions(-)
+
+diff --git a/components/sync_bookmarks/bookmark_model_merger.cc b/components/sync_bookmarks/bookmark_model_merger.cc
+index eae153eff95..579848ee664 100644
+--- a/components/sync_bookmarks/bookmark_model_merger.cc
++++ b/components/sync_bookmarks/bookmark_model_merger.cc
+@@ -5,7 +5,6 @@
+ #include "components/sync_bookmarks/bookmark_model_merger.h"
+
+ #include <algorithm>
+-#include <memory>
+ #include <set>
+ #include <string>
+ #include <utility>
+@@ -205,66 +204,44 @@ UpdatesPerParentId GroupValidUpdatesByParentId(
+
+ } // namespace
+
+-class BookmarkModelMerger::RemoteTreeNode final {
+- public:
+- // Constructs a tree given |update| as root and recursively all descendants by
+- // traversing |*updates_per_parent_id|. |update| and |updates_per_parent_id|
+- // must not be null. All updates |*updates_per_parent_id| must represent valid
+- // updates. Updates corresponding from descendant nodes are moved away from
+- // |*updates_per_parent_id|.
+- static RemoteTreeNode BuildTree(
+- std::unique_ptr<syncer::UpdateResponseData> update,
+- UpdatesPerParentId* updates_per_parent_id);
+-
+- ~RemoteTreeNode() = default;
+-
+- // Allow moves, useful during construction.
+- RemoteTreeNode(RemoteTreeNode&&) = default;
+- RemoteTreeNode& operator=(RemoteTreeNode&&) = default;
+-
+- const syncer::EntityData& entity() const { return *update_->entity; }
+- int64_t response_version() const { return update_->response_version; }
+-
+- // Direct children nodes, sorted by ascending unique position. These are
+- // guaranteed to be valid updates (e.g. IsValidBookmarkSpecifics()).
+- const std::vector<RemoteTreeNode>& children() const { return children_; }
+-
+- // Recursively emplaces all GUIDs (this node and descendants) into
+- // |*guid_to_remote_node_map|, which must not be null.
+- void EmplaceSelfAndDescendantsByGUID(
+- std::unordered_map<std::string, const RemoteTreeNode*>*
+- guid_to_remote_node_map) const {
+- DCHECK(guid_to_remote_node_map);
+-
+- const std::string& guid = entity().specifics.bookmark().guid();
+- if (!guid.empty()) {
+- DCHECK(base::IsValidGUID(guid));
+-
+- // Duplicate GUIDs have been sorted out before.
+- bool success = guid_to_remote_node_map->emplace(guid, this).second;
+- DCHECK(success);
+- }
++BookmarkModelMerger::RemoteTreeNode::RemoteTreeNode() = default;
+
+- for (const RemoteTreeNode& child : children_) {
+- child.EmplaceSelfAndDescendantsByGUID(guid_to_remote_node_map);
+- }
+- }
++BookmarkModelMerger::RemoteTreeNode::~RemoteTreeNode() = default;
++
++BookmarkModelMerger::RemoteTreeNode::RemoteTreeNode(
++ BookmarkModelMerger::RemoteTreeNode&&) = default;
++BookmarkModelMerger::RemoteTreeNode& BookmarkModelMerger::RemoteTreeNode::
++operator=(BookmarkModelMerger::RemoteTreeNode&&) = default;
++
++void BookmarkModelMerger::RemoteTreeNode::EmplaceSelfAndDescendantsByGUID(
++ std::unordered_map<std::string, const RemoteTreeNode*>*
++ guid_to_remote_node_map) const {
++ DCHECK(guid_to_remote_node_map);
++
++ const std::string& guid = entity().specifics.bookmark().guid();
++ if (!guid.empty()) {
++ DCHECK(base::IsValidGUID(guid));
+
+- private:
+- static bool UniquePositionLessThan(const RemoteTreeNode& lhs,
+- const RemoteTreeNode& rhs) {
+- const syncer::UniquePosition a_pos =
+- syncer::UniquePosition::FromProto(lhs.entity().unique_position);
+- const syncer::UniquePosition b_pos =
+- syncer::UniquePosition::FromProto(rhs.entity().unique_position);
+- return a_pos.LessThan(b_pos);
++ // Duplicate GUIDs have been sorted out before.
++ bool success = guid_to_remote_node_map->emplace(guid, this).second;
++ DCHECK(success);
+ }
+
+- RemoteTreeNode() = default;
++ for (const RemoteTreeNode& child : children_) {
++ child.EmplaceSelfAndDescendantsByGUID(guid_to_remote_node_map);
++ }
++}
+
+- std::unique_ptr<syncer::UpdateResponseData> update_;
+- std::vector<RemoteTreeNode> children_;
+-};
++// static
++bool BookmarkModelMerger::RemoteTreeNode::UniquePositionLessThan(
++ const RemoteTreeNode& lhs,
++ const RemoteTreeNode& rhs) {
++ const syncer::UniquePosition a_pos =
++ syncer::UniquePosition::FromProto(lhs.entity().unique_position);
++ const syncer::UniquePosition b_pos =
++ syncer::UniquePosition::FromProto(rhs.entity().unique_position);
++ return a_pos.LessThan(b_pos);
++}
+
+ // static
+ BookmarkModelMerger::RemoteTreeNode
+diff --git a/components/sync_bookmarks/bookmark_model_merger.h b/components/sync_bookmarks/bookmark_model_merger.h
+index 9b592000dc5..bf0783ecf8e 100644
+--- a/components/sync_bookmarks/bookmark_model_merger.h
++++ b/components/sync_bookmarks/bookmark_model_merger.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_SYNC_BOOKMARKS_BOOKMARK_MODEL_MERGER_H_
+ #define COMPONENTS_SYNC_BOOKMARKS_BOOKMARK_MODEL_MERGER_H_
+
++#include <memory>
+ #include <string>
+ #include <unordered_map>
+ #include <vector>
+@@ -50,7 +51,52 @@ class BookmarkModelMerger {
+
+ private:
+ // Internal representation of a remote tree, composed of nodes.
+- class RemoteTreeNode;
++ class RemoteTreeNode final {
++ private:
++ using UpdatesPerParentId =
++ std::unordered_map<base::StringPiece,
++ syncer::UpdateResponseDataList,
++ base::StringPieceHash>;
++
++ public:
++ // Constructs a tree given |update| as root and recursively all descendants
++ // by traversing |*updates_per_parent_id|. |update| and
++ // |updates_per_parent_id| must not be null. All updates
++ // |*updates_per_parent_id| must represent valid updates. Updates
++ // corresponding from descendant nodes are moved away from
++ // |*updates_per_parent_id|.
++ static RemoteTreeNode BuildTree(
++ std::unique_ptr<syncer::UpdateResponseData> update,
++ UpdatesPerParentId* updates_per_parent_id);
++
++ ~RemoteTreeNode();
++
++ // Allow moves, useful during construction.
++ RemoteTreeNode(RemoteTreeNode&&);
++ RemoteTreeNode& operator=(RemoteTreeNode&&);
++
++ const syncer::EntityData& entity() const { return *update_->entity; }
++ int64_t response_version() const { return update_->response_version; }
++
++ // Direct children nodes, sorted by ascending unique position. These are
++ // guaranteed to be valid updates (e.g. IsValidBookmarkSpecifics()).
++ const std::vector<RemoteTreeNode>& children() const { return children_; }
++
++ // Recursively emplaces all GUIDs (this node and descendants) into
++ // |*guid_to_remote_node_map|, which must not be null.
++ void EmplaceSelfAndDescendantsByGUID(
++ std::unordered_map<std::string, const RemoteTreeNode*>*
++ guid_to_remote_node_map) const;
++
++ private:
++ static bool UniquePositionLessThan(const RemoteTreeNode& lhs,
++ const RemoteTreeNode& rhs);
++
++ RemoteTreeNode();
++
++ std::unique_ptr<syncer::UpdateResponseData> update_;
++ std::vector<RemoteTreeNode> children_;
++ };
+
+ // A forest composed of multiple trees where the root of each tree represents
+ // a permanent node, keyed by server-defined unique tag of the root.
diff --git a/rebuild-Linux-frame-button-cache-when-activation.patch b/rebuild-Linux-frame-button-cache-when-activation.patch
new file mode 100644
index 000000000000..40764b3ba7ab
--- /dev/null
+++ b/rebuild-Linux-frame-button-cache-when-activation.patch
@@ -0,0 +1,62 @@
+From d10f885b9327399be9348b780967ebd6b7f2c4bc Mon Sep 17 00:00:00 2001
+From: Tom Anderson <thomasanderson@chromium.org>
+Date: Fri, 7 Feb 2020 22:44:54 +0000
+Subject: [PATCH] Rebuild Linux frame button cache when activation state
+ changes
+
+This fixes an issue where the frame buttons would always render in an
+inactive state on Linux (see repro steps in bug 1049258).
+
+Bug: 1049258
+R=sky
+CC=pkasting
+
+Change-Id: Ic5af33199003e1d1cdf6cedf506e32388ea11fa9
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2044538
+Auto-Submit: Thomas Anderson <thomasanderson@chromium.org>
+Commit-Queue: Scott Violet <sky@chromium.org>
+Reviewed-by: Scott Violet <sky@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#739585}
+---
+ .../ui/views/frame/desktop_linux_browser_frame_view.cc | 6 +++---
+ .../desktop_aura/desktop_window_tree_host_platform.cc | 3 +++
+ 2 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/chrome/browser/ui/views/frame/desktop_linux_browser_frame_view.cc b/chrome/browser/ui/views/frame/desktop_linux_browser_frame_view.cc
+index 954e776057f..4f579955675 100644
+--- a/chrome/browser/ui/views/frame/desktop_linux_browser_frame_view.cc
++++ b/chrome/browser/ui/views/frame/desktop_linux_browser_frame_view.cc
+@@ -22,13 +22,13 @@ DesktopLinuxBrowserFrameView::DesktopLinuxBrowserFrameView(
+ : OpaqueBrowserFrameView(frame, browser_view, layout),
+ nav_button_provider_(std::move(nav_button_provider)) {}
+
+-DesktopLinuxBrowserFrameView::~DesktopLinuxBrowserFrameView() {}
++DesktopLinuxBrowserFrameView::~DesktopLinuxBrowserFrameView() = default;
+
+ void DesktopLinuxBrowserFrameView::Layout() {
+ // Calling MaybeUpdateCachedFrameButtonImages() from Layout() is sufficient to
+ // catch all cases that could update the appearance, since
+- // DesktopWindowTreeHostPlatform::OnWindowStateChanged() does a layout any
+- // time any properties change.
++ // DesktopWindowTreeHostPlatform::On{Window,Activation}StateChanged() does a
++ // layout any time the maximized and activation state changes, respectively.
+ MaybeUpdateCachedFrameButtonImages();
+ OpaqueBrowserFrameView::Layout();
+ }
+diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
+index 9c695d8e5b1..9662f19aa90 100644
+--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
++++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
+@@ -677,9 +677,12 @@ void DesktopWindowTreeHostPlatform::OnCloseRequest() {
+ }
+
+ void DesktopWindowTreeHostPlatform::OnActivationChanged(bool active) {
++ if (is_active_ == active)
++ return;
+ is_active_ = active;
+ aura::WindowTreeHostPlatform::OnActivationChanged(active);
+ desktop_native_widget_aura_->HandleActivationChanged(active);
++ ScheduleRelayout();
+ }
+
+ base::Optional<gfx::Size>
diff --git a/remove-verbose-logging-in-local-unique-font-matching.patch b/remove-verbose-logging-in-local-unique-font-matching.patch
new file mode 100644
index 000000000000..a88286181017
--- /dev/null
+++ b/remove-verbose-logging-in-local-unique-font-matching.patch
@@ -0,0 +1,33 @@
+From 8500a125e9fba8bb84d185542155747ee7157ff8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Dominik=20R=C3=B6ttsches?= <drott@chromium.org>
+Date: Tue, 28 Jan 2020 13:48:07 +0000
+Subject: [PATCH] Remove verbose logging in local unique font matching on Linux
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixed: 1005508
+Change-Id: I97f5340c6d1881798ba51effc4a9e5c07de12e52
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2023552
+Commit-Queue: Dominik Röttsches <drott@chromium.org>
+Commit-Queue: Kentaro Hara <haraken@chromium.org>
+Auto-Submit: Dominik Röttsches <drott@chromium.org>
+Reviewed-by: Kentaro Hara <haraken@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#735854}
+---
+ content/child/child_process_sandbox_support_impl_linux.cc | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/content/child/child_process_sandbox_support_impl_linux.cc b/content/child/child_process_sandbox_support_impl_linux.cc
+index 693ead7f7a5..c97c8fa197b 100644
+--- a/content/child/child_process_sandbox_support_impl_linux.cc
++++ b/content/child/child_process_sandbox_support_impl_linux.cc
+@@ -76,8 +76,6 @@ bool WebSandboxSupportLinux::MatchFontByPostscriptNameOrFullFontName(
+ std::string family_name;
+ if (!font_loader_->MatchFontByPostscriptNameOrFullFontName(font_unique_name,
+ &font_identity)) {
+- LOG(ERROR) << "FontService unique font name matching request did not "
+- "receive a response.";
+ return false;
+ }
+
diff --git a/rename-Relayout-in-DesktopWindowTreeHostPlatform.patch b/rename-Relayout-in-DesktopWindowTreeHostPlatform.patch
new file mode 100644
index 000000000000..eda3cbdbaaf3
--- /dev/null
+++ b/rename-Relayout-in-DesktopWindowTreeHostPlatform.patch
@@ -0,0 +1,64 @@
+From 5a2cd2409c7d65c019ad9f4595a4e85315857ac4 Mon Sep 17 00:00:00 2001
+From: Tom Anderson <thomasanderson@chromium.org>
+Date: Mon, 3 Feb 2020 23:18:46 +0000
+Subject: [PATCH] Rename Relayout() in DesktopWindowTreeHostPlatform to
+ ScheduleRelayout()
+
+R=sky
+
+Bug: None
+Change-Id: I680cafd25935e59a280e3b2baac754d3d5f13a35
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2036553
+Auto-Submit: Thomas Anderson <thomasanderson@chromium.org>
+Reviewed-by: Scott Violet <sky@chromium.org>
+Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#737974}
+---
+ .../desktop_aura/desktop_window_tree_host_platform.cc | 6 +++---
+ .../widget/desktop_aura/desktop_window_tree_host_platform.h | 2 +-
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
+index 6c00d49eb3f..9c695d8e5b1 100644
+--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
++++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
+@@ -556,7 +556,7 @@ void DesktopWindowTreeHostPlatform::SetFullscreen(bool fullscreen) {
+ DCHECK_EQ(fullscreen, IsFullscreen());
+
+ if (IsFullscreen() == fullscreen)
+- Relayout();
++ ScheduleRelayout();
+ // Else: the widget will be relaid out either when the window bounds change
+ // or when |platform_window|'s fullscreen state changes.
+ }
+@@ -669,7 +669,7 @@ void DesktopWindowTreeHostPlatform::OnWindowStateChanged(
+ // Now that we have different window properties, we may need to relayout the
+ // window. (The windows code doesn't need this because their window change is
+ // synchronous.)
+- Relayout();
++ ScheduleRelayout();
+ }
+
+ void DesktopWindowTreeHostPlatform::OnCloseRequest() {
+@@ -712,7 +712,7 @@ gfx::Rect DesktopWindowTreeHostPlatform::ToPixelRect(
+ return gfx::ToEnclosingRect(rect_in_pixels);
+ }
+
+-void DesktopWindowTreeHostPlatform::Relayout() {
++void DesktopWindowTreeHostPlatform::ScheduleRelayout() {
+ Widget* widget = native_widget_delegate_->AsWidget();
+ NonClientView* non_client_view = widget->non_client_view();
+ // non_client_view may be NULL, especially during creation.
+diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h
+index 89beb8d2245..75a401e02a7 100644
+--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h
++++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h
+@@ -129,7 +129,7 @@ class VIEWS_EXPORT DesktopWindowTreeHostPlatform
+ gfx::Rect ToPixelRect(const gfx::Rect& rect_in_dip) const;
+
+ private:
+- void Relayout();
++ void ScheduleRelayout();
+
+ Widget* GetWidget();
+ const Widget* GetWidget() const;
diff --git a/sync-enable-USSPasswords-by-default.patch b/sync-enable-USSPasswords-by-default.patch
new file mode 100644
index 000000000000..7f3a7005a66c
--- /dev/null
+++ b/sync-enable-USSPasswords-by-default.patch
@@ -0,0 +1,28 @@
+From eb997db5527c01fd12c321a6abc52b7cff882e50 Mon Sep 17 00:00:00 2001
+From: Mohamed Amir Yosef <mamir@chromium.org>
+Date: Thu, 9 Jan 2020 21:22:19 +0000
+Subject: [PATCH] [Sync] Enable USSPasswords by default
+
+Change-Id: I021cd952d7a2917a8fb7203cabdac612251193df
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1963804
+Auto-Submit: Mohamed Amir Yosef <mamir@chromium.org>
+Reviewed-by: Mikel Astiz <mastiz@chromium.org>
+Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#729902}
+---
+ components/sync/driver/sync_driver_switches.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/components/sync/driver/sync_driver_switches.cc b/components/sync/driver/sync_driver_switches.cc
+index ddff8b91419..999384aa68a 100644
+--- a/components/sync/driver/sync_driver_switches.cc
++++ b/components/sync/driver/sync_driver_switches.cc
+@@ -55,7 +55,7 @@ const base::Feature kStopSyncInPausedState{"StopSyncInPausedState",
+
+ // Enable USS implementation of Passwords datatype.
+ const base::Feature kSyncUSSPasswords{"SyncUSSPasswords",
+- base::FEATURE_DISABLED_BY_DEFAULT};
++ base::FEATURE_ENABLED_BY_DEFAULT};
+
+ // Enable USS implementation of Nigori datatype.
+ const base::Feature kSyncUSSNigori{"SyncUSSNigori",