Gentoo Archives: gentoo-commits

From: Mike Gilbert <floppym@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/chromium/files/, www-client/chromium/
Date: Fri, 14 Feb 2020 20:12:27
Message-Id: 1581711131.6c7649fd93de77cbca12344ab4477e99d47a5017.floppym@gentoo
commit:     6c7649fd93de77cbca12344ab4477e99d47a5017
Author:     Stephan Hartmann <stha09 <AT> googlemail <DOT> com>
AuthorDate: Thu Feb 13 15:00:15 2020 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Fri Feb 14 20:12:11 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c7649fd

www-client/chromium: dev channel bump to 81.0.4044.17

Package-Manager: Portage-2.3.84, Repoman-2.3.16
Signed-off-by: Stephan Hartmann <stha09 <AT> googlemail.com>
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 www-client/chromium/Manifest                       |   2 +-
 ....4044.9.ebuild => chromium-81.0.4044.17.ebuild} |   2 -
 .../files/chromium-81-fix-browser-frame.patch      |  35 ---
 .../chromium/files/chromium-81-gcc-noexcept.patch  |   6 +-
 www-client/chromium/files/chromium-81-mojom.patch  | 303 ---------------------
 5 files changed, 4 insertions(+), 344 deletions(-)

diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 1f775f4e194..c9a9c178c40 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,3 +1,3 @@
 DIST chromium-80.0.3987.100.tar.xz 801377116 BLAKE2B 0c99b78794a0c04bcc45fd423d0fabb7db4c9e37ae446b46c33a7b4a98ecc1af9302680e84118809f01dd3bee50b68a301ff0bdd72c5704c028c7984bac812f3 SHA512 b8612693158f9a497723391ed80dd06b152ed71b29e2722a751f94b297e184f09f786405d2c5b460aff6f62c9c6292c673b36019ff72f1fb662cc418cc26127d
 DIST chromium-80.0.3987.87.tar.xz 801310184 BLAKE2B d051f77b0e6f167632e383e23983531ee1f44f1fce1629f482cf42882c294816bd98c51ad043b5258aa9652a8da14edf278f70fc63f6978c9dfececa547a1fca SHA512 69aebd760d9b8f2c5f4d15a3a144cd4292ffb11b1536af3596f907e730ac64e909d739bb6e9d322a8f56fac75e4f0b2b5c4c36c4fe4bb52147276b5b0dd03620
-DIST chromium-81.0.4044.9.tar.xz 791346280 BLAKE2B 790a8537a7a2a9cc6c209afb570580cc05a8f85bd0f61c4d8c13765f8d776962833468390b5685caac3d3590be1d602298e79961beded8b0b4a2b5b5ab1dcbc7 SHA512 e9fb98a66cea6b65e25dda55cceb687a3697e3810b32c1f5ddfc8341e3289b9077056898984ea07b4cdbe33f2e651a197cb57fa89d484ad728672282e43ca48f
+DIST chromium-81.0.4044.17.tar.xz 791446724 BLAKE2B 08d8fc6c6c8788fde868270ca874571a4fff42154e340155d5f1eba3ef615202dabaec4d19250cccc5f7f9c665a0acb0df4f44fda6f1417289a84988e501e60a SHA512 bbcfddd5d44dfa940d40846dc66daaf394f079cd3d238ec57889c0b4cf137f7d4245873fba3e4fb9797f145084ca92d75b594f5d9653103b554d34154a1d3e61

diff --git a/www-client/chromium/chromium-81.0.4044.9.ebuild b/www-client/chromium/chromium-81.0.4044.17.ebuild
similarity index 99%
rename from www-client/chromium/chromium-81.0.4044.9.ebuild
rename to www-client/chromium/chromium-81.0.4044.17.ebuild
index b16c58de36f..d69081aa14a 100644
--- a/www-client/chromium/chromium-81.0.4044.9.ebuild
+++ b/www-client/chromium/chromium-81.0.4044.17.ebuild
@@ -148,8 +148,6 @@ PATCHES=(
 	"${FILESDIR}/chromium-80-gcc-blink.patch"
 	"${FILESDIR}/chromium-81-gcc-noexcept.patch"
 	"${FILESDIR}/chromium-81-gcc-constexpr.patch"
-	"${FILESDIR}/chromium-81-mojom.patch"
-	"${FILESDIR}/chromium-81-fix-browser-frame.patch"
 )
 
 pre_build_checks() {

diff --git a/www-client/chromium/files/chromium-81-fix-browser-frame.patch b/www-client/chromium/files/chromium-81-fix-browser-frame.patch
deleted file mode 100644
index 6516e1faf1a..00000000000
--- a/www-client/chromium/files/chromium-81-fix-browser-frame.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From c73968d63c456d4aaf55c5cd439b42403a3bbeb1 Mon Sep 17 00:00:00 2001
-From: Tom Anderson <thomasanderson@××××××××.org>
-Date: Mon, 03 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@××××××××.org>
-Commit-Queue: Thomas Anderson <thomasanderson@××××××××.org>
-Cr-Commit-Position: refs/heads/master@{#737890}
----
-
-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 9abbce8..6c00d49 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 @@
-   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/www-client/chromium/files/chromium-81-gcc-noexcept.patch b/www-client/chromium/files/chromium-81-gcc-noexcept.patch
index 90ecb225709..a6fc8aff72a 100644
--- a/www-client/chromium/files/chromium-81-gcc-noexcept.patch
+++ b/www-client/chromium/files/chromium-81-gcc-noexcept.patch
@@ -1,10 +1,10 @@
 diff --git a/components/paint_preview/browser/paint_preview_client.cc b/components/paint_preview/browser/paint_preview_client.cc
-index fc3b5a4..8689acf 100644
+index 38ab6be..dccf07f 100644
 --- a/components/paint_preview/browser/paint_preview_client.cc
 +++ b/components/paint_preview/browser/paint_preview_client.cc
-@@ -79,7 +79,7 @@ PaintPreviewClient::PaintPreviewParams::~PaintPreviewParams() = default;
- PaintPreviewClient::PaintPreviewData::PaintPreviewData() = default;
+@@ -78,7 +78,7 @@ PaintPreviewClient::PaintPreviewData::PaintPreviewData() = default;
  PaintPreviewClient::PaintPreviewData::~PaintPreviewData() = default;
+ 
  PaintPreviewClient::PaintPreviewData& PaintPreviewClient::PaintPreviewData::
 -operator=(PaintPreviewData&& rhs) noexcept = default;
 +operator=(PaintPreviewData&& rhs) = default;

diff --git a/www-client/chromium/files/chromium-81-mojom.patch b/www-client/chromium/files/chromium-81-mojom.patch
deleted file mode 100644
index e6675931fbc..00000000000
--- a/www-client/chromium/files/chromium-81-mojom.patch
+++ /dev/null
@@ -1,303 +0,0 @@
-Add missing files in tarball.
-
-diff --git a/chrome/test/data/webui/mojo/OWNERS b/chrome/test/data/webui/mojo/OWNERS
-new file mode 100644
-index 000000000000..08850f421205
---- /dev/null
-+++ b/chrome/test/data/webui/mojo/OWNERS
-@@ -0,0 +1,2 @@
-+per-file *.mojom=set noparent
-+per-file *.mojom=file://ipc/SECURITY_OWNERS
-diff --git a/chrome/test/data/webui/mojo/foobar.mojom b/chrome/test/data/webui/mojo/foobar.mojom
-new file mode 100644
-index 000000000000..446d365af8fb
---- /dev/null
-+++ b/chrome/test/data/webui/mojo/foobar.mojom
-@@ -0,0 +1,16 @@
-+// Copyright 2019 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+// Test Mojo interfaces for MojoWebUIControllerBrowserTest.
-+
-+module test.mojom;
-+
-+interface Foo {
-+  GetFoo() => (string value);
-+};
-+
-+interface Bar {
-+  GetBar() => (string value);
-+};
-+
-diff --git a/chrome/test/data/webui/mojo/mojo_web_ui_controller_browsertest.cc b/chrome/test/data/webui/mojo/mojo_web_ui_controller_browsertest.cc
-new file mode 100644
-index 000000000000..658a54ace278
---- /dev/null
-+++ b/chrome/test/data/webui/mojo/mojo_web_ui_controller_browsertest.cc
-@@ -0,0 +1,253 @@
-+// Copyright 2019 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+#include "ui/webui/mojo_web_ui_controller.h"
-+
-+#include "base/memory/ref_counted_memory.h"
-+#include "base/path_service.h"
-+#include "base/run_loop.h"
-+#include "base/threading/sequenced_task_runner_handle.h"
-+#include "chrome/browser/bad_message.h"
-+#include "chrome/browser/chrome_browser_interface_binders.h"
-+#include "chrome/browser/chrome_content_browser_client.h"
-+#include "chrome/browser/ui/browser.h"
-+#include "chrome/browser/ui/tabs/tab_strip_model.h"
-+#include "chrome/test/base/in_process_browser_test.h"
-+#include "chrome/test/data/grit/webui_test_resources.h"
-+#include "chrome/test/data/webui/mojo/foobar.mojom.h"
-+#include "content/public/browser/render_process_host.h"
-+#include "content/public/browser/render_process_host_observer.h"
-+#include "content/public/browser/web_contents.h"
-+#include "content/public/browser/web_ui_controller_factory.h"
-+#include "content/public/browser/web_ui_data_source.h"
-+#include "content/public/common/content_client.h"
-+#include "content/public/common/url_constants.h"
-+#include "content/public/test/browser_test_utils.h"
-+#include "content/public/test/no_renderer_crashes_assertion.h"
-+#include "content/public/test/test_utils.h"
-+#include "services/service_manager/public/cpp/binder_map.h"
-+#include "testing/gtest/include/gtest/gtest.h"
-+#include "ui/base/resource/resource_bundle.h"
-+#include "url/gurl.h"
-+
-+namespace {
-+
-+// WebUIController that provides the Foo Mojo API.
-+class FooUI : public ui::MojoWebUIController, public ::test::mojom::Foo {
-+ public:
-+  explicit FooUI(content::WebUI* web_ui)
-+      : ui::MojoWebUIController(web_ui), foo_receiver_(this) {
-+    content::WebUIDataSource* data_source =
-+        content::WebUIDataSource::Create("foo");
-+    data_source->SetDefaultResource(IDR_MOJO_WEB_UI_CONTROLLER_TEST_HTML);
-+    data_source->DisableContentSecurityPolicy();
-+    data_source->AddResourcePath("foobar.mojom-lite.js",
-+                                 IDR_FOOBAR_MOJO_LITE_JS);
-+    content::WebUIDataSource::Add(web_ui->GetWebContents()->GetBrowserContext(),
-+                                  data_source);
-+  }
-+
-+  void BindInterface(mojo::PendingReceiver<::test::mojom::Foo> receiver) {
-+    foo_receiver_.Bind(std::move(receiver));
-+  }
-+
-+  // ::test::mojom::Foo:
-+  void GetFoo(GetFooCallback callback) override {
-+    std::move(callback).Run("foofoo");
-+  }
-+
-+  WEB_UI_CONTROLLER_TYPE_DECL();
-+
-+ private:
-+  mojo::Receiver<::test::mojom::Foo> foo_receiver_;
-+
-+  DISALLOW_COPY_AND_ASSIGN(FooUI);
-+};
-+
-+WEB_UI_CONTROLLER_TYPE_IMPL(FooUI)
-+
-+// WebUIController that provides the Foo and Bar Mojo APIs.
-+class FooBarUI : public ui::MojoWebUIController,
-+                 public ::test::mojom::Foo,
-+                 public ::test::mojom::Bar {
-+ public:
-+  explicit FooBarUI(content::WebUI* web_ui)
-+      : ui::MojoWebUIController(web_ui),
-+        foo_receiver_(this),
-+        bar_receiver_(this) {
-+    content::WebUIDataSource* data_source =
-+        content::WebUIDataSource::Create("foobar");
-+    data_source->SetDefaultResource(IDR_MOJO_WEB_UI_CONTROLLER_TEST_HTML);
-+    data_source->DisableContentSecurityPolicy();
-+    data_source->AddResourcePath("foobar.mojom-lite.js",
-+                                 IDR_FOOBAR_MOJO_LITE_JS);
-+    content::WebUIDataSource::Add(web_ui->GetWebContents()->GetBrowserContext(),
-+                                  data_source);
-+  }
-+
-+  void BindInterface(mojo::PendingReceiver<::test::mojom::Foo> receiver) {
-+    foo_receiver_.Bind(std::move(receiver));
-+  }
-+
-+  void BindInterface(mojo::PendingReceiver<::test::mojom::Bar> receiver) {
-+    bar_receiver_.Bind(std::move(receiver));
-+  }
-+
-+  // ::test::mojom::Foo:
-+  void GetFoo(GetFooCallback callback) override {
-+    std::move(callback).Run("foobarfoo");
-+  }
-+
-+  // ::test::mojom::Bar:
-+  void GetBar(GetBarCallback callback) override {
-+    std::move(callback).Run("foobarbar");
-+  }
-+
-+  WEB_UI_CONTROLLER_TYPE_DECL();
-+
-+ private:
-+  mojo::Receiver<::test::mojom::Foo> foo_receiver_;
-+  mojo::Receiver<::test::mojom::Bar> bar_receiver_;
-+
-+  DISALLOW_COPY_AND_ASSIGN(FooBarUI);
-+};
-+
-+WEB_UI_CONTROLLER_TYPE_IMPL(FooBarUI)
-+
-+// WebUIControllerFactory that serves our TestWebUIController.
-+class TestWebUIControllerFactory : public content::WebUIControllerFactory {
-+ public:
-+  TestWebUIControllerFactory() = default;
-+
-+  std::unique_ptr<content::WebUIController> CreateWebUIControllerForURL(
-+      content::WebUI* web_ui,
-+      const GURL& url) override {
-+    if (url.host_piece() == "foo")
-+      return std::make_unique<FooUI>(web_ui);
-+    if (url.host_piece() == "foobar")
-+      return std::make_unique<FooBarUI>(web_ui);
-+
-+    return nullptr;
-+  }
-+
-+  content::WebUI::TypeID GetWebUIType(content::BrowserContext* browser_context,
-+                                      const GURL& url) override {
-+    if (url.SchemeIs(content::kChromeUIScheme))
-+      return reinterpret_cast<content::WebUI::TypeID>(1);
-+
-+    return content::WebUI::kNoWebUI;
-+  }
-+
-+  bool UseWebUIForURL(content::BrowserContext* browser_context,
-+                      const GURL& url) override {
-+    return url.SchemeIs(content::kChromeUIScheme);
-+  }
-+  bool UseWebUIBindingsForURL(content::BrowserContext* browser_context,
-+                              const GURL& url) override {
-+    return url.SchemeIs(content::kChromeUIScheme);
-+  }
-+
-+ private:
-+  DISALLOW_COPY_AND_ASSIGN(TestWebUIControllerFactory);
-+};
-+
-+}  // namespace
-+
-+class MojoWebUIControllerBrowserTest : public InProcessBrowserTest {
-+ public:
-+  MojoWebUIControllerBrowserTest() {
-+    factory_ = std::make_unique<TestWebUIControllerFactory>();
-+    content::WebUIControllerFactory::RegisterFactory(factory_.get());
-+  }
-+
-+  void SetUpOnMainThread() override {
-+    base::FilePath pak_path;
-+    ASSERT_TRUE(base::PathService::Get(base::DIR_MODULE, &pak_path));
-+    pak_path = pak_path.AppendASCII("browser_tests.pak");
-+    ui::ResourceBundle::GetSharedInstance().AddDataPackFromPath(
-+        pak_path, ui::SCALE_FACTOR_NONE);
-+
-+    content::SetBrowserClientForTesting(&test_content_browser_client_);
-+  }
-+
-+ private:
-+  class TestContentBrowserClient : public ChromeContentBrowserClient {
-+   public:
-+    TestContentBrowserClient() = default;
-+    TestContentBrowserClient(const TestContentBrowserClient&) = delete;
-+    TestContentBrowserClient& operator=(const TestContentBrowserClient&) =
-+        delete;
-+    ~TestContentBrowserClient() override = default;
-+
-+    void RegisterBrowserInterfaceBindersForFrame(
-+        content::RenderFrameHost* render_frame_host,
-+        service_manager::BinderMapWithContext<content::RenderFrameHost*>* map)
-+        override {
-+      ChromeContentBrowserClient::RegisterBrowserInterfaceBindersForFrame(
-+          render_frame_host, map);
-+      chrome::internal::RegisterWebUIControllerInterfaceBinder<
-+          ::test::mojom::Bar, FooBarUI>(map);
-+      chrome::internal::RegisterWebUIControllerInterfaceBinder<
-+          ::test::mojom::Foo, FooUI, FooBarUI>(map);
-+    }
-+  };
-+
-+  std::unique_ptr<TestWebUIControllerFactory> factory_;
-+
-+  TestContentBrowserClient test_content_browser_client_;
-+};
-+
-+// Attempting to access bindings succeeds for 2 allowed interfaces.
-+IN_PROC_BROWSER_TEST_F(MojoWebUIControllerBrowserTest, BindingsAccess) {
-+  content::WebContents* web_contents =
-+      browser()->tab_strip_model()->GetActiveWebContents();
-+
-+  ASSERT_TRUE(NavigateToURL(web_contents, content::GetWebUIURL("foobar")));
-+
-+  EXPECT_EQ("foobarfoo",
-+            content::EvalJs(web_contents,
-+                            "(async () => {"
-+                            "  let fooRemote = test.mojom.Foo.getRemote(true);"
-+                            "  let resp = await fooRemote.getFoo();"
-+                            "  return resp.value;"
-+                            "})()"));
-+
-+  EXPECT_EQ("foobarbar",
-+            content::EvalJs(web_contents,
-+                            "(async () => {"
-+                            "  let barRemote = test.mojom.Bar.getRemote(true);"
-+                            "  let resp = await barRemote.getBar();"
-+                            "  return resp.value;"
-+                            "})()"));
-+}
-+
-+// Attempting to access bindings crashes the renderer when access not allowed.
-+IN_PROC_BROWSER_TEST_F(MojoWebUIControllerBrowserTest,
-+                       BindingsAccessViolation) {
-+  content::WebContents* web_contents =
-+      browser()->tab_strip_model()->GetActiveWebContents();
-+
-+  ASSERT_TRUE(NavigateToURL(web_contents, content::GetWebUIURL("foo")));
-+
-+  EXPECT_EQ("foofoo",
-+            content::EvalJs(web_contents,
-+                            "(async () => {"
-+                            "  let fooRemote = test.mojom.Foo.getRemote(true);"
-+                            "  let resp = await fooRemote.getFoo();"
-+                            "  return resp.value;"
-+                            "})()"));
-+
-+  content::ScopedAllowRendererCrashes allow;
-+
-+  // Attempt to get a remote for a disallowed interface.
-+  EXPECT_FALSE(
-+      content::EvalJs(web_contents,
-+                      "(async () => {"
-+                      "  let barRemote = test.mojom.Bar.getRemote(true);"
-+                      "  let resp = await barRemote.getBar();"
-+                      "  return resp.value;"
-+                      "})()")
-+          .error.empty());
-+  EXPECT_TRUE(web_contents->IsCrashed());
-+}
-diff --git a/chrome/test/data/webui/mojo/mojo_web_ui_controller_test.html b/chrome/test/data/webui/mojo/mojo_web_ui_controller_test.html
-new file mode 100644
-index 000000000000..4638ebc261c7
---- /dev/null
-+++ b/chrome/test/data/webui/mojo/mojo_web_ui_controller_test.html
-@@ -0,0 +1,6 @@
-+<html>
-+<head>
-+<script src="chrome://resources/mojo/mojo/public/js/mojo_bindings_lite.js"></script>
-+<script src="/foobar.mojom-lite.js"></script>
-+</head>
-+</html>