summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Playfair Cal2020-01-12 17:45:49 +1100
committerDaniel Playfair Cal2020-02-15 21:02:04 +1100
commit26c3d523c5ac85ea3f78d5a376e6243745c2f96f (patch)
treea0cf35f633bb8a4a29f2b2a3bde4aca410f0c778
parentbedb7354da0040ba098e6e4c4ef68112a852c1c3 (diff)
downloadaur-26c3d523c5ac85ea3f78d5a376e6243745c2f96f.tar.gz
81.0.4044.17-1
-rw-r--r--.SRCINFO18
-rw-r--r--0001-Add-missing-algorithm-header-in-bitmap_cursor_factor.patch48
-rw-r--r--0001-BookmarkModelMerger-Move-RemoteTreeNode-declaration-.patch240
-rw-r--r--0001-cros-search-service-Include-cmath-for-std-pow.patch38
-rw-r--r--PKGBUILD30
-rw-r--r--rebuild-Linux-frame-button-cache-when-activation.patch62
-rw-r--r--rename-Relayout-in-DesktopWindowTreeHostPlatform.patch64
7 files changed, 143 insertions, 357 deletions
diff --git a/.SRCINFO b/.SRCINFO
index b73b8aade89..cab8020b9b8 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = chromium-dev-ozone
pkgdesc = Chromium built with patches for wayland support via Ozone (dev channel)
- pkgver = 81.0.4021.2
+ pkgver = 81.0.4044.17
pkgrel = 1
url = https://www.chromium.org/Home
install = chromium.install
@@ -55,20 +55,16 @@ pkgbase = chromium-dev-ozone
conflicts = chromium
options = debug
options = !strip
- source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-81.0.4021.2.tar.xz
+ source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-81.0.4044.17.tar.xz
source = chromium-launcher-6.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v6.tar.gz
- source = chromium-system-icu.patch
- source = chromium-system-zlib.patch
- source = 0001-Modernize-WebInputEvent.patch
- source = fix-spammy-unique-font-matching-log.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 = 45f1c7efacf0e628da2943725a155d1f9143b53c3d8e649de10d48c4f17c8b69
+ sha256sums = c1e8493f02406c85315bba91618d151855a49ba4078002c3758862f5069d5e6f
sha256sums = 04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1
- sha256sums = e73cc2ee8d3ea35aab18c478d76fdfc68ca4463e1e10306fa1e738c03b3f26b5
- sha256sums = eb67eda4945a89c3b90473fa8dc20637511ca4dcb58879a8ed6bf403700ca9c8
- sha256sums = 5bd56b41062eb3346a33a27e18954899118fe55d99330d917fea4a6d94dc3ce1
- sha256sums = 6fbffe59b886195b92c9a55137cef83021c16593f49714acb20023633e3ebb19
+ 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
deleted file mode 100644
index ba05707cb0b..00000000000
--- a/0001-Add-missing-algorithm-header-in-bitmap_cursor_factor.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-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/0001-BookmarkModelMerger-Move-RemoteTreeNode-declaration-.patch b/0001-BookmarkModelMerger-Move-RemoteTreeNode-declaration-.patch
deleted file mode 100644
index ba57aca99be..00000000000
--- a/0001-BookmarkModelMerger-Move-RemoteTreeNode-declaration-.patch
+++ /dev/null
@@ -1,240 +0,0 @@
-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 eae153eff953..579848ee664e 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 9b592000dc59..bf0783ecf8ee 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.
---
-2.24.1
-
diff --git a/0001-cros-search-service-Include-cmath-for-std-pow.patch b/0001-cros-search-service-Include-cmath-for-std-pow.patch
deleted file mode 100644
index 5c620a79edf..00000000000
--- a/0001-cros-search-service-Include-cmath-for-std-pow.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-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 8351fa701e4d..884ef638c61c 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"
---
-2.24.1
-
diff --git a/PKGBUILD b/PKGBUILD
index 2bc1ddf32da..cef0c9dbe5d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,7 +5,7 @@
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
pkgname=chromium-dev-ozone
-pkgver=81.0.4021.2
+pkgver=81.0.4044.17
pkgrel=1
_launcher_ver=6
pkgdesc="Chromium built with patches for wayland support via Ozone (dev channel)"
@@ -27,18 +27,14 @@ optdepends=('pepper-flash: support for Flash content'
install=chromium.install
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
- chromium-system-icu.patch
- chromium-system-zlib.patch
- 0001-Modernize-WebInputEvent.patch
- fix-spammy-unique-font-matching-log.patch
+ rename-Relayout-in-DesktopWindowTreeHostPlatform.patch
+ rebuild-Linux-frame-button-cache-when-activation.patch
chromium-widevine.patch
chromium-skia-harmony.patch)
-sha256sums=('45f1c7efacf0e628da2943725a155d1f9143b53c3d8e649de10d48c4f17c8b69'
+sha256sums=('c1e8493f02406c85315bba91618d151855a49ba4078002c3758862f5069d5e6f'
'04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1'
- 'e73cc2ee8d3ea35aab18c478d76fdfc68ca4463e1e10306fa1e738c03b3f26b5'
- 'eb67eda4945a89c3b90473fa8dc20637511ca4dcb58879a8ed6bf403700ca9c8'
- '5bd56b41062eb3346a33a27e18954899118fe55d99330d917fea4a6d94dc3ce1'
- '6fbffe59b886195b92c9a55137cef83021c16593f49714acb20023633e3ebb19'
+ 'ae3bf107834bd8eda9a3ec7899fe35fde62e6111062e5def7d24bf49b53db3db'
+ '46f7fc9768730c460b27681ccf3dc2685c7e1fd22d70d3a82d9e57e3389bb014'
'709e2fddba3c1f2ed4deb3a239fc0479bfa50c46e054e7f32db4fb1365fed070'
'771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1')
@@ -77,7 +73,7 @@ _google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM
_google_default_client_id=413772536636.apps.googleusercontent.com
_google_default_client_secret=0ZChLK6AxeA3Isu96MkwqDR4
-# Branch point: 722274
+# Branch point: 737173
# Extra commits related specifically to wayland support:
# These consist of the above commits and their dependencies
@@ -98,15 +94,9 @@ prepare() {
third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \
third_party/libxml/chromium/libxml_utils.cc
- # build fixes
- patch -Np1 -R -i ../0001-Modernize-WebInputEvent.patch
-
- # Fixes from Gentoo
- patch -Np1 -i ../chromium-system-icu.patch
- patch -Np1 -i ../chromium-system-zlib.patch
-
- # https://crbug.com/1005508
- # patch -Np1 -i ../fix-spammy-unique-font-matching-log.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
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 00000000000..40764b3ba7a
--- /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/rename-Relayout-in-DesktopWindowTreeHostPlatform.patch b/rename-Relayout-in-DesktopWindowTreeHostPlatform.patch
new file mode 100644
index 00000000000..eda3cbdbaaf
--- /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;