From c97c765f71395042cf0a0fcb60d3eb9b4c2dc29c Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 03:06:47 +0000 Subject: [PATCH 01/49] Roll Depot Tools from 0e4e5ae5944a to c1aa4ecfcc8c (1 revision) https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/0e4e5ae5944a..c1aa4ecfcc8c 2021-01-09 ehmaldonado@google.com Reland "presubmit: Don't print comments for missing reviewers." If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/depot-tools-chromium-autoroll Please CC ajp@google.com,apolito@google.com,ehmaldonado@google.com,sokcevic@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: ajp@google.com,apolito@google.com,ehmaldonado@google.com,sokcevic@google.com Change-Id: Ifdbd754721ced1574d7e8ce0f87ef56c07988e10 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2618903 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841775} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 78a6813bf6e65f..fc7b5ab66b7025 100644 --- a/DEPS +++ b/DEPS @@ -893,7 +893,7 @@ deps = { }, 'src/third_party/depot_tools': - Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '0e4e5ae5944afdca30a6228cb2b56c8298e07a70', + Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + 'c1aa4ecfcc8cbbbcf21e1b77125aa602339846ec', 'src/third_party/devtools-frontend/src': Var('chromium_git') + '/devtools/devtools-frontend' + '@' + Var('devtools_frontend_revision'), From dac68c93c85b158fe7c1deffff7b201b81e7f980 Mon Sep 17 00:00:00 2001 From: Brandon Jones Date: Sat, 9 Jan 2021 03:07:48 +0000 Subject: [PATCH 02/49] Reland "GPUQueue.writeBuffer takes offset/size in elements with TypedArrays" This is a reland of 480f5952bc8a076c588d1a6fa3214474f4a5035d Original change's description: > GPUQueue.writeBuffer takes offset/size in elements with TypedArrays > > Previously dataOffset and size were always in bytes, which isn't > consistent with the WebGPU spec. > > Corresponding CTS test here: https://github.com/gpuweb/cts/pull/431 > > Bug: 1163667 > Change-Id: I5360cfbd66542c044dcf909b8673d3ed3f5e6724 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2615520 > Reviewed-by: Corentin Wallez > Commit-Queue: Brandon Jones > Cr-Commit-Position: refs/heads/master@{#841617} Bug: 1163667 Change-Id: Ie6dd20221445d93124946b3839c75149bd791292 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2617864 Reviewed-by: Kai Ninomiya Commit-Queue: Kai Ninomiya Cr-Commit-Position: refs/heads/master@{#841776} --- .../renderer/modules/webgpu/gpu_queue.cc | 47 +++++++++---------- .../blink/renderer/modules/webgpu/gpu_queue.h | 6 +-- .../renderer/modules/webgpu/gpu_queue.idl | 4 +- 3 files changed, 28 insertions(+), 29 deletions(-) diff --git a/third_party/blink/renderer/modules/webgpu/gpu_queue.cc b/third_party/blink/renderer/modules/webgpu/gpu_queue.cc index 3b8a9181dfe15e..a6404fa915864a 100644 --- a/third_party/blink/renderer/modules/webgpu/gpu_queue.cc +++ b/third_party/blink/renderer/modules/webgpu/gpu_queue.cc @@ -178,22 +178,22 @@ GPUFence* GPUQueue::createFence(const GPUFenceDescriptor* descriptor) { void GPUQueue::writeBuffer(GPUBuffer* buffer, uint64_t buffer_offset, const MaybeShared& data, - uint64_t data_byte_offset, + uint64_t data_element_offset, ExceptionState& exception_state) { WriteBufferImpl(buffer, buffer_offset, data->byteLength(), data->BaseAddressMaybeShared(), data->TypeSize(), - data_byte_offset, {}, exception_state); + data_element_offset, {}, exception_state); } void GPUQueue::writeBuffer(GPUBuffer* buffer, uint64_t buffer_offset, const MaybeShared& data, - uint64_t data_byte_offset, - uint64_t byte_size, + uint64_t data_element_offset, + uint64_t data_element_count, ExceptionState& exception_state) { WriteBufferImpl(buffer, buffer_offset, data->byteLength(), data->BaseAddressMaybeShared(), data->TypeSize(), - data_byte_offset, byte_size, exception_state); + data_element_offset, data_element_count, exception_state); } void GPUQueue::writeBuffer(GPUBuffer* buffer, @@ -222,41 +222,40 @@ void GPUQueue::WriteBufferImpl(GPUBuffer* buffer, uint64_t data_byte_length, const void* data_base_ptr, unsigned data_bytes_per_element, - uint64_t data_byte_offset, - base::Optional byte_size, + uint64_t data_element_offset, + base::Optional data_element_count, ExceptionState& exception_state) { if (buffer_offset % 4 != 0) { exception_state.ThrowDOMException(DOMExceptionCode::kOperationError, - "bufferOffset must be a multiple of 4"); + "Buffer offset must be a multiple of 4"); return; } - if (data_byte_offset % data_bytes_per_element != 0) { - exception_state.ThrowDOMException( - DOMExceptionCode::kOperationError, - "dataByteOffset must be a multiple of data.BYTES_PER_ELEMENT"); - return; - } + CHECK_LE(data_bytes_per_element, 8u); - if (data_byte_offset > data_byte_length) { + if (data_element_offset > data_byte_length / data_bytes_per_element) { exception_state.ThrowDOMException(DOMExceptionCode::kOperationError, - "dataByteOffset is too large"); + "Data offset is too large"); return; } + + uint64_t data_byte_offset = data_element_offset * data_bytes_per_element; uint64_t max_write_size = data_byte_length - data_byte_offset; uint64_t write_byte_size = max_write_size; - if (byte_size.has_value()) { - write_byte_size = byte_size.value(); - if (write_byte_size > max_write_size) { - exception_state.ThrowDOMException(DOMExceptionCode::kOperationError, - "byteSize is too large"); + if (data_element_count.has_value()) { + if (data_element_count.value() > max_write_size / data_bytes_per_element) { + exception_state.ThrowDOMException( + DOMExceptionCode::kOperationError, + "Number of bytes to write is too large"); return; } + write_byte_size = data_element_count.value() * data_bytes_per_element; } - if (write_byte_size % std::max(4u, data_bytes_per_element) != 0) { - exception_state.ThrowRangeError( - "byteSize must be a multiple of max(4, data.BYTES_PER_ELEMENT)"); + if (write_byte_size % 4 != 0) { + exception_state.ThrowDOMException( + DOMExceptionCode::kOperationError, + "Number of bytes to write must be a multiple of 4"); return; } diff --git a/third_party/blink/renderer/modules/webgpu/gpu_queue.h b/third_party/blink/renderer/modules/webgpu/gpu_queue.h index 7ada7446e4a9fc..282cbd5e81f032 100644 --- a/third_party/blink/renderer/modules/webgpu/gpu_queue.h +++ b/third_party/blink/renderer/modules/webgpu/gpu_queue.h @@ -37,13 +37,13 @@ class GPUQueue : public DawnObject { void writeBuffer(GPUBuffer* buffer, uint64_t buffer_offset, const MaybeShared& data, - uint64_t data_byte_offset, + uint64_t data_element_offset, ExceptionState& exception_state); void writeBuffer(GPUBuffer* buffer, uint64_t buffer_offset, const MaybeShared& data, - uint64_t data_byte_offset, - uint64_t byte_size, + uint64_t data_element_offset, + uint64_t data_element_count, ExceptionState& exception_state); void writeBuffer(GPUBuffer* buffer, uint64_t buffer_offset, diff --git a/third_party/blink/renderer/modules/webgpu/gpu_queue.idl b/third_party/blink/renderer/modules/webgpu/gpu_queue.idl index 26be9a3a385f52..4da8ca407980b2 100644 --- a/third_party/blink/renderer/modules/webgpu/gpu_queue.idl +++ b/third_party/blink/renderer/modules/webgpu/gpu_queue.idl @@ -19,8 +19,8 @@ GPUBuffer buffer, GPUSize64 bufferOffset, [AllowShared] ArrayBufferView data, - optional GPUSize64 dataByteOffset = 0, - optional GPUSize64 byteSize); + optional GPUSize64 dataElementOffset = 0, + optional GPUSize64 dataElementCount); [RaisesException] void writeBuffer( GPUBuffer buffer, GPUSize64 bufferOffset, From 6425d870a28c3acdb2a1d5eb582b2334386ba3f6 Mon Sep 17 00:00:00 2001 From: chromium-internal-autoroll Date: Sat, 9 Jan 2021 03:20:27 +0000 Subject: [PATCH 03/49] Roll src-internal from 324ea4f154d8 to acbec5a9fae5 (1 revision) https://chrome-internal.googlesource.com/chrome/src-internal.git/+log/324ea4f154d8..acbec5a9fae5 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://skia-autoroll.corp.goog/r/src-internal-chromium-autoroll Please CC on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:linux-chromeos-chrome Bug: None Tbr: Change-Id: I2646330e858d3f4c12043fae6d948eb051a432d1 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2618906 Reviewed-by: chromium-internal-autoroll Commit-Queue: chromium-internal-autoroll Cr-Commit-Position: refs/heads/master@{#841777} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index fc7b5ab66b7025..37563438de6b54 100644 --- a/DEPS +++ b/DEPS @@ -1590,7 +1590,7 @@ deps = { Var('chromium_git') + '/v8/v8.git' + '@' + Var('v8_revision'), 'src-internal': { - 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@324ea4f154d8d0816a31b6d4cc573af81769a8f6', + 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@acbec5a9fae5b9e9dd16e526bb97457c2b0ce0e0', 'condition': 'checkout_src_internal', }, From be8f14506706ddbc674b1cf274997979d03f4dd4 Mon Sep 17 00:00:00 2001 From: Minju Kim Date: Sat, 9 Jan 2021 03:47:00 +0000 Subject: [PATCH 04/49] ozone/wayland: Set opaque/input region for non-rectangular window shape. In ozone/x11, the region is set to a non-rectangular shape from GetDefaultWindowMask for the rounded corner of browser frame. The window region is updated in XWindow::UpdateWindowRegion and sets in shape of X11 ExtensionManager. In ozone/wayland, it doesn't get any shape information from the platform window. In this CL, - Introduce PlatformWindowDelegate::GetWindowMaskForWindowShape to get the window mask information. - Create |window_shape_| from window mask for non-rectangular window shape. - Create region from |window_shape_| if it exists and set opaque/input region. - Update |window_shape_| and update opaque/input region Bug: 1126828 Change-Id: I56c928986526b88cd4b2c5e8fc3b4921f50a372c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2578501 Reviewed-by: Scott Violet Reviewed-by: Maksim Sisov Reviewed-by: Antonio Gomes Commit-Queue: MINJU KIM Cr-Commit-Position: refs/heads/master@{#841778} --- ui/ozone/platform/wayland/BUILD.gn | 1 + .../platform/wayland/common/wayland_util.cc | 16 +++++ .../platform/wayland/common/wayland_util.h | 4 ++ .../wayland/common/wayland_util_unittest.cc | 71 +++++++++++++++++++ .../platform/wayland/host/wayland_surface.cc | 44 ++++++++++-- .../platform/wayland/host/wayland_surface.h | 9 +++ .../wayland/host/wayland_toplevel_window.cc | 31 ++++++++ .../wayland/host/wayland_toplevel_window.h | 12 +++- .../platform/wayland/host/wayland_window.cc | 13 +++- .../platform/wayland/host/wayland_window.h | 7 ++ .../wayland/host/wayland_window_unittest.cc | 45 ++++++++++++ .../platform/wayland/test/mock_surface.cc | 22 +++++- ui/ozone/platform/wayland/test/mock_surface.h | 3 + ui/platform_window/DEPS | 1 + .../extensions/x11_extension_delegate.h | 10 --- .../platform_window_delegate.cc | 6 ++ ui/platform_window/platform_window_delegate.h | 7 ++ .../x11/test/x11_window_unittest.cc | 27 +++---- ui/platform_window/x11/x11_window.cc | 6 +- .../desktop_window_tree_host_linux.cc | 11 --- .../desktop_window_tree_host_linux.h | 3 - .../desktop_window_tree_host_platform.cc | 15 ++++ .../desktop_window_tree_host_platform.h | 2 + 23 files changed, 319 insertions(+), 47 deletions(-) create mode 100644 ui/ozone/platform/wayland/common/wayland_util_unittest.cc diff --git a/ui/ozone/platform/wayland/BUILD.gn b/ui/ozone/platform/wayland/BUILD.gn index c8492d7068e4a8..725fed39d63cc5 100644 --- a/ui/ozone/platform/wayland/BUILD.gn +++ b/ui/ozone/platform/wayland/BUILD.gn @@ -369,6 +369,7 @@ source_set("wayland_unittests") { testonly = true sources = [ + "common/wayland_util_unittest.cc", "gpu/wayland_overlay_manager_unittest.cc", "host/wayland_connection_unittest.cc", "host/wayland_data_device_unittest.cc", diff --git a/ui/ozone/platform/wayland/common/wayland_util.cc b/ui/ozone/platform/wayland/common/wayland_util.cc index 042cfc8e96b14a..dbc1b51618c4be 100644 --- a/ui/ozone/platform/wayland/common/wayland_util.cc +++ b/ui/ozone/platform/wayland/common/wayland_util.cc @@ -7,7 +7,10 @@ #include #include +#include "third_party/skia/include/core/SkPath.h" +#include "third_party/skia/include/core/SkRegion.h" #include "ui/base/hit_test.h" +#include "ui/gfx/skia_util.h" #include "ui/ozone/platform/wayland/host/wayland_connection.h" #include "ui/ozone/platform/wayland/host/wayland_shm_buffer.h" #include "ui/ozone/platform/wayland/host/wayland_surface.h" @@ -276,4 +279,17 @@ gfx::Rect TranslateWindowBoundsToParentDIP(ui::WaylandWindow* window, 1.0 / window->buffer_scale()); } +std::vector CreateRectsFromSkPath(const SkPath& path) { + SkRegion clip_region; + clip_region.setRect(path.getBounds().round()); + SkRegion region; + region.setPath(path, clip_region); + + std::vector rects; + for (SkRegion::Iterator it(region); !it.done(); it.next()) + rects.push_back(gfx::SkIRectToRect(it.rect())); + + return rects; +} + } // namespace wl diff --git a/ui/ozone/platform/wayland/common/wayland_util.h b/ui/ozone/platform/wayland/common/wayland_util.h index d755de9e0ba74f..e4728206086d05 100644 --- a/ui/ozone/platform/wayland/common/wayland_util.h +++ b/ui/ozone/platform/wayland/common/wayland_util.h @@ -17,6 +17,7 @@ #include "ui/platform_window/platform_window_init_properties.h" class SkBitmap; +class SkPath; namespace ui { class WaylandConnection; @@ -87,6 +88,9 @@ ui::WaylandWindow* RootWindowFromWlSurface(wl_surface* surface); gfx::Rect TranslateWindowBoundsToParentDIP(ui::WaylandWindow* window, ui::WaylandWindow* parent_window); +// Returns rectangles dictated by SkPath. +std::vector CreateRectsFromSkPath(const SkPath& path); + } // namespace wl #endif // UI_OZONE_PLATFORM_WAYLAND_COMMON_WAYLAND_UTIL_H_ diff --git a/ui/ozone/platform/wayland/common/wayland_util_unittest.cc b/ui/ozone/platform/wayland/common/wayland_util_unittest.cc new file mode 100644 index 00000000000000..57a3669cb30611 --- /dev/null +++ b/ui/ozone/platform/wayland/common/wayland_util_unittest.cc @@ -0,0 +1,71 @@ +// Copyright 2020 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/ozone/platform/wayland/common/wayland_util.h" + +#include + +#include "testing/gtest/include/gtest/gtest.h" +#include "third_party/skia/include/core/SkPath.h" +#include "third_party/skia/include/core/SkRect.h" + +namespace ui { + +class WaylandUtilTest : public testing::Test {}; + +TEST_F(WaylandUtilTest, TestCreateRectsFromSkPath) { + constexpr int width = 100; + constexpr int height = 100; + + // Test1 consists of 2 rectangles from SkPath. + std::vector expectedFor2Rects = {gfx::Rect(1, 0, 98, 1), + gfx::Rect(0, 1, 100, 99)}; + SkPath pathFor2Rects; + const SkRect rect = SkRect::MakeIWH(width, height); + constexpr SkScalar corner_radius_scalar = 2.0; + constexpr SkScalar radii[8] = {corner_radius_scalar, + corner_radius_scalar, // top-left + corner_radius_scalar, + corner_radius_scalar, // top-right + 0, + 0, // bottom-right + 0, + 0}; // bottom-left + pathFor2Rects.addRoundRect(rect, radii, SkPathDirection::kCW); + EXPECT_EQ(expectedFor2Rects, wl::CreateRectsFromSkPath(pathFor2Rects)); + + // Test2 consists of 5 rectangles from SkPath. + std::vector expectedFor5Rects = { + gfx::Rect(3, 0, 94, 1), gfx::Rect(1, 1, 98, 2), gfx::Rect(0, 3, 100, 94), + gfx::Rect(1, 97, 98, 2), gfx::Rect(3, 99, 94, 1)}; + SkPath pathFor5Rects; + pathFor5Rects.moveTo(0, 3); + pathFor5Rects.lineTo(1, 3); + pathFor5Rects.lineTo(1, 1); + pathFor5Rects.lineTo(3, 1); + pathFor5Rects.lineTo(3, 0); + + pathFor5Rects.lineTo(width - 3, 0); + pathFor5Rects.lineTo(width - 3, 1); + pathFor5Rects.lineTo(width - 1, 1); + pathFor5Rects.lineTo(width - 1, 3); + pathFor5Rects.lineTo(width, 3); + + pathFor5Rects.lineTo(width, height - 3); + pathFor5Rects.lineTo(width - 1, height - 3); + pathFor5Rects.lineTo(width - 1, height - 1); + pathFor5Rects.lineTo(width - 3, height - 1); + pathFor5Rects.lineTo(width - 3, height); + + pathFor5Rects.lineTo(3, height); + pathFor5Rects.lineTo(3, height - 1); + pathFor5Rects.lineTo(1, height - 1); + pathFor5Rects.lineTo(1, height - 3); + pathFor5Rects.lineTo(0, height - 3); + pathFor5Rects.close(); + + EXPECT_EQ(expectedFor5Rects, wl::CreateRectsFromSkPath(pathFor5Rects)); +} + +} // namespace ui diff --git a/ui/ozone/platform/wayland/host/wayland_surface.cc b/ui/ozone/platform/wayland/host/wayland_surface.cc index cc4d182585e174..c162d15fe727a2 100644 --- a/ui/ozone/platform/wayland/host/wayland_surface.cc +++ b/ui/ozone/platform/wayland/host/wayland_surface.cc @@ -7,6 +7,7 @@ #include #include +#include "ui/gfx/geometry/rect.h" #include "ui/gfx/geometry/rect_conversions.h" #include "ui/gfx/geometry/size.h" #include "ui/gfx/native_widget_types.h" @@ -191,16 +192,47 @@ void WaylandSurface::SetOpaqueRegion(const gfx::Rect& region_px) { if (!root_window_ || !root_window_->IsOpaqueWindow()) return; + wl_surface_set_opaque_region(surface_.get(), + CreateAndAddRegion(region_px).get()); + + connection_->ScheduleFlush(); +} + +void WaylandSurface::SetInputRegion(const gfx::Rect& region_px) { + // Don't set input region when use_native_frame is enabled. + if (!root_window_ || root_window_->ShouldUseNativeFrame()) + return; + + // Sets input region for input events to allow go through and + // for the compositor to ignore the parts of the input region that fall + // outside of the surface. + wl_surface_set_input_region(surface_.get(), + CreateAndAddRegion(region_px).get()); + + connection_->ScheduleFlush(); +} + +wl::Object WaylandSurface::CreateAndAddRegion( + const gfx::Rect& region_px) { + DCHECK(root_window_); + wl::Object region( wl_compositor_create_region(connection_->compositor())); - gfx::Rect region_dip = - gfx::ScaleToEnclosingRect(region_px, 1.f / buffer_scale_); - wl_region_add(region.get(), region_dip.x(), region_dip.y(), - region_dip.width(), region_dip.height()); - wl_surface_set_opaque_region(surface_.get(), region.get()); + auto add_region = [&](const gfx::Rect& r) { + gfx::Rect region_dip = gfx::ScaleToEnclosingRect(r, 1.f / buffer_scale_); + wl_region_add(region.get(), region_dip.x(), region_dip.y(), + region_dip.width(), region_dip.height()); + }; - connection_->ScheduleFlush(); + if (root_window_->GetWindowShape().has_value()) { + std::vector rectangles = root_window_->GetWindowShape().value(); + for (const auto& rect : rectangles) + add_region(rect); + } else { + add_region(region_px); + } + return region; } void WaylandSurface::SetViewportSource(const gfx::RectF& src_rect) { diff --git a/ui/ozone/platform/wayland/host/wayland_surface.h b/ui/ozone/platform/wayland/host/wayland_surface.h index 55ed77274f9b40..2f7284aeac3907 100644 --- a/ui/ozone/platform/wayland/host/wayland_surface.h +++ b/ui/ozone/platform/wayland/host/wayland_surface.h @@ -79,6 +79,13 @@ class WaylandSurface { // pixels. void SetOpaqueRegion(const gfx::Rect& region_px); + // Sets the input region on this surface in physical pixels. + // The input region indicates which parts of the surface accept pointer and + // touch input events. This is expected to be called from ToplevelWindow + // whenever the region that the surface span changes or window state changes + // when custom frame is used. + void SetInputRegion(const gfx::Rect& region_px); + // Set the source rectangle of the associated wl_surface. // See: // https://cgit.freedesktop.org/wayland/wayland-protocols/tree/stable/viewporter/viewporter.xml @@ -98,6 +105,8 @@ class WaylandSurface { wl::Object CreateSubsurface(WaylandSurface* parent); private: + wl::Object CreateAndAddRegion(const gfx::Rect& region_px); + WaylandConnection* const connection_; WaylandWindow* root_window_ = nullptr; wl::Object surface_; diff --git a/ui/ozone/platform/wayland/host/wayland_toplevel_window.cc b/ui/ozone/platform/wayland/host/wayland_toplevel_window.cc index acfc1e7866ff0f..041d0f9a74f522 100644 --- a/ui/ozone/platform/wayland/host/wayland_toplevel_window.cc +++ b/ui/ozone/platform/wayland/host/wayland_toplevel_window.cc @@ -9,6 +9,7 @@ #include "base/run_loop.h" #include "base/unguessable_token.h" #include "build/chromeos_buildflags.h" +#include "third_party/skia/include/core/SkPath.h" #include "ui/base/hit_test.h" #include "ui/gfx/native_widget_types.h" #include "ui/ozone/platform/wayland/host/shell_object_factory.h" @@ -58,6 +59,10 @@ bool WaylandToplevelWindow::CreateShellToplevel() { SetSizeConstraints(); TriggerStateChanges(); InitializeAuraShellSurface(); + // This could be the proper time to update window mask using + // NonClientView::GetWindowMask, since |non_client_view| is not created yet + // during the call to WaylandWindow::Initialize(). + UpdateWindowMask(); return true; } @@ -211,6 +216,8 @@ void WaylandToplevelWindow::SetUseNativeFrame(bool use_native_frame) { use_native_frame_ = use_native_frame; if (shell_toplevel_) SetDecorationMode(); + + UpdateWindowMask(); } bool WaylandToplevelWindow::ShouldUseNativeFrame() const { @@ -222,6 +229,11 @@ bool WaylandToplevelWindow::ShouldUseNativeFrame() const { ->xdg_decoration_manager_v1(); } +base::Optional> WaylandToplevelWindow::GetWindowShape() + const { + return window_shape_; +} + void WaylandToplevelWindow::HandleSurfaceConfigure(int32_t width, int32_t height, bool is_maximized, @@ -409,4 +421,23 @@ void WaylandToplevelWindow::SetDecorationMode() { } } +void WaylandToplevelWindow::UpdateWindowMask() { + // TODO(http://crbug.com/1158733): When supporting PlatformWindow::SetShape, + // update window region with the given |shape|. + WaylandWindow::UpdateWindowMask(); + root_surface()->SetInputRegion(GetBounds()); +} + +void WaylandToplevelWindow::UpdateWindowShape() { + // Create |window_shape_| using the window mask of PlatformWindowDelegate + // otherwise resets it. + base::Optional window_mask = delegate()->GetWindowMaskForWindowShape( + gfx::Size(GetBounds().width(), GetBounds().height())); + if (window_mask.has_value()) { + window_shape_ = wl::CreateRectsFromSkPath(window_mask.value()); + } else { + window_shape_.reset(); + } +} + } // namespace ui diff --git a/ui/ozone/platform/wayland/host/wayland_toplevel_window.h b/ui/ozone/platform/wayland/host/wayland_toplevel_window.h index eb0636a0f7ce22..8467b4052df055 100644 --- a/ui/ozone/platform/wayland/host/wayland_toplevel_window.h +++ b/ui/ozone/platform/wayland/host/wayland_toplevel_window.h @@ -38,7 +38,7 @@ class WaylandToplevelWindow : public WaylandWindow, int hittest, const gfx::Point& pointer_location_in_px) override; - // PlatformWindow + // PlatformWindow: void Show(bool inactive) override; void Hide() override; bool IsVisible() const override; @@ -55,6 +55,9 @@ class WaylandToplevelWindow : public WaylandWindow, void SetUseNativeFrame(bool use_native_frame) override; bool ShouldUseNativeFrame() const override; + // WaylandWindow overrides: + base::Optional> GetWindowShape() const override; + private: // WaylandWindow overrides: void HandleSurfaceConfigure(int32_t widht, @@ -64,6 +67,11 @@ class WaylandToplevelWindow : public WaylandWindow, bool is_activated) override; bool OnInitialize(PlatformWindowInitProperties properties) override; bool IsActive() const override; + // Calls UpdateWindowShape, set_input_region and set_opaque_region + // for this toplevel window. + void UpdateWindowMask() override; + // Update the window shape using the window mask of PlatformWindowDelegate. + void UpdateWindowShape() override; // WmMoveLoopHandler: bool RunMoveLoop(const gfx::Vector2d& drag_offset) override; @@ -141,6 +149,8 @@ class WaylandToplevelWindow : public WaylandWindow, // When use_native_frame is true, server-side decoration is set, // e.g. lacros-taskmanager. bool use_native_frame_ = false; + + base::Optional> window_shape_; }; } // namespace ui diff --git a/ui/ozone/platform/wayland/host/wayland_window.cc b/ui/ozone/platform/wayland/host/wayland_window.cc index f14adefce92df5..a3e55d16c31454 100644 --- a/ui/ozone/platform/wayland/host/wayland_window.cc +++ b/ui/ozone/platform/wayland/host/wayland_window.cc @@ -191,7 +191,7 @@ void WaylandWindow::SetBounds(const gfx::Rect& bounds_px) { return; bounds_px_ = bounds_px; - root_surface_->SetOpaqueRegion(gfx::Rect(bounds_px_.size())); + UpdateWindowMask(); delegate_->OnBoundsChanged(bounds_px_); } @@ -394,6 +394,17 @@ void WaylandWindow::OnCloseRequest() { delegate_->OnCloseRequest(); } +base::Optional> WaylandWindow::GetWindowShape() const { + return base::nullopt; +} + +void WaylandWindow::UpdateWindowMask() { + UpdateWindowShape(); + root_surface_->SetOpaqueRegion(bounds_px_); +} + +void WaylandWindow::UpdateWindowShape() {} + void WaylandWindow::OnDragEnter(const gfx::PointF& point, std::unique_ptr data, int operation) { diff --git a/ui/ozone/platform/wayland/host/wayland_window.h b/ui/ozone/platform/wayland/host/wayland_window.h index 4e0a01c45cd703..d45e10762fc6cb 100644 --- a/ui/ozone/platform/wayland/host/wayland_window.h +++ b/ui/ozone/platform/wayland/host/wayland_window.h @@ -177,6 +177,8 @@ class WaylandWindow : public PlatformWindow, virtual void OnDragLeave(); virtual void OnDragSessionClose(uint32_t dnd_action); + virtual base::Optional> GetWindowShape() const; + // Returns a root parent window within the same hierarchy. WaylandWindow* GetRootParentWindow(); @@ -211,6 +213,9 @@ class WaylandWindow : public PlatformWindow, void set_ui_scale(int32_t ui_scale) { ui_scale_ = ui_scale; } + // Calls set_opaque_region for this window. + virtual void UpdateWindowMask(); + private: FRIEND_TEST_ALL_PREFIXES(WaylandScreenTest, SetBufferScale); @@ -226,6 +231,8 @@ class WaylandWindow : public PlatformWindow, // Additional initialization of derived classes. virtual bool OnInitialize(PlatformWindowInitProperties properties) = 0; + virtual void UpdateWindowShape(); + // WaylandWindowDragController might need to take ownership of the wayland // surface whether the window that originated the DND session gets destroyed // in the middle of that session (e.g: when it is snapped into a tab strip). diff --git a/ui/ozone/platform/wayland/host/wayland_window_unittest.cc b/ui/ozone/platform/wayland/host/wayland_window_unittest.cc index aa9197bb91a70d..94e31f156122d7 100644 --- a/ui/ozone/platform/wayland/host/wayland_window_unittest.cc +++ b/ui/ozone/platform/wayland/host/wayland_window_unittest.cc @@ -815,6 +815,51 @@ TEST_P(WaylandWindowTest, SendsBoundsOnRequest) { EXPECT_EQ(restored_bounds, gfx::Rect()); } +TEST_P(WaylandWindowTest, UpdateWindowRegion) { + wl::MockSurface* mock_surface = server_.GetObject( + window_->root_surface()->GetSurfaceId()); + + // Change bounds. + const gfx::Rect initial_bounds = window_->GetBounds(); + const gfx::Rect new_bounds = gfx::Rect(0, 0, initial_bounds.width() + 10, + initial_bounds.height() + 10); + EXPECT_CALL(*mock_surface, SetOpaqueRegion(_)).Times(1); + EXPECT_CALL(*mock_surface, SetInputRegion(_)).Times(1); + window_->SetBounds(new_bounds); + Sync(); + VerifyAndClearExpectations(); + EXPECT_EQ(mock_surface->opaque_region(), new_bounds); + EXPECT_EQ(mock_surface->input_region(), new_bounds); + + // Maximize. + ScopedWlArray states = InitializeWlArrayWithActivatedState(); + EXPECT_CALL(*mock_surface, SetOpaqueRegion(_)).Times(1); + EXPECT_CALL(*mock_surface, SetInputRegion(_)).Times(1); + const gfx::Rect maximized_bounds = gfx::Rect(0, 0, 1024, 768); + window_->Maximize(); + AddStateToWlArray(XDG_TOPLEVEL_STATE_MAXIMIZED, states.get()); + SendConfigureEvent(xdg_surface_, maximized_bounds.width(), + maximized_bounds.height(), 1, states.get()); + Sync(); + VerifyAndClearExpectations(); + EXPECT_EQ(mock_surface->opaque_region(), maximized_bounds); + EXPECT_EQ(mock_surface->input_region(), maximized_bounds); + + // Restore. + const gfx::Rect restored_bounds = window_->GetRestoredBoundsInPixels(); + EXPECT_CALL(*mock_surface, SetOpaqueRegion(_)).Times(1); + EXPECT_CALL(*mock_surface, SetInputRegion(_)).Times(1); + window_->Restore(); + // Reinitialize wl_array, which removes previous old states. + auto active = InitializeWlArrayWithActivatedState(); + SendConfigureEvent(xdg_surface_, 0, 0, 2, active.get()); + Sync(); + VerifyAndClearExpectations(); + + EXPECT_EQ(mock_surface->opaque_region(), restored_bounds); + EXPECT_EQ(mock_surface->input_region(), restored_bounds); +} + TEST_P(WaylandWindowTest, CanDispatchMouseEventDefault) { EXPECT_FALSE(window_->CanDispatchEvent(&test_mouse_event_)); } diff --git a/ui/ozone/platform/wayland/test/mock_surface.cc b/ui/ozone/platform/wayland/test/mock_surface.cc index f2039e50a160ad..33b9ae348c0491 100644 --- a/ui/ozone/platform/wayland/test/mock_surface.cc +++ b/ui/ozone/platform/wayland/test/mock_surface.cc @@ -28,7 +28,7 @@ void SetOpaqueRegion(wl_client* client, void SetInputRegion(wl_client* client, wl_resource* resource, wl_resource* region) { - GetUserDataAs(resource)->SetInputRegion(region); + GetUserDataAs(resource)->SetInputRegionImpl(region); } void Damage(wl_client* client, @@ -103,6 +103,10 @@ MockSurface* MockSurface::FromResource(wl_resource* resource) { } void MockSurface::SetOpaqueRegionImpl(wl_resource* region) { + if (!region) { + opaque_region_ = gfx::Rect(-1, -1, 0, 0); + return; + } auto bounds = GetUserDataAs(region)->getBounds(); opaque_region_ = gfx::Rect(bounds.fLeft, bounds.fTop, bounds.fRight - bounds.fLeft, @@ -111,6 +115,22 @@ void MockSurface::SetOpaqueRegionImpl(wl_resource* region) { SetOpaqueRegion(region); } +void MockSurface::SetInputRegionImpl(wl_resource* region) { + // It is unsafe to always treat |region| as a valid pointer. + // According to the protocol about wl_surface::set_input_region + // "A NULL wl_region cuases the input region to be set to infinite." + if (!region) { + input_region_ = gfx::Rect(-1, -1, 0, 0); + return; + } + auto bounds = GetUserDataAs(region)->getBounds(); + input_region_ = + gfx::Rect(bounds.fLeft, bounds.fTop, bounds.fRight - bounds.fLeft, + bounds.fBottom - bounds.fTop); + + SetInputRegion(region); +} + void MockSurface::AttachNewBuffer(wl_resource* buffer_resource, int32_t x, int32_t y) { diff --git a/ui/ozone/platform/wayland/test/mock_surface.h b/ui/ozone/platform/wayland/test/mock_surface.h index 0901319a7b4451..fd682b8fa87422 100644 --- a/ui/ozone/platform/wayland/test/mock_surface.h +++ b/ui/ozone/platform/wayland/test/mock_surface.h @@ -57,6 +57,7 @@ class MockSurface : public ServerObject { TestViewport* viewport() { return viewport_; } gfx::Rect opaque_region() const { return opaque_region_; } + gfx::Rect input_region() const { return input_region_; } void set_frame_callback(wl_resource* callback_resource) { DCHECK(!frame_callback_); @@ -69,6 +70,7 @@ class MockSurface : public ServerObject { bool has_role() const { return !!xdg_surface_ || !!sub_surface_; } void SetOpaqueRegionImpl(wl_resource* region); + void SetInputRegionImpl(wl_resource* region); void AttachNewBuffer(wl_resource* buffer_resource, int32_t x, int32_t y); void DestroyPrevAttachedBuffer(); void ReleaseBuffer(wl_resource* buffer); @@ -79,6 +81,7 @@ class MockSurface : public ServerObject { TestSubSurface* sub_surface_ = nullptr; TestViewport* viewport_ = nullptr; gfx::Rect opaque_region_ = {-1, -1, 0, 0}; + gfx::Rect input_region_ = {-1, -1, 0, 0}; wl_resource* frame_callback_ = nullptr; diff --git a/ui/platform_window/DEPS b/ui/platform_window/DEPS index b51da65b022615..baa2776c5d5233 100644 --- a/ui/platform_window/DEPS +++ b/ui/platform_window/DEPS @@ -1,4 +1,5 @@ include_rules = [ + "+third_party/skia/include", "+ui/base", "+ui/gfx", ] diff --git a/ui/platform_window/extensions/x11_extension_delegate.h b/ui/platform_window/extensions/x11_extension_delegate.h index 86ec59d2f14dfb..381f29945aaa69 100644 --- a/ui/platform_window/extensions/x11_extension_delegate.h +++ b/ui/platform_window/extensions/x11_extension_delegate.h @@ -12,12 +12,6 @@ using AtkKeyEventStruct = struct _AtkKeyEventStruct; #endif -class SkPath; - -namespace gfx { -class Size; -} - namespace ui { class COMPONENT_EXPORT(PLATFORM_WINDOW) X11ExtensionDelegate { @@ -30,10 +24,6 @@ class COMPONENT_EXPORT(PLATFORM_WINDOW) X11ExtensionDelegate { // (menu) windows. virtual void OnLostMouseGrab() = 0; - // Returns a mask to be used to clip the window for the given - // size. This is used to create the non-rectangular window shape. - virtual void GetWindowMask(const gfx::Size& size, SkPath* window_mask) = 0; - #if BUILDFLAG(USE_ATK) // Notifies an ATK key event to be processed. The transient parameter will be // true if the event target is a transient window (e.g. a modal dialog) diff --git a/ui/platform_window/platform_window_delegate.cc b/ui/platform_window/platform_window_delegate.cc index fb685b3852fe43..c93bb3e736b85b 100644 --- a/ui/platform_window/platform_window_delegate.cc +++ b/ui/platform_window/platform_window_delegate.cc @@ -4,6 +4,7 @@ #include "ui/platform_window/platform_window_delegate.h" +#include "third_party/skia/include/core/SkPath.h" #include "ui/gfx/geometry/size.h" namespace ui { @@ -20,4 +21,9 @@ base::Optional PlatformWindowDelegate::GetMaximumSizeForWindow() { return base::nullopt; } +base::Optional PlatformWindowDelegate::GetWindowMaskForWindowShape( + const gfx::Size& size_in_pixels) { + return base::nullopt; +} + } // namespace ui diff --git a/ui/platform_window/platform_window_delegate.h b/ui/platform_window/platform_window_delegate.h index 6ffdaa15b90115..05054d1c2c5782 100644 --- a/ui/platform_window/platform_window_delegate.h +++ b/ui/platform_window/platform_window_delegate.h @@ -14,6 +14,8 @@ class Rect; class Size; } // namespace gfx +class SkPath; + namespace ui { class Event; @@ -63,6 +65,11 @@ class COMPONENT_EXPORT(PLATFORM_WINDOW) PlatformWindowDelegate { virtual base::Optional GetMinimumSizeForWindow(); virtual base::Optional GetMaximumSizeForWindow(); + // Returns a mask to be used to clip the window for the given + // size. This is used to create the non-rectangular window shape. + virtual base::Optional GetWindowMaskForWindowShape( + const gfx::Size& size_in_pixels); + // Called when the location of mouse pointer entered the window. This is // different from ui::ET_MOUSE_ENTERED which may not be generated when mouse // is captured either by implicitly or explicitly. diff --git a/ui/platform_window/x11/test/x11_window_unittest.cc b/ui/platform_window/x11/test/x11_window_unittest.cc index b0950b027d375a..945fc5b3d427e6 100644 --- a/ui/platform_window/x11/test/x11_window_unittest.cc +++ b/ui/platform_window/x11/test/x11_window_unittest.cc @@ -73,6 +73,21 @@ class TestPlatformWindowDelegate : public PlatformWindowDelegate { } void OnActivationChanged(bool active) override {} void OnMouseEnter() override {} + base::Optional GetWindowMaskForWindowShape( + const gfx::Size& size_in_pixels) override { + SkPath window_mask; + int right = size_in_pixels.width(); + int bottom = size_in_pixels.height(); + + window_mask.moveTo(0, 0); + window_mask.lineTo(0, bottom); + window_mask.lineTo(right, bottom); + window_mask.lineTo(right, 10); + window_mask.lineTo(right - 10, 10); + window_mask.lineTo(right - 10, 0); + window_mask.close(); + return window_mask; + } private: gfx::AcceleratedWidget widget_ = gfx::kNullAcceleratedWidget; @@ -90,18 +105,6 @@ class ShapedX11ExtensionDelegate : public X11ExtensionDelegate { ~ShapedX11ExtensionDelegate() override = default; void OnLostMouseGrab() override {} - void GetWindowMask(const gfx::Size& size, SkPath* window_mask) override { - int right = size.width(); - int bottom = size.height(); - - window_mask->moveTo(0, 0); - window_mask->lineTo(0, bottom); - window_mask->lineTo(right, bottom); - window_mask->lineTo(right, 10); - window_mask->lineTo(right - 10, 10); - window_mask->lineTo(right - 10, 0); - window_mask->close(); - } #if BUILDFLAG(USE_ATK) bool OnAtkKeyEvent(AtkKeyEventStruct* atk_key_event, bool transient) override { diff --git a/ui/platform_window/x11/x11_window.cc b/ui/platform_window/x11/x11_window.cc index a70699ea71ff00..0cfcb1cb66e364 100644 --- a/ui/platform_window/x11/x11_window.cc +++ b/ui/platform_window/x11/x11_window.cc @@ -765,8 +765,10 @@ base::Optional X11Window::GetMaximumSizeForXWindow() { void X11Window::GetWindowMaskForXWindow(const gfx::Size& size, SkPath* window_mask) { - if (x11_extension_delegate_) - x11_extension_delegate_->GetWindowMask(size, window_mask); + base::Optional path = + platform_window_delegate_->GetWindowMaskForWindowShape(size); + if (path.has_value()) + *window_mask = path.value(); } void X11Window::DispatchHostWindowDragMovement( diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc index 0bdc1470708b48..a0f75cc909f795 100644 --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc @@ -339,17 +339,6 @@ void DesktopWindowTreeHostLinux::DestroyNonClientEventFilter() { non_client_window_event_filter_.reset(); } -void DesktopWindowTreeHostLinux::GetWindowMask(const gfx::Size& size, - SkPath* window_mask) { - DCHECK(window_mask); - Widget* widget = native_widget_delegate()->AsWidget(); - if (widget->non_client_view()) { - // Some frame views define a custom (non-rectangular) window mask. If - // so, use it to define the window shape. If not, fall through. - widget->non_client_view()->GetWindowMask(size, window_mask); - } -} - void DesktopWindowTreeHostLinux::OnLostMouseGrab() { dispatcher()->OnHostLostMouseGrab(); } diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_linux.h b/ui/views/widget/desktop_aura/desktop_window_tree_host_linux.h index 4b6a5a4476a32c..e0339379e1a85a 100644 --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_linux.h +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_linux.h @@ -19,8 +19,6 @@ #include "ui/views/views_export.h" #include "ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h" -class SkPath; - namespace aura { class ScopedWindowTargeter; } // namespace aura @@ -106,7 +104,6 @@ class VIEWS_EXPORT DesktopWindowTreeHostLinux void DestroyNonClientEventFilter(); // X11ExtensionDelegate overrides: - void GetWindowMask(const gfx::Size& size, SkPath* window_mask) override; void OnLostMouseGrab() override; #if BUILDFLAG(USE_ATK) bool OnAtkKeyEvent(AtkKeyEventStruct* atk_key_event, bool transient) override; 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 6a1fcf7fe75d8f..6a8860f88a9eb5 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 @@ -11,6 +11,7 @@ #include "base/bind.h" #include "base/threading/thread_task_runner_handle.h" #include "base/time/time.h" +#include "third_party/skia/include/core/SkPath.h" #include "ui/aura/client/aura_constants.h" #include "ui/aura/client/drag_drop_client.h" #include "ui/aura/client/focus_client.h" @@ -738,6 +739,20 @@ DesktopWindowTreeHostPlatform::GetMaximumSizeForWindow() { .size(); } +base::Optional +DesktopWindowTreeHostPlatform::GetWindowMaskForWindowShape( + const gfx::Size& size_in_pixels) { + if (GetWidget()->non_client_view()) { + SkPath window_mask; + // Some frame views define a custom (non-rectanguar) window mask. + // If so, use it to define the window shape. If not, fall through. + GetWidget()->non_client_view()->GetWindowMask(size_in_pixels, &window_mask); + if (!window_mask.isEmpty()) + return window_mask; + } + return base::nullopt; +} + void DesktopWindowTreeHostPlatform::OnWorkspaceChanged() { OnHostWorkspaceChanged(); } 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 8db9bca8f175cc..30249aff924460 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 @@ -121,6 +121,8 @@ class VIEWS_EXPORT DesktopWindowTreeHostPlatform void OnActivationChanged(bool active) override; base::Optional GetMinimumSizeForWindow() override; base::Optional GetMaximumSizeForWindow() override; + base::Optional GetWindowMaskForWindowShape( + const gfx::Size& size_in_pixels) override; // ui::WorkspaceExtensionDelegate: void OnWorkspaceChanged() override; From 49b522f8b2c5997d64cad5063856d0c5ddf473cb Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 04:04:31 +0000 Subject: [PATCH 05/49] Roll Chrome Win64 PGO Profile Roll Chrome Win64 PGO profile from chrome-win64-master-1610139561-9d7df42b937a5193cd789e89275356fd04ecc110.profdata to chrome-win64-master-1610150355-1b4a639d43ac20407656d2f3a2b0d583443b5895.profdata If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/pgo-win64-chromium Please CC pgo-profile-sheriffs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:win64-chrome Tbr: pgo-profile-sheriffs@google.com Change-Id: Iacf8222b3eda942596e2f84395340c0234c3a7ab Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619019 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841779} --- chrome/build/win64.pgo.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/build/win64.pgo.txt b/chrome/build/win64.pgo.txt index d8ecf290f0b895..d9969741deb6ac 100644 --- a/chrome/build/win64.pgo.txt +++ b/chrome/build/win64.pgo.txt @@ -1 +1 @@ -chrome-win64-master-1610139561-9d7df42b937a5193cd789e89275356fd04ecc110.profdata +chrome-win64-master-1610150355-1b4a639d43ac20407656d2f3a2b0d583443b5895.profdata From c1f0e690653d0e2bd834dbfc5a258cf1eb690070 Mon Sep 17 00:00:00 2001 From: chrome-release-bot Date: Sat, 9 Jan 2021 04:08:55 +0000 Subject: [PATCH 06/49] Updating trunk VERSION from 4383.0 to 4384.0 # This is an automated release commit. # Do not revert without consulting chrome-pmo@google.com. NOAUTOREVERT=true TBR=lakpamarthy@chromium.org Change-Id: I46c687288af5123fa1a97c72175a6ffca9a8adc9 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619299 Reviewed-by: Chrome Release Bot (LUCI) Cr-Commit-Position: refs/heads/master@{#841780} --- chrome/VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/VERSION b/chrome/VERSION index e3720728fdb26e..976092ff4a5a69 100644 --- a/chrome/VERSION +++ b/chrome/VERSION @@ -1,4 +1,4 @@ MAJOR=89 MINOR=0 -BUILD=4383 +BUILD=4384 PATCH=0 From 3f07c02951c70575cc13814b45c9c70c47632199 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 04:09:21 +0000 Subject: [PATCH 07/49] Roll Skia from 54515b7b2b99 to ae562bd177d9 (2 revisions) https://skia.googlesource.com/skia.git/+log/54515b7b2b99..ae562bd177d9 2021-01-09 mtklein@google.com remove default Uniforms base Ptr 2021-01-09 csmartdalton@google.com Finish converting GrTriangulator structs to nested classes If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/skia-autoroll Please CC johnstiles@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux-blink-rel;luci.chromium.try:linux-chromeos-compile-dbg;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Cq-Do-Not-Cancel-Tryjobs: true Bug: None Tbr: johnstiles@google.com Change-Id: I7832de4c14765651af26394c2031d4cd9248832d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619024 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841781} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 37563438de6b54..14bcf543937074 100644 --- a/DEPS +++ b/DEPS @@ -199,7 +199,7 @@ vars = { # Three lines of non-changing comments so that # the commit queue can handle CLs rolling Skia # and whatever else without interference from each other. - 'skia_revision': '54515b7b2b994b1d439a3a3bfa4f0517c9a981f4', + 'skia_revision': 'ae562bd177d9503d3ade8055f7d36f65dc68fd8c', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling V8 # and whatever else without interference from each other. From b65d8f5ff759bc3ab7dc7267c0946cb25b2f9241 Mon Sep 17 00:00:00 2001 From: Joao Victor Almeida Date: Sat, 9 Jan 2021 04:18:39 +0000 Subject: [PATCH 08/49] Change PL::ClippedClippedAbsoluteBoundingBox to pixel-snap MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This makes the code when CompositingOptimizations is enabled match behavior without it enabled. Bug: 1115577 Change-Id: Iee854f63d135885e1ae5d02a5f76c1dd41eb51aa Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2613347 Commit-Queue: João Victor Almeida de Aguiar Reviewed-by: Chris Harrelson Cr-Commit-Position: refs/heads/master@{#841782} --- .../blink/renderer/core/paint/paint_layer.cc | 6 +++++- .../renderer/core/paint/paint_layer_test.cc | 8 +++++++- ...render-surfaces-with-rotation-expected.png | Bin ...render-surfaces-with-rotation-expected.png | Bin 0 -> 16684 bytes ...render-surfaces-with-rotation-expected.png | Bin 0 -> 16596 bytes ...render-surfaces-with-rotation-expected.png | Bin 16684 -> 16596 bytes ...render-surfaces-with-rotation-expected.png | Bin 16826 -> 16534 bytes 7 files changed, 12 insertions(+), 2 deletions(-) rename third_party/blink/web_tests/platform/{mac/virtual/prefer_compositing_to_lcd_text => mac-mac-arm11.0}/compositing/overflow/nested-render-surfaces-with-rotation-expected.png (100%) create mode 100644 third_party/blink/web_tests/platform/mac-mac-arm11.0/virtual/prefer_compositing_to_lcd_text/compositing/overflow/nested-render-surfaces-with-rotation-expected.png create mode 100644 third_party/blink/web_tests/platform/mac-mac10.13/virtual/prefer_compositing_to_lcd_text/compositing/overflow/nested-render-surfaces-with-rotation-expected.png diff --git a/third_party/blink/renderer/core/paint/paint_layer.cc b/third_party/blink/renderer/core/paint/paint_layer.cc index 979f5655337585..2d5ce782be4a8d 100644 --- a/third_party/blink/renderer/core/paint/paint_layer.cc +++ b/third_party/blink/renderer/core/paint/paint_layer.cc @@ -1124,7 +1124,11 @@ const IntRect PaintLayer::ClippedAbsoluteBoundingBox() const { PhysicalRect mapping_rect = LocalBoundingBoxForCompositingOverlapTest(); GetLayoutObject().MapToVisualRectInAncestorSpace( GetLayoutObject().View(), mapping_rect, kUseGeometryMapper); - return EnclosingIntRect(mapping_rect); + // We use PixelSnappedIntRect here to match the behavior in + // CIU:: UpdateAncestorDependentCompositingInputs, even though the code + // in UnclippedAbsoluteBoundingBox and its equivalent in + // CIU::UpdateAncestorDependentCompositingInputs uses EnclosingIntRect. + return PixelSnappedIntRect(mapping_rect); } else { return GetAncestorDependentCompositingInputs() .clipped_absolute_bounding_box; diff --git a/third_party/blink/renderer/core/paint/paint_layer_test.cc b/third_party/blink/renderer/core/paint/paint_layer_test.cc index 6d0eb2ae2f97a3..8fa57a904ceb53 100644 --- a/third_party/blink/renderer/core/paint/paint_layer_test.cc +++ b/third_party/blink/renderer/core/paint/paint_layer_test.cc @@ -2968,7 +2968,13 @@ TEST_P(PaintLayerOverlapTest, EXPECT_EQ(fixed->LocalBoundingBoxForCompositingOverlapTest(), PhysicalRect(0, 0, 50, 50)); EXPECT_EQ(fixed->UnclippedAbsoluteBoundingBox(), IntRect(117, 117, 66, 66)); - EXPECT_EQ(fixed->ClippedAbsoluteBoundingBox(), IntRect(117, 117, 66, 66)); + // These values differ because CompositingOptimizationsEnabled takes into + // account transforms (the one one the .xform element), whereas + // CompositingOptimizationsDisabled (incorrectly) does not. + if (!RuntimeEnabledFeatures::CompositingOptimizationsEnabled()) + EXPECT_EQ(fixed->ClippedAbsoluteBoundingBox(), IntRect(117, 117, 66, 66)); + else + EXPECT_EQ(fixed->ClippedAbsoluteBoundingBox(), IntRect(118, 118, 64, 64)); } TEST_P(PaintLayerOverlapTest, NestedFixedUsesExpandedBoundingBoxForOverlap) { diff --git a/third_party/blink/web_tests/platform/mac/virtual/prefer_compositing_to_lcd_text/compositing/overflow/nested-render-surfaces-with-rotation-expected.png b/third_party/blink/web_tests/platform/mac-mac-arm11.0/compositing/overflow/nested-render-surfaces-with-rotation-expected.png similarity index 100% rename from third_party/blink/web_tests/platform/mac/virtual/prefer_compositing_to_lcd_text/compositing/overflow/nested-render-surfaces-with-rotation-expected.png rename to third_party/blink/web_tests/platform/mac-mac-arm11.0/compositing/overflow/nested-render-surfaces-with-rotation-expected.png diff --git a/third_party/blink/web_tests/platform/mac-mac-arm11.0/virtual/prefer_compositing_to_lcd_text/compositing/overflow/nested-render-surfaces-with-rotation-expected.png b/third_party/blink/web_tests/platform/mac-mac-arm11.0/virtual/prefer_compositing_to_lcd_text/compositing/overflow/nested-render-surfaces-with-rotation-expected.png new file mode 100644 index 0000000000000000000000000000000000000000..c5c8929a6fcc7cb211708a4bc7346c583286a057 GIT binary patch literal 16684 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 B|BnCw literal 0 HcmV?d00001 diff --git a/third_party/blink/web_tests/platform/mac-mac10.13/virtual/prefer_compositing_to_lcd_text/compositing/overflow/nested-render-surfaces-with-rotation-expected.png b/third_party/blink/web_tests/platform/mac-mac10.13/virtual/prefer_compositing_to_lcd_text/compositing/overflow/nested-render-surfaces-with-rotation-expected.png new file mode 100644 index 0000000000000000000000000000000000000000..f8d82582abe42fb59e1bb4713a53301836f2a619 GIT binary patch literal 16596 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

gm#UDk~=4L_a&Qo-}L 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 literal 0 HcmV?d00001 diff --git a/third_party/blink/web_tests/platform/mac/compositing/overflow/nested-render-surfaces-with-rotation-expected.png b/third_party/blink/web_tests/platform/mac/compositing/overflow/nested-render-surfaces-with-rotation-expected.png index c5c8929a6fcc7cb211708a4bc7346c583286a057..f8d82582abe42fb59e1bb4713a53301836f2a619 100644 GIT binary patch literal 16596 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

gm#UDk~=4L_a&Qo-}L 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 literal 16684 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 B|BnCw diff --git a/third_party/blink/web_tests/platform/win/virtual/prefer_compositing_to_lcd_text/compositing/overflow/nested-render-surfaces-with-rotation-expected.png b/third_party/blink/web_tests/platform/win/virtual/prefer_compositing_to_lcd_text/compositing/overflow/nested-render-surfaces-with-rotation-expected.png index 35fdd9252d9144ba5f0d6d3512fab119f5d65e4d..487a936452fbbf497a0982d53f750f581a695419 100644 GIT binary patch literal 16534 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�SMwXSGW7885x*<mhblQ`XisyZ-;sy5OxDV!49f}@cX*f zd{lBX*k4F%vKbrqBXANjP4F+q{nRr>^w+JANFN`S zq7fBeixuAT5d$^0yRd-{yHTYf` zqmztFEl%OOOu~+;dS=DCIy#p6Zxo^hZ=KCt3cB@!3+1CuR7|FOEhjgLd;McKT(g-l zXb)Vz2IQmscKuIyb)db41NW>SD=fC96fOW*ur-|lT933zx_A%nL!#D&smUJcU_ z(-7|!mC;}Q@ffOhF&?VHoebihDy)Qqm@WvEx(K z;_M||?@kaLL-y{nuY;>Ky_q#I9%5Uu!-Zxpm)5~1mGSN;b`V~_evs#}#IjJv^Y$fa zI`#AtK|~q)MTezT7!SUXgHIJw?c8Sbv*)Ip&8&(S^+y@avAy6meY9oTRD>G4CSzsj zcg2sdsMtz=&)$i-l7?fe#`V8%zv2hΠC4YW%A>Qn|`Er8Yuz#q+{+8{v=>Xk|vJ z7K~(%|2b`POIW^ImjmCHZwz04{@5s8bgkAsTfBbJ-NVIY2ir^p6TKG2KjV`r!eYhf z3TjIJSS8x5mmvbX(Q@E$y$eLg!$Ou3F9rB4lLcgyv@PR&-oE64%3PwnglNJ1Jaw{p zV!!8Vb~r7Ig+*d2j7df<3lg^-t@hVj`FlZGPW0(sP;!2uW>FppuoIRk z4hb;tpEpMi!@J?0vKJUIU@Lg{@P-XL!dUszQ7DP@I~(b_~pG-5_Py0y8i@58zV=gEIX-p4bq^oxrtz^j4vW| zmQdhS;77#^H>00@+=zsXLKF>K7_T{0rym$;B0;+iI7xAS1!`QC?CZLo)=Gyzo@A`o zdaBSz#akau*s9o|*Jj6WI%HEtMi(RB`!~3h;zIo0%Uh7UfMR02)<*XjdPrlBaH=elwL5Zy17w;1$7jU2U&+IU6BKh{%N1SP|=8i zD(Uiy2>_o~L6lYZ+Pqf7q;jq#st~Z=#s;pKAZw3cRw~TqG$7PPN4SMG)QxnBwsW$H zi!D^q1JCy|vx>Kb%*j#6S8rM7YEoHtZZhBMB_fQ;O0SrgpWoC;lJE`K%VFrD-Ws(V zyzqm6H6uK@R@1pOk|lqMw#OnFF9!*xT*Y8{e{Er!l2kWOf7}|v6v%h?&C zQD5D~RTE@4@nl7Ir-z4327-tJp0o&Nl-%<6Jn^H8f^r0PJcoK_u5wf$qBsO!sWhJA z3S{;9Vo`7gb1oFwArQ>!SyDF&h(ldME@^^$$CsK zich)A#g7Kws{$|1_;VEjf=t?52xflMW(OIaW6^fjc+T1~*`AR?Ce5pN{);Qn)bV;{ zCJ*~wTk5a&%N0p*pgfjt^=QCNh}a6pyVR#W)0$*=!oXV#@~1mD&7(h9$cNL(7nczn=IAZ zxC{h)!U4A){H=mF?>Q-qLoIA8IkDl&2Hvj=e)A2G{>YNooxqvV-uCzLv5nSu5?Y<^ zqJE+TBrs0g+CVM+ra%W&7`?(c93pAT5d&|D$1QA4EDI~jBQN7ZLBxw? zHy&9)Ihk9{_yXRA-VDhm%K_MxK(p02bto!x00dJk4HU}da}dF@qH^QGWLK}jGbTqh z5EQO}g7WO3nQCy)N*~J^iFOImXHQeVoyoW;JJFEy+D_`{M3Om)U~;aA`2pVf+9T0c zQ5i^x2Y}z6aIg{a@G4M*qJ?VQu zpvqQH;V3sf$7LMF#mcpn36jL#K?|IOguV;N#Y}!m%F((hI zi2|VliV1*kDjY@{W1wsW|I+@hB5GTROfmVrrpm*>ULH^%>j>%IYERT-wlm2gQD6Cs zU)FH42!7slcqMsUWUFZ(7d12Ubs4Co!4xTM)WFopXni>!1`Dfv|8`{EO;4#hnx)Ef zYcDefZm}d;Yqyp@nvG$tY}j7dOn#@r2Gu={qx7P-b4z|HebfAyeN8>BYJodCib7{f z{GkT@6BIZN>as4s`B}o$Q!8hvfye8WparYqQVc^Q&2oo9&;1k?);{pt&0D7O4=X%l zysT&@(B$Nt*{NB$pfQ}rct%<6EGPlu5&EGSkGS~g1Z4f0G#bdv`7Pq-qPabbfL52P2 z@C*iQggJB$Hz#I%-d1i&muscHyhH6=sYsdg697ufqwLK`{ zSp6VhQpT5yB z#Hj!b$~Odal4g-@;9`^WZH3Rjm2V1)aU^7XrA@p9TudyK082$JHfyt|31?c$lc=I!8SMS^VBomXHDZB$iw?LCD}lkH!ZS1 zZ$R$H&+YWQ%Q&^Mx$y$VoZgxn4+B{t#aW^zu)m)obX*FmCn7PuV%Tpl?#vWZv)FIO z22W@^2yeY-v%|;zm|@F3()!5EHkb5A)`8oDPYNF2IlknheCV;&EWCDj=j9SUiJ{{O zsL4piviu8<^wR6(B1uZHGVtP3`>oS*PlB+4o3pRX^Es-^I@!Dy^YXSSt+=POS3w=a z$kloGgK|fH)D6wKtuA5bSkO%=F~?}?HdTLG1^kO6*Ru&neymV z6RUqL_*4z{pxi4+9oS;BN?tsf_Io3F zqlhmu&Pd5jTYV!BPHZ*mYp)htmfX8?8^`944#jyE^FylvqzG znP=}bKn$}VBmaf{P_-pLh1>gJw(!!TAEQLa6QuK@cr2C$N^+H=ZgBQB*stN_8j^+{ zHeoiq6)5fWj!)C2KL8Jl0tu|oAUFuSzLz<6PS^AYZs=Y8qlOY*=s@))9f}nMlnyl$ z1oQRT+y@*6~17+#)BU?ItUr zv85tiZzx(YQSseJB3RHZkTgI?GX< zb1>_B{Sp2zll|hRjKe(WSN`fd<*MdsjUgk1yYEST3=GU9{fh#&FBNj@=*)I61s|y&3cOi( zF=0d*NH0iNGsFqbwu4Z9(#1tZR+TA&@@2a;G{g5T2PgO2ijQoKv-&5*)1oHFsTsTH z8Y|Ci0{H=tTEl-{M|v3ZtM^?4c}D<;4X;9p$By!yoamjzp03MFO%Ac9dt~wz{e8E^ zAIg66+{gOM+X9&-rY0!n?c;Abxj(oEfBq zo7ARl|K-T$m%(b``+vwVv++P-4DOnp-%<{N37GE%dHDGqFZHK^kM!RhX@k0KNxAB6 zeAr$D;>R1&~m%gRaxocvjQ zXG$%{bO;hno^H~x>S|J4LX(WBmXZfoaEWoCLqPrDOm=uUC&(%6#$7@{F$H!xBK(KP z&uC9!GPU|ZB&CLOyWodmtS9tCH@!ln@(7r8qLrvayooxFu*}MLaXg9gm-|l5X2Mfg1 zE~|0pf8qjYk5|XcXN1yv9w+Y{k`R0yZ!7L^st>5k8zFZb| zSazX>j7F*&<9VU4KaVEb(yd-tbwofEnl3ODue*hUN@Gk*iyS;Ujs)OE(_K=IO<2&$`2E@0EaTbi?(Xi~ocU4rlC8zJ$+9#2@mnfP zHQD?aZdAx&uE{yVba)b-T^PeAuIPS0IY#I9vavD&?<;KBj8SyD*V7F@!<$HFeB;rE zb70zxNQPS4Q&y;%$3^*UCF{&~kty$o5+1an8y(puuy)Z}sH8frXVpFYN8`#=+khk2 zCPI}vBTYiY@i?G{9qY2*U1r=A7Z^6OQpMW`SaEK{pg8i|aON*A>vSS3Gz-d3T?{K_ ze>JrI(%pe=vPf6H&?XuvD=I#e2)udyVVFqnJCi;yj)YM*dA3|x9+tNbxq(8^qRv-{oiD^t&5QMsf`je7z7 zdzq%quZ}=3Wi2O(#ka$j^V71x)3v_A3-FZ#e&;Y6gAacl)X%)^@qcfrCr2;)Aj2I3 zKcfG1$}9{(;^X*jOZ$qwD(b3@G8|Z@=Ggsh)5$T=2Rq?#0GiR?@tc-PbV6-HwF_a= zC$qgzag&RU)f6qSpRhk3gxc;8fWkU8*0K7~w&=_CTl2pm@u}= zL%T8?J5l$?ohE~w$J8rI5P-X&l)E=SnN{;^|J_=;A%5j67jTGK{zMo)8Bg1~54?RP z4Q&j8cOKQ|Agrd4^tg} zRM1Z}6OIl6*+vKEB06v0q{i0UTr-2tq76rjj+(Hb=8!|<(K@NbwZG7lctC~D=7d`N zLHGaO{EPdblRxqkp>EVt+)uxj6Fuzi7(4;zs%Z^%!>v?Z(xovYoi5fZ6E?;ULyg|+ zfO+i;-3R2JPL5n^oT!qY1^e4=&pjOjlt4%?Z+ikpAWSZL`v*`u9Kalg^+pr-Rs1kG2j_14lM~^F zQI0w~r}NTh^D}1~GjGtj{qvB|OCm;EEBrSOqn=e`1p2n-%0wWSkAgAh{QKYd= zJ^Q5~ZD9Bk)b4z?q=7>QxX*2!ZEk@yDJt7$*B)(Yo4UE^NdQxjYi*|kqYPlA-Z-S`-FC`5 z+uaK2cwrsDEAPD}RUMtcqj!NmZf<*kt1~A{B7Hp3kS2icMJzuM-!GZzF-1i+n^!Iv zw>pY8U+g|OqqDz+13mD78ha9ueennHgIJ`j`S0pg=|64!fk%BybYNI8nu_4MLSp_3 z=ugMfBVAZ#s{x{ukccG^sE5HD~NMrg+gR;}~q|;Per}HML z&|kgGD_a7lNmTpd`y}C>xIBbh=JLpjP*OuG8NS*7PQc&Y#lE7V#zUx+4Z_oQZ5*BL zFES2BMk2F0Bj=gtSS!#6KFV(vMpr7;072su|CrNXFA}y|uW{$&P1i;i|S1d#9fTx#NqWGJC1qgy_1h5SIX>xzSZ1^knL$Du~EX)63V%9VX z7$I0|E9hm7?4ahG|A!LYNab=)Abm>|lX z2nO5!8eL6?4LF%+lwKMEOGdY<2mT%DKG}V!9P$F}_;P?DrS!!JyVrfNg{XR*x*l^j z9t_f*+R?>;F};!d+Bq8XivUb|trh^qH>&HY;0HPM{{p~TeW2{{a1^xpDvi literal 16826 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 yYq1R^+d%fiV From 0b548ee5e8324b84a0d7e5966023ab5124a11ff8 Mon Sep 17 00:00:00 2001 From: Xiaohui Chen Date: Sat, 9 Jan 2021 04:20:30 +0000 Subject: [PATCH 09/49] assistant: remove remaining bloom constants Bug: None Change-Id: I9eee624092d6ac2b54d242f94dfc53c68121264c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2617506 Auto-Submit: Xiaohui Chen Reviewed-by: Jeroen Dhollander Commit-Queue: Xiaohui Chen Cr-Commit-Position: refs/heads/master@{#841783} --- .../assistant_interaction_controller_impl.cc | 18 ------------------ .../assistant_interaction_controller_impl.h | 2 -- ash/assistant/util/assistant_util.cc | 1 - .../assistant_interaction_controller.h | 4 ---- chrome/browser/flag_descriptions.cc | 5 ----- chrome/browser/flag_descriptions.h | 3 --- .../assistant_manager_service_impl.cc | 3 --- .../assistant/public/cpp/assistant_enums.h | 10 ++++++---- .../assistant/public/shared/constants.cc | 7 ------- .../assistant/public/shared/constants.h | 18 ------------------ 10 files changed, 6 insertions(+), 65 deletions(-) diff --git a/ash/assistant/assistant_interaction_controller_impl.cc b/ash/assistant/assistant_interaction_controller_impl.cc index 2cb246321ec831..43ca62ab191601 100644 --- a/ash/assistant/assistant_interaction_controller_impl.cc +++ b/ash/assistant/assistant_interaction_controller_impl.cc @@ -148,24 +148,6 @@ void AssistantInteractionControllerImpl::StartTextInteraction( assistant_->StartTextInteraction(text, query_source, allow_tts); } -void AssistantInteractionControllerImpl::StartBloomInteraction() { - // TODO(jeroendh): Test. - StopActiveInteraction(false); - - AssistantUiController::Get()->ShowUi(AssistantEntryPoint::kBloom); - - OnInteractionStarted(AssistantInteractionMetadata( - AssistantInteractionType::kText, AssistantQuerySource::kBloom, - /*query=*/"processing query")); -} - -void AssistantInteractionControllerImpl::ShowBloomResult( - const std::string& html) { - // TODO(jeroendh) ensure we're in a bloom interaction - - OnHtmlResponse(html, /*fallback=*/""); -} - void AssistantInteractionControllerImpl::OnAssistantControllerConstructed() { AssistantUiController::Get()->GetModel()->AddObserver(this); assistant_controller_->view_delegate()->AddObserver(this); diff --git a/ash/assistant/assistant_interaction_controller_impl.h b/ash/assistant/assistant_interaction_controller_impl.h index ff0345c98f9091..c83dc0bc567b78 100644 --- a/ash/assistant/assistant_interaction_controller_impl.h +++ b/ash/assistant/assistant_interaction_controller_impl.h @@ -69,8 +69,6 @@ class AssistantInteractionControllerImpl void StartTextInteraction(const std::string& text, bool allow_tts, AssistantQuerySource query_source) override; - void StartBloomInteraction() override; - void ShowBloomResult(const std::string& html) override; // AssistantControllerObserver: void OnAssistantControllerConstructed() override; diff --git a/ash/assistant/util/assistant_util.cc b/ash/assistant/util/assistant_util.cc index e826342fb278e8..6ad78c77cb304f 100644 --- a/ash/assistant/util/assistant_util.cc +++ b/ash/assistant/util/assistant_util.cc @@ -47,7 +47,6 @@ bool IsVoiceEntryPoint(AssistantEntryPoint entry_point, bool prefer_voice) { case AssistantEntryPoint::kProactiveSuggestions: case AssistantEntryPoint::kSetup: case AssistantEntryPoint::kStylus: - case AssistantEntryPoint::kBloom: return false; } } diff --git a/ash/public/cpp/assistant/controller/assistant_interaction_controller.h b/ash/public/cpp/assistant/controller/assistant_interaction_controller.h index a2829543727b86..62f2a781a01c1c 100644 --- a/ash/public/cpp/assistant/controller/assistant_interaction_controller.h +++ b/ash/public/cpp/assistant/controller/assistant_interaction_controller.h @@ -41,10 +41,6 @@ class ASH_PUBLIC_EXPORT AssistantInteractionController { bool allow_tts, chromeos::assistant::AssistantQuerySource source) = 0; - // Start Bloom interaction. - virtual void StartBloomInteraction() = 0; - virtual void ShowBloomResult(const std::string& html) = 0; - protected: AssistantInteractionController(); virtual ~AssistantInteractionController(); diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc index bc9c8b6db3d09e..bc67fc02ad48f1 100644 --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc @@ -89,11 +89,6 @@ const char kEditPasswordsInSettingsName[] = "Edit passwords in settings"; const char kEditPasswordsInSettingsDescription[] = "Enables password editing in settings."; -const char kEnableBloomName[] = "Enable Bloom Integration"; -const char kEnableBloomDescription[] = - "Enables native support for bloom, an experimental vertical knowledge " - "search feature."; - const char kEnableBluetoothSerialPortProfileInSerialApiName[] = "Enable Bluetooth Serial Port Profile in Serial API"; const char kEnableBluetoothSerialPortProfileInSerialApiDescription[] = diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h index 70ad6e6571e727..a887fc5cdfa3c8 100644 --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h @@ -88,9 +88,6 @@ extern const char kDetectFormSubmissionOnFormClearDescription[]; extern const char kEditPasswordsInSettingsName[]; extern const char kEditPasswordsInSettingsDescription[]; -extern const char kEnableBloomName[]; -extern const char kEnableBloomDescription[]; - extern const char kEnableBluetoothSerialPortProfileInSerialApiName[]; extern const char kEnableBluetoothSerialPortProfileInSerialApiDescription[]; diff --git a/chromeos/services/assistant/assistant_manager_service_impl.cc b/chromeos/services/assistant/assistant_manager_service_impl.cc index 413dd9ddfee79e..f23120477b3e63 100644 --- a/chromeos/services/assistant/assistant_manager_service_impl.cc +++ b/chromeos/services/assistant/assistant_manager_service_impl.cc @@ -148,9 +148,6 @@ const char* ToTriggerSource(AssistantEntryPoint entry_point) { return kEntryPointProactiveSuggestions; case AssistantEntryPoint::kLauncherChip: return kEntryPointLauncherChip; - case AssistantEntryPoint::kBloom: - return kEntryPointUnspecified; // TODO(jeroendh): Use Bloom specific - // entrypoint } } diff --git a/chromeos/services/assistant/public/cpp/assistant_enums.h b/chromeos/services/assistant/public/cpp/assistant_enums.h index 01a3621ab6b87c..d33ba6707fa9f2 100644 --- a/chromeos/services/assistant/public/cpp/assistant_enums.h +++ b/chromeos/services/assistant/public/cpp/assistant_enums.h @@ -62,8 +62,9 @@ enum class AssistantQuerySource { kQuickAnswers = 11, kLauncherChip = 12, kBetterOnboarding = 13, - kBloom = 14, - kMaxValue = kBloom, + // Deprecated, please do not use. + // kBloom = 14, + kMaxValue = kBetterOnboarding, }; // Enumeration of possible Assistant interaction types. @@ -127,8 +128,9 @@ enum class AssistantEntryPoint { kLauncherSearchBoxIcon = 9, kProactiveSuggestions = 10, kLauncherChip = 11, - kBloom = 12, - kMaxValue = kBloom, + // Deprecated, please do not reuse + // kBloom = 12, + kMaxValue = kLauncherChip, }; // Enumeration of Assistant exit points. These values are persisted to logs. diff --git a/chromeos/services/assistant/public/shared/constants.cc b/chromeos/services/assistant/public/shared/constants.cc index e0ae021bcb6441..f8507afc606e1f 100644 --- a/chromeos/services/assistant/public/shared/constants.cc +++ b/chromeos/services/assistant/public/shared/constants.cc @@ -14,12 +14,5 @@ const char kServiceIdEndpoint[] = ""; const char kSampleServiceIdRequest[] = ""; const char kServiceIdRequestPayload[] = ""; -const char kBloomScope[] = "https://fake/bloom/scope"; -const char kBloomServiceUrl[] = "https://fake.bloom.service.url"; -const char kBloomCreateImagePath[] = "/fake/create/image/path"; -const char kBloomOcrImagePath[] = "/fake/ocr/image/path&image_id="; -const char kBloomSearchProblemPath[] = - "/fake/search/problem/path&metadata_blob="; - } // namespace assistant } // namespace chromeos diff --git a/chromeos/services/assistant/public/shared/constants.h b/chromeos/services/assistant/public/shared/constants.h index dd6fa126ac25f7..f5a107243ff661 100644 --- a/chromeos/services/assistant/public/shared/constants.h +++ b/chromeos/services/assistant/public/shared/constants.h @@ -26,24 +26,6 @@ extern const char kSampleServiceIdRequest[]; COMPONENT_EXPORT(ASSISTANT_SERVICE_SHARED) extern const char kServiceIdRequestPayload[]; -COMPONENT_EXPORT(ASSISTANT_SERVICE_SHARED) -extern const char kBloomScope[]; -COMPONENT_EXPORT(ASSISTANT_SERVICE_SHARED) -extern const char kBloomServiceUrl[]; -COMPONENT_EXPORT(ASSISTANT_SERVICE_SHARED) -extern const char kBloomCreateImagePath[]; -COMPONENT_EXPORT(ASSISTANT_SERVICE_SHARED) -extern const char kBloomOcrImagePath[]; -COMPONENT_EXPORT(ASSISTANT_SERVICE_SHARED) -extern const char kBloomSearchProblemPath[]; - -COMPONENT_EXPORT(ASSISTANT_SERVICE_SHARED) -extern const char kBloomCreateImagePath[]; -COMPONENT_EXPORT(ASSISTANT_SERVICE_SHARED) -extern const char kBloomOcrImagePath[]; -COMPONENT_EXPORT(ASSISTANT_SERVICE_SHARED) -extern const char kBloomSearchProblemPath[]; - } // namespace assistant } // namespace chromeos From 29032e48929471a747069454f3317e87a436405d Mon Sep 17 00:00:00 2001 From: Minju Kim Date: Sat, 9 Jan 2021 04:23:39 +0000 Subject: [PATCH 10/49] Make rounded corner of browser frame from NonClientView::GetWindowMask crrev.com/c/2578501 introduces PlatformWindowDelegate::GetWindowMaskForWindowShape and updates window region by the window mask in ozone/wayland. This CL is the implementation to make the corner of the browser frame rounded from the window mask. It is done by XShape in x11, but there is no equivalent extension of XShape in wayland. In this CL, 1. Introduce WindowShapeUpdater to update |ui::Layer::alpha_shape_| for the rounded corner of window shape from NonClientView::GetWindowMask. - When bounds changes, ui::Layer::alpha_shape_ is updated according to the ShapeRects converted from NonClientView::GetWindowMask. - UpdateWindowTransparency when ui::Layer::alpha_shape_ is updated. 2. Set transparent:true to the compositor when NonClientView has window mask. Otherwise, AppendQuadsToFillScreen to always fill the entire screen in LayerTreeHostImpl. Bug: 1126828 Change-Id: I3a712b8c5f33f9fd32bd2cd5e6ee8664732e3ca3 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2419056 Reviewed-by: Scott Violet Commit-Queue: MINJU KIM Cr-Commit-Position: refs/heads/master@{#841784} --- ui/views/BUILD.gn | 2 + .../desktop_window_tree_host_platform.cc | 16 +++- .../desktop_window_tree_host_platform.h | 6 ++ ...ktop_window_tree_host_platform_unittest.cc | 31 ++++++++ .../desktop_aura/window_shape_updater.cc | 77 +++++++++++++++++++ .../desktop_aura/window_shape_updater.h | 49 ++++++++++++ 6 files changed, 179 insertions(+), 2 deletions(-) create mode 100644 ui/views/widget/desktop_aura/window_shape_updater.cc create mode 100644 ui/views/widget/desktop_aura/window_shape_updater.h diff --git a/ui/views/BUILD.gn b/ui/views/BUILD.gn index 03db25c784581e..a7c7d96ed3ac0e 100644 --- a/ui/views/BUILD.gn +++ b/ui/views/BUILD.gn @@ -826,6 +826,8 @@ component("views") { "widget/desktop_aura/desktop_drag_drop_client_ozone.h", "widget/desktop_aura/desktop_window_tree_host_platform.cc", "widget/desktop_aura/window_move_client_platform.cc", + "widget/desktop_aura/window_shape_updater.cc", + "widget/desktop_aura/window_shape_updater.h", ] } if (use_atk) { 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 6a8860f88a9eb5..50d62e658c7de1 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 @@ -28,6 +28,7 @@ #include "ui/views/corewm/tooltip_aura.h" #include "ui/views/widget/desktop_aura/desktop_drag_drop_client_ozone.h" #include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h" +#include "ui/views/widget/desktop_aura/window_shape_updater.h" #include "ui/views/widget/widget_aura_utils.h" #include "ui/views/window/native_frame_view.h" #include "ui/wm/core/window_util.h" @@ -199,7 +200,13 @@ void DesktopWindowTreeHostPlatform::OnNativeWidgetCreated( native_widget_delegate_->OnNativeWidgetCreated(); } -void DesktopWindowTreeHostPlatform::OnWidgetInitDone() {} +void DesktopWindowTreeHostPlatform::OnWidgetInitDone() { + // WindowShape is updated from ShapeRects transformed from + // NonClientView::GetWindowMask. We can guarantee that |NonClientView| is + // created OnWidgetInitDone. + WindowShapeUpdater::CreateWindowShapeUpdater( + this, this->desktop_native_widget_aura()); +} void DesktopWindowTreeHostPlatform::OnActiveWindowChanged(bool active) {} @@ -437,6 +444,8 @@ gfx::Rect DesktopWindowTreeHostPlatform::GetWorkAreaBoundsInScreen() const { void DesktopWindowTreeHostPlatform::SetShape( std::unique_ptr native_shape) { + // TODO(crbug.com/1158733) : When supporting PlatformWindow::SetShape, + // Calls ui::Layer::SetAlphaShape and sets |is_shape_explicitly_set_| to true. platform_window()->SetShape(std::move(native_shape), GetRootTransform()); } @@ -559,7 +568,10 @@ bool DesktopWindowTreeHostPlatform::ShouldUseNativeFrame() const { } bool DesktopWindowTreeHostPlatform::ShouldWindowContentsBeTransparent() const { - return platform_window()->ShouldWindowContentsBeTransparent(); + return platform_window()->ShouldWindowContentsBeTransparent() || + const_cast(this) + ->GetWindowMaskForWindowShape(GetBoundsInPixels().size()) + .has_value(); } void DesktopWindowTreeHostPlatform::FrameTypeChanged() { 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 30249aff924460..3eeb808481fca2 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 @@ -42,6 +42,8 @@ class VIEWS_EXPORT DesktopWindowTreeHostPlatform aura::Window* GetContentWindow(); const aura::Window* GetContentWindow() const; + bool is_shape_explicitly_set() const { return is_shape_explicitly_set_; } + // DesktopWindowTreeHost: void Init(const Widget::InitParams& params) override; void OnNativeWidgetCreated(const Widget::InitParams& params) override; @@ -176,6 +178,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostPlatform // Used for tab dragging in move loop requests. WindowMoveClientPlatform window_move_client_; + // ui::Layer::SetAlphaShape can be set from either SetShape or default window + // mask. When explicitly setting from SetShape, |explicitly_set_shape_:true|. + bool is_shape_explicitly_set_ = false; + base::WeakPtrFactory close_widget_factory_{ this}; diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform_unittest.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform_unittest.cc index 45c1da7d50e6b0..b228f8bc840bd0 100644 --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform_unittest.cc +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform_unittest.cc @@ -167,6 +167,37 @@ TEST_F(DesktopWindowTreeHostPlatformTest, EXPECT_TRUE(widget->GetNativeWindow()->IsVisible()); } +// Tests that the window shape is updated from the +// |NonClientView::GetWindowMask|. +TEST_F(DesktopWindowTreeHostPlatformTest, UpdateWindowShapeFromWindowMask) { + std::unique_ptr widget = CreateWidgetWithNativeWidget(); + widget->Show(); + + auto* host_platform = DesktopWindowTreeHostPlatform::GetHostForWidget( + widget->GetNativeWindow()->GetHost()->GetAcceleratedWidget()); + ASSERT_TRUE(host_platform); + auto* content_window = + DesktopWindowTreeHostPlatform::GetContentWindowForWidget( + widget->GetNativeWindow()->GetHost()->GetAcceleratedWidget()); + ASSERT_TRUE(content_window); + // alpha_shape for the layer of content window is updated from the + // |NonClientView::GetWindowMask|. + EXPECT_TRUE(host_platform + ->GetWindowMaskForWindowShape(content_window->bounds().size()) + .has_value()); + EXPECT_TRUE(content_window->layer()->alpha_shape()); + + // When fullscreen mode, alpha_shape is set to empty since there is no + // |NonClientView::GetWindowMask|. + host_platform->SetFullscreen(true); + widget->SetBounds(gfx::Rect(800, 800)); + EXPECT_FALSE( + host_platform + ->GetWindowMaskForWindowShape(content_window->bounds().size()) + .has_value()); + EXPECT_FALSE(content_window->layer()->alpha_shape()); +} + // A Widget that allows setting the min/max size for the widget. class CustomSizeWidget : public Widget { public: diff --git a/ui/views/widget/desktop_aura/window_shape_updater.cc b/ui/views/widget/desktop_aura/window_shape_updater.cc new file mode 100644 index 00000000000000..225d5267556bcd --- /dev/null +++ b/ui/views/widget/desktop_aura/window_shape_updater.cc @@ -0,0 +1,77 @@ +// Copyright 2021 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/views/widget/desktop_aura/window_shape_updater.h" + +#include "ui/gfx/skia_util.h" +#include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h" +#include "ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h" + +namespace { + +std::unique_ptr ConvertToShapeRects(const SkPath& path) { + // Converts to ShapeRects from SkPath. + auto shape_rects = std::make_unique(); + SkRegion clip_region; + clip_region.setRect(path.getBounds().round()); + SkRegion region; + region.setPath(path, clip_region); + for (SkRegion::Iterator it(region); !it.done(); it.next()) + shape_rects->push_back(gfx::SkIRectToRect(it.rect())); + return shape_rects; +} + +} // namespace + +namespace views { + +// static +WindowShapeUpdater* WindowShapeUpdater::CreateWindowShapeUpdater( + DesktopWindowTreeHostPlatform* tree_host, + DesktopNativeWidgetAura* native_widget_aura) { + return new WindowShapeUpdater(tree_host, native_widget_aura); +} + +WindowShapeUpdater::WindowShapeUpdater( + DesktopWindowTreeHostPlatform* tree_host, + DesktopNativeWidgetAura* native_widget_aura) + : tree_host_(tree_host), native_widget_aura_(native_widget_aura) { + tree_host_->GetContentWindow()->AddObserver(this); + UpdateWindowShapeFromWindowMask(tree_host_->GetContentWindow()); +} + +void WindowShapeUpdater::OnWindowBoundsChanged( + aura::Window* window, + const gfx::Rect& old_bounds, + const gfx::Rect& new_bounds, + ui::PropertyChangeReason reason) { + UpdateWindowShapeFromWindowMask(window); +} + +void WindowShapeUpdater::OnWindowDestroying(aura::Window* window) { + window->RemoveObserver(this); + delete this; +} + +void WindowShapeUpdater::UpdateWindowShapeFromWindowMask(aura::Window* window) { + // If |ui::Layer::alpha_shape_| is set explicitly from SetShape, + // we don't need to set default window mask from non_client_view. + if (tree_host_->is_shape_explicitly_set()) + return; + // WindowTransparency should be updated as well when the window shape is + // changed. When a window mask exists, transparent should be true to prevent + // compositor from filling the entire screen in AppendQuadsToFillScreen. + // Otherwise, transparent should be false. + native_widget_aura_->UpdateWindowTransparency(); + base::Optional path = + tree_host_->GetWindowMaskForWindowShape(window->bounds().size()); + if (path.has_value()) { + // SetAlphaShape to the layer of |content_window_| + window->layer()->SetAlphaShape(ConvertToShapeRects(path.value())); + } else { + window->layer()->SetAlphaShape(nullptr); + } +} + +} // namespace views diff --git a/ui/views/widget/desktop_aura/window_shape_updater.h b/ui/views/widget/desktop_aura/window_shape_updater.h new file mode 100644 index 00000000000000..ec7736252733a5 --- /dev/null +++ b/ui/views/widget/desktop_aura/window_shape_updater.h @@ -0,0 +1,49 @@ +// Copyright 2021 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. + +#ifndef UI_VIEWS_WIDGET_DESKTOP_AURA_WINDOW_SHAPE_UPDATER_H_ +#define UI_VIEWS_WIDGET_DESKTOP_AURA_WINDOW_SHAPE_UPDATER_H_ + +#include + +#include "ui/aura/window_observer.h" +#include "ui/compositor/layer.h" + +namespace views { + +class DesktopNativeWidgetAura; +class DesktopWindowTreeHostPlatform; + +// Class to observe the window bounds changed to update window shape +// for the rounded corner of the browser frame. +class WindowShapeUpdater : public aura::WindowObserver { + public: + static WindowShapeUpdater* CreateWindowShapeUpdater( + DesktopWindowTreeHostPlatform* tree_host, + DesktopNativeWidgetAura* native_widget_aura); + + private: + WindowShapeUpdater(DesktopWindowTreeHostPlatform* tree_host, + DesktopNativeWidgetAura* native_widget_aura); + WindowShapeUpdater(const WindowShapeUpdater&) = delete; + WindowShapeUpdater& operator=(const WindowShapeUpdater&) = delete; + ~WindowShapeUpdater() override = default; + + // aura::WindowObserver: + void OnWindowBoundsChanged(aura::Window* window, + const gfx::Rect& old_bounds, + const gfx::Rect& new_bounds, + ui::PropertyChangeReason reason) override; + + void OnWindowDestroying(aura::Window* window) override; + + void UpdateWindowShapeFromWindowMask(aura::Window* window); + + DesktopWindowTreeHostPlatform* tree_host_ = nullptr; + DesktopNativeWidgetAura* native_widget_aura_ = nullptr; +}; + +} // namespace views + +#endif // UI_VIEWS_WIDGET_DESKTOP_AURA_WINDOW_SHAPE_UPDATER_H_ From 239b3be87c6ee2285a4e299354f330e6cf1bc72d Mon Sep 17 00:00:00 2001 From: Bartek Nowierski Date: Sat, 9 Jan 2021 04:29:49 +0000 Subject: [PATCH 11/49] Revert "Temporarily disable PA-Everywhere in FYI bots" This reverts commit bf4c42e57a8dc7135b5dacfdc79b0f7e34a7b8a4. Reason for revert: No longer needed Original change's description: > Temporarily disable PA-Everywhere in FYI bots > > This is to check if the selected tests pass under a normal configuration > > Bug: 1121427 > Change-Id: I3a23c18d51ec7e51ae290d10a649c09491c2015a > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2592855 > Reviewed-by: Garrett Beaty > Commit-Queue: Garrett Beaty > Auto-Submit: Bartek Nowierski > Cr-Commit-Position: refs/heads/master@{#837619} TBR=bpastene@chromium.org,gbeaty@chromium.org,chromium-scoped@luci-project-accounts.iam.gserviceaccount.com,bartekn@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 1121427 Change-Id: I71924b6680bd8abd783e75f9ee8d058b23e3e904 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2618421 Reviewed-by: Bartek Nowierski Auto-Submit: Bartek Nowierski Commit-Queue: Bartek Nowierski Cr-Commit-Position: refs/heads/master@{#841785} --- tools/mb/mb_config.pyl | 19 ++++++++++++------- .../mb_config_expectations/chromium.fyi.json | 12 ++++++++++++ 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/tools/mb/mb_config.pyl b/tools/mb/mb_config.pyl index 397ae4b8752aaa..3a944c314cd841 100644 --- a/tools/mb/mb_config.pyl +++ b/tools/mb/mb_config.pyl @@ -346,10 +346,8 @@ 'mac-upload-perfetto': 'release_bot', 'win-annotator-rel': 'release_bot', 'win-celab-builder-rel': 'release_bot_minimal_symbols', - # TODO(bartekn): Switch back to debug_bot_paeverywhere_x86 and - # release_trybot_paeverywhere_x86. - 'win-paeverywhere-x86-fyi-dbg': 'debug_bot_x86', - 'win-paeverywhere-x86-fyi-rel': 'release_trybot_x86', + 'win-paeverywhere-x86-fyi-dbg': 'debug_bot_paeverywhere_x86', + 'win-paeverywhere-x86-fyi-rel': 'release_trybot_paeverywhere_x86', 'win-paeverywhere-x64-fyi-dbg': 'debug_bot_paeverywhere_x64', 'win-paeverywhere-x64-fyi-rel': 'release_trybot_paeverywhere_x64', 'win-pixel-builder-rel': 'release_bot', @@ -1925,6 +1923,10 @@ 'debug_bot', 'fuchsia', 'compile_only', ], + 'debug_bot_paeverywhere_x86': [ + 'debug_bot', 'paeverywhere', 'x86', + ], + 'debug_bot_paeverywhere_x64': [ 'debug_bot', 'paeverywhere', 'x64', ], @@ -2570,7 +2572,11 @@ 'use_clang_coverage', 'partial_code_coverage_instrumentation', ], - 'release_trybot_paeverywhere_x64': [ + 'release_trybot_paeverywhere_x86': [ + 'release_trybot', 'paeverywhere', 'x86', + ], + + 'release_trybot_paeverywhere_x64': [ 'release_trybot', 'paeverywhere', 'x64', ], @@ -3177,8 +3183,7 @@ }, 'paeverywhere': { - # TODO(bartekn): Re-enable. - # 'gn_args': 'use_allocator="partition"', + 'gn_args': 'use_allocator="partition"', }, # Used to pass the list of files to instrument for coverage to the compile diff --git a/tools/mb/mb_config_expectations/chromium.fyi.json b/tools/mb/mb_config_expectations/chromium.fyi.json index 0d02c48a0ec821..f0f86cf437a93f 100644 --- a/tools/mb/mb_config_expectations/chromium.fyi.json +++ b/tools/mb/mb_config_expectations/chromium.fyi.json @@ -248,6 +248,7 @@ "symbol_level": 1, "target_cpu": "arm", "target_os": "android", + "use_allocator": "partition", "use_goma": true } }, @@ -259,6 +260,7 @@ "symbol_level": 1, "target_cpu": "arm", "target_os": "android", + "use_allocator": "partition", "use_goma": true } }, @@ -269,6 +271,7 @@ "symbol_level": 1, "target_cpu": "arm64", "target_os": "android", + "use_allocator": "partition", "use_goma": true } }, @@ -280,6 +283,7 @@ "symbol_level": 1, "target_cpu": "arm64", "target_os": "android", + "use_allocator": "partition", "use_goma": true } }, @@ -648,6 +652,7 @@ "is_debug": true, "symbol_level": 1, "target_cpu": "x64", + "use_allocator": "partition", "use_goma": true } }, @@ -658,6 +663,7 @@ "is_debug": false, "symbol_level": 1, "target_cpu": "x64", + "use_allocator": "partition", "use_goma": true } }, @@ -723,6 +729,7 @@ "is_debug": true, "symbol_level": 1, "target_cpu": "x64", + "use_allocator": "partition", "use_goma": true } }, @@ -733,6 +740,7 @@ "is_debug": false, "symbol_level": 1, "target_cpu": "x64", + "use_allocator": "partition", "use_goma": true } }, @@ -764,6 +772,7 @@ "is_debug": true, "symbol_level": 1, "target_cpu": "x64", + "use_allocator": "partition", "use_goma": true } }, @@ -774,6 +783,7 @@ "is_debug": false, "symbol_level": 1, "target_cpu": "x64", + "use_allocator": "partition", "use_goma": true } }, @@ -783,6 +793,7 @@ "is_debug": true, "symbol_level": 1, "target_cpu": "x86", + "use_allocator": "partition", "use_goma": true } }, @@ -793,6 +804,7 @@ "is_debug": false, "symbol_level": 1, "target_cpu": "x86", + "use_allocator": "partition", "use_goma": true } }, From f54aa2cc2be932718b187a65243c886d586fd935 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 04:48:34 +0000 Subject: [PATCH 12/49] Roll Perfetto Trace Processor Win from 61125414310a to affdce7627b1 https://android.googlesource.com/platform/external/perfetto.git/+log/61125414310a..affdce7627b1 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/perfetto-trace-processor-win-chromium Please CC perfetto-bugs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Tbr: perfetto-bugs@google.com Change-Id: I11f7abb4830fb2218402854abd025ccbcc6d5af0 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619258 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841786} --- tools/perf/core/perfetto_binary_roller/binary_deps.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/perf/core/perfetto_binary_roller/binary_deps.json b/tools/perf/core/perfetto_binary_roller/binary_deps.json index 9293b4b235eb92..c23c59c877f951 100644 --- a/tools/perf/core/perfetto_binary_roller/binary_deps.json +++ b/tools/perf/core/perfetto_binary_roller/binary_deps.json @@ -1,8 +1,8 @@ { "trace_processor_shell": { "win": { - "hash": "c3511239558778e5fe725e2dcdaaf190869a0ec6", - "remote_path": "perfetto_binaries/trace_processor_shell/win/61125414310ae1df95fc378cd432071283783a81/trace_processor_shell.exe" + "hash": "0104dfe57b4d98879c4238741f712a983facfbd5", + "remote_path": "perfetto_binaries/trace_processor_shell/win/affdce7627b1030441a19608a1bcb321190786da/trace_processor_shell.exe" }, "mac": { "hash": "6f7e8527130f15e840fbc7a20e0d3e069c414327", From 59cef14a323ad7af8aec13c4c7b0a5932d44b6c9 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 04:51:44 +0000 Subject: [PATCH 13/49] Roll Perfetto Trace Processor Linux from affdce7627b1 to 35f78f4a4562 https://android.googlesource.com/platform/external/perfetto.git/+log/affdce7627b1..35f78f4a4562 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/perfetto-trace-processor-linux-chromium Please CC perfetto-bugs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Tbr: perfetto-bugs@google.com Change-Id: Id596337ce6e29f5e111e254be26da00dd60c7086 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2618909 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841787} --- tools/perf/core/perfetto_binary_roller/binary_deps.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/perf/core/perfetto_binary_roller/binary_deps.json b/tools/perf/core/perfetto_binary_roller/binary_deps.json index c23c59c877f951..9009c67396d7f9 100644 --- a/tools/perf/core/perfetto_binary_roller/binary_deps.json +++ b/tools/perf/core/perfetto_binary_roller/binary_deps.json @@ -9,8 +9,8 @@ "remote_path": "perfetto_binaries/trace_processor_shell/mac/61125414310ae1df95fc378cd432071283783a81/trace_processor_shell" }, "linux": { - "hash": "fb9c4022762e5cdcfa36d7d23b457ec7f179bec2", - "remote_path": "perfetto_binaries/trace_processor_shell/linux/affdce7627b1030441a19608a1bcb321190786da/trace_processor_shell" + "hash": "4910c2bfbdf2ab1a735e227bb0d279ccdad8d311", + "remote_path": "perfetto_binaries/trace_processor_shell/linux/35f78f4a4562f61cde3b096492628e1d47acb04e/trace_processor_shell" } }, "power_profile.sql": { From 014272d01eab04c58280424c031c643c4a82055f Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 04:57:26 +0000 Subject: [PATCH 14/49] Roll DevTools Frontend from 3be8a6b93877 to ba12c16f393a (1 revision) https://chromium.googlesource.com/devtools/devtools-frontend.git/+log/3be8a6b93877..ba12c16f393a 2021-01-09 devtools-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Update DevTools DEPS. If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/devtools-frontend-chromium Please CC devtools-waterfall-sheriff-onduty@grotations.appspotmail.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: devtools-waterfall-sheriff-onduty@grotations.appspotmail.com Change-Id: Ic79d4af2ed7c3dfcadc1001a65af77704b9c3ea8 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619259 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841788} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 14bcf543937074..bccf90c64e3fcd 100644 --- a/DEPS +++ b/DEPS @@ -274,7 +274,7 @@ vars = { # Three lines of non-changing comments so that # the commit queue can handle CLs rolling devtools-frontend # and whatever else without interference from each other. - 'devtools_frontend_revision': '3be8a6b93877d993647ad38ca1cb9dbc9c2d139b', + 'devtools_frontend_revision': 'ba12c16f393a978fe8d3f7ad9d9db4d3ad1125b0', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling libprotobuf-mutator # and whatever else without interference from each other. From ed3b775048074e28f5ff8ce3e0600c1d79dd624d Mon Sep 17 00:00:00 2001 From: Harvey Yang Date: Sat, 9 Jan 2021 05:12:39 +0000 Subject: [PATCH 15/49] accelerometer: Fix TryScheduleInitialize bug Fixes <2079112a1017>: accelerometer: Refactor AccelerometerFileReader TryScheduleInitialize should be run in |ui_task_runner_| instead of |blocking_task_runner_|. BUG=chromium:1164449 TEST=unit tests Change-Id: If242c2ba3e20f88db5f94261621d671629a786ea Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2617414 Reviewed-by: Ahmed Fakhry Commit-Queue: Cheng-Hao Yang Cr-Commit-Position: refs/heads/master@{#841789} --- ash/accelerometer/accelerometer_file_reader.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ash/accelerometer/accelerometer_file_reader.cc b/ash/accelerometer/accelerometer_file_reader.cc index 79feba2f625b5c..294e2a107ea607 100644 --- a/ash/accelerometer/accelerometer_file_reader.cc +++ b/ash/accelerometer/accelerometer_file_reader.cc @@ -373,7 +373,7 @@ void AccelerometerFileReader::SetStatesWithInitializationResult( // If we haven't yet passed the timeout cutoff, try this again. This will // be scheduled at the same rate as reading. if (base::TimeTicks::Now() < initialization_timeout_) { - blocking_task_runner_->PostDelayedTask( + ui_task_runner_->PostDelayedTask( FROM_HERE, base::BindOnce(&AccelerometerFileReader::TryScheduleInitialize, this), From cc13e91d785ee99840bc81ae41998f0eec76287a Mon Sep 17 00:00:00 2001 From: chromium-internal-autoroll Date: Sat, 9 Jan 2021 05:36:59 +0000 Subject: [PATCH 16/49] Roll src-internal from acbec5a9fae5 to fe85da141e77 (1 revision) https://chrome-internal.googlesource.com/chrome/src-internal.git/+log/acbec5a9fae5..fe85da141e77 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://skia-autoroll.corp.goog/r/src-internal-chromium-autoroll Please CC on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:linux-chromeos-chrome Bug: None Tbr: Change-Id: I20762f0ec685c959f07be359856023cd6567a02f Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619263 Reviewed-by: chromium-internal-autoroll Commit-Queue: chromium-internal-autoroll Cr-Commit-Position: refs/heads/master@{#841790} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index bccf90c64e3fcd..4fbb11fa70119c 100644 --- a/DEPS +++ b/DEPS @@ -1590,7 +1590,7 @@ deps = { Var('chromium_git') + '/v8/v8.git' + '@' + Var('v8_revision'), 'src-internal': { - 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@acbec5a9fae5b9e9dd16e526bb97457c2b0ce0e0', + 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@fe85da141e7777f28edb8272e184334a551e9220', 'condition': 'checkout_src_internal', }, From e76a80443d8553595b51c387bfc161fbc3cb25b8 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 05:47:39 +0000 Subject: [PATCH 17/49] Roll Perfetto Trace Processor Mac from 61125414310a to 35f78f4a4562 https://android.googlesource.com/platform/external/perfetto.git/+log/61125414310a..35f78f4a4562 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/perfetto-trace-processor-mac-chromium Please CC perfetto-bugs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Tbr: perfetto-bugs@google.com Change-Id: I19169f6ae0d2883ed012d196ca46bced2c54a768 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619264 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841791} --- tools/perf/core/perfetto_binary_roller/binary_deps.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/perf/core/perfetto_binary_roller/binary_deps.json b/tools/perf/core/perfetto_binary_roller/binary_deps.json index 9009c67396d7f9..ec0cd5f2f0e1a9 100644 --- a/tools/perf/core/perfetto_binary_roller/binary_deps.json +++ b/tools/perf/core/perfetto_binary_roller/binary_deps.json @@ -5,8 +5,8 @@ "remote_path": "perfetto_binaries/trace_processor_shell/win/affdce7627b1030441a19608a1bcb321190786da/trace_processor_shell.exe" }, "mac": { - "hash": "6f7e8527130f15e840fbc7a20e0d3e069c414327", - "remote_path": "perfetto_binaries/trace_processor_shell/mac/61125414310ae1df95fc378cd432071283783a81/trace_processor_shell" + "hash": "ad7587bcfdd72883c1e1b1596ddec4f81bbf7736", + "remote_path": "perfetto_binaries/trace_processor_shell/mac/35f78f4a4562f61cde3b096492628e1d47acb04e/trace_processor_shell" }, "linux": { "hash": "4910c2bfbdf2ab1a735e227bb0d279ccdad8d311", From 7d869c841c5ef98bdfcce67abf52923d12c8bb99 Mon Sep 17 00:00:00 2001 From: Greg Guterman Date: Sat, 9 Jan 2021 06:00:49 +0000 Subject: [PATCH 18/49] Fix docs file name and add main() failure mode Bug: 1145216 Change-Id: I9479c0e088ac4acf115f9da14e499268c9576504 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2618559 Reviewed-by: Nodir Turakulov Commit-Queue: Nodir Turakulov Auto-Submit: Gregory Guterman Cr-Commit-Position: refs/heads/master@{#841792} --- ...on-test-selection.md => regression_test_selection.md} | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) rename docs/testing/{regression-test-selection.md => regression_test_selection.md} (75%) diff --git a/docs/testing/regression-test-selection.md b/docs/testing/regression_test_selection.md similarity index 75% rename from docs/testing/regression-test-selection.md rename to docs/testing/regression_test_selection.md index 4f1417bc6e3f23..1ceb7e0aaccf5b 100644 --- a/docs/testing/regression-test-selection.md +++ b/docs/testing/regression_test_selection.md @@ -25,11 +25,16 @@ Test skipping happens at the GN level in [source_set](/build/config/BUILDCONFIG.gn) and [test](/testing/test.gni) GN targets. -## Known failure mode +## Known failure modes -Consider a test file A that contains unit tests, as well as some variables +There are not known to be many instances of these failure modes in the codebase. +Those that are known are never excluded by our model. + +- **Shared state in test files**: Consider a test file A that contains unit tests, as well as some variables used in another file B. When our RTS strategy excludes A, but not B, a compilation error will occur. +- **main() defined in test files**: A test file contains tests and the `main()` function for the entire suite. +When it is excluded, the whole suite fails to compile. ## Design Docs From 29feeb1d9b3f7ec5741dd8d62d6ea7fdc222101f Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 06:01:49 +0000 Subject: [PATCH 19/49] Roll ANGLE from 767af74ec9b6 to 6e909d940753 (3 revisions) https://chromium.googlesource.com/angle/angle.git/+log/767af74ec9b6..6e909d940753 2021-01-09 timvp@google.com Tests: Add Saint Seiya Awakening: Knights of the Zodiac trace 2021-01-09 syoussefi@chromium.org Vulkan: Add a perf test for pre-rotation code injection 2021-01-09 syoussefi@chromium.org Fix translator fuzzer If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/angle-chromium-autoroll Please CC ianelliott@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win-asan;luci.chromium.try:win_optional_gpu_tests_rel;luci.chromium.try:linux-swangle-try-x64;luci.chromium.try:win-swangle-try-x86 Bug: chromium:1164448 Tbr: ianelliott@google.com Test: Test: angle_perftests --gtest_filter=TracePerfTest.Run/*saint_seiya_awakening* Change-Id: I7616b660a28bb8714e93b040b89367d876e41155 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619262 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841793} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 4fbb11fa70119c..744dd79a0e3dcb 100644 --- a/DEPS +++ b/DEPS @@ -211,7 +211,7 @@ vars = { # Three lines of non-changing comments so that # the commit queue can handle CLs rolling ANGLE # and whatever else without interference from each other. - 'angle_revision': '767af74ec9b6199fdf6b03685d2e1587a22ff3f4', + 'angle_revision': '6e909d9407534e3b7e4eb42e49941256a14066b5', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling SwiftShader # and whatever else without interference from each other. From 193500e667506c6df61c461c1e1625193974206f Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 06:03:39 +0000 Subject: [PATCH 20/49] Roll Skia from ae562bd177d9 to 5045de33e754 (2 revisions) https://skia.googlesource.com/skia.git/+log/ae562bd177d9..5045de33e754 2021-01-09 csmartdalton@google.com Move GrTriangulator nested struct defs into the .h file 2021-01-09 nifong@google.com fix a few failing gm tests in wasm If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/skia-autoroll Please CC johnstiles@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux-blink-rel;luci.chromium.try:linux-chromeos-compile-dbg;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Cq-Do-Not-Cancel-Tryjobs: true Bug: None Tbr: johnstiles@google.com Change-Id: I5ed0fa6d5a47ac5540f87530ee4cecc5706b6c05 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619265 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841794} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 744dd79a0e3dcb..064357525e1aa9 100644 --- a/DEPS +++ b/DEPS @@ -199,7 +199,7 @@ vars = { # Three lines of non-changing comments so that # the commit queue can handle CLs rolling Skia # and whatever else without interference from each other. - 'skia_revision': 'ae562bd177d9503d3ade8055f7d36f65dc68fd8c', + 'skia_revision': '5045de33e75455e6e149548f3e35bdec87d01086', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling V8 # and whatever else without interference from each other. From 4ac56ab9f87d8f21345d795ba114095cfa7e0e5f Mon Sep 17 00:00:00 2001 From: David Tseng Date: Sat, 9 Jan 2021 06:04:19 +0000 Subject: [PATCH 21/49] Cleanup accessibility extension helper Mostly a follow up to https://chromium-review.googlesource.com/c/chromium/src/+/2613726 R=dmazzoni@chromium.org AX-Relnotes: n/a Change-Id: I12ba5e9dc3fba9ac529712190f26ae209528fed7 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2617230 Commit-Queue: David Tseng Reviewed-by: Dominic Mazzoni Cr-Commit-Position: refs/heads/master@{#841795} --- .../testing/chromevox_webui_test_base.js | 9 +++++++-- .../accessibility/chromevox/testing/common.js | 15 -------------- .../accessibility/common/testing/common.js | 20 +++++++++++++++++++ .../common/testing/e2e_test_base.js | 18 ++--------------- .../accessibility/select_to_speak/BUILD.gn | 1 + .../testing/chromevox_unittest_base.js | 4 +++- 6 files changed, 33 insertions(+), 34 deletions(-) create mode 100644 chrome/browser/resources/chromeos/accessibility/common/testing/common.js diff --git a/chrome/browser/resources/chromeos/accessibility/chromevox/testing/chromevox_webui_test_base.js b/chrome/browser/resources/chromeos/accessibility/chromevox/testing/chromevox_webui_test_base.js index 388f9730def396..e7ea06527a1321 100644 --- a/chrome/browser/resources/chromeos/accessibility/chromevox/testing/chromevox_webui_test_base.js +++ b/chrome/browser/resources/chromeos/accessibility/chromevox/testing/chromevox_webui_test_base.js @@ -2,8 +2,13 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -GEN_INCLUDE(['../../common/testing/assert_additions.js']); -GEN_INCLUDE(['common.js', '../../common/testing/callback_helper.js']); +// clang-format off +GEN_INCLUDE([ + '../../common/testing/assert_additions.js', + '../../common/testing/common.js', + '../../common/testing/callback_helper.js' +]); +// clang-format on /** * Base test fixture for ChromeVox webui tests. Run in a Blink renderer. diff --git a/chrome/browser/resources/chromeos/accessibility/chromevox/testing/common.js b/chrome/browser/resources/chromeos/accessibility/chromevox/testing/common.js index eaa3c5b9f1ee03..bcaa352419aa37 100644 --- a/chrome/browser/resources/chromeos/accessibility/chromevox/testing/common.js +++ b/chrome/browser/resources/chromeos/accessibility/chromevox/testing/common.js @@ -99,18 +99,3 @@ class TestUtils { }); } } - -/** - * Similar to |TEST_F|. Generates a test for the given |testFixture|, - * |testName|, and |testFunction|. - * Used this variant when an |isAsync| fixture wants to temporarily mix in an - * sync test. - * @param {string} testFixture Fixture name. - * @param {string} testName Test name. - * @param {function} testFunction The test impl. - */ -function SYNC_TEST_F(testFixture, testName, testFunction) { - TEST_F(testFixture, testName, function() { - this.newCallback(testFunction)(); - }); -} diff --git a/chrome/browser/resources/chromeos/accessibility/common/testing/common.js b/chrome/browser/resources/chromeos/accessibility/common/testing/common.js new file mode 100644 index 00000000000000..242025ad1d3e95 --- /dev/null +++ b/chrome/browser/resources/chromeos/accessibility/common/testing/common.js @@ -0,0 +1,20 @@ +// Copyright 2021 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. + +/** @fileoverview File containing test framework helper functions. */ + +/** + * Similar to |TEST_F|. Generates a test for the given |testFixture|, + * |testName|, and |testFunction|. + * Used this variant when an |isAsync| fixture wants to temporarily mix in a + * sync test. + * @param {string} testFixture Fixture name. + * @param {string} testName Test name. + * @param {function} testFunction The test impl. + */ +function SYNC_TEST_F(testFixture, testName, testFunction) { + TEST_F(testFixture, testName, function() { + this.newCallback(testFunction)(); + }); +} diff --git a/chrome/browser/resources/chromeos/accessibility/common/testing/e2e_test_base.js b/chrome/browser/resources/chromeos/accessibility/common/testing/e2e_test_base.js index f8c710f7ac6755..3f5530029d4b52 100644 --- a/chrome/browser/resources/chromeos/accessibility/common/testing/e2e_test_base.js +++ b/chrome/browser/resources/chromeos/accessibility/common/testing/e2e_test_base.js @@ -2,7 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -GEN_INCLUDE(['assert_additions.js', 'callback_helper.js', 'doc_utils.js']); +GEN_INCLUDE( + ['assert_additions.js', 'callback_helper.js', 'common.js', 'doc_utils.js']); /** * Base test fixture for end to end tests (tests that need a full extension @@ -167,18 +168,3 @@ E2ETestBase.prototype.isAsync = true; * No UI in the background context. */ E2ETestBase.prototype.runAccessibilityChecks = false; - -/** - * Similar to |TEST_F|. Generates a test for the given |testFixture|, - * |testName|, and |testFunction|. - * Used this variant when an |isAsync| fixture wants to temporarily mix in an - * sync test. - * @param {string} testFixture Fixture name. - * @param {string} testName Test name. - * @param {function} testFunction The test impl. - */ -function SYNC_TEST_F(testFixture, testName, testFunction) { - TEST_F(testFixture, testName, function() { - this.newCallback(testFunction)(); - }); -} diff --git a/chrome/browser/resources/chromeos/accessibility/select_to_speak/BUILD.gn b/chrome/browser/resources/chromeos/accessibility/select_to_speak/BUILD.gn index 5a312efe5c2712..9f2f43658fbcca 100644 --- a/chrome/browser/resources/chromeos/accessibility/select_to_speak/BUILD.gn +++ b/chrome/browser/resources/chromeos/accessibility/select_to_speak/BUILD.gn @@ -77,6 +77,7 @@ source_set("browser_tests") { js2gtest("select_to_speak_extjs_tests") { test_type = "extension" sources = [ + # These are end-to-end tests. "paragraph_utils_overflow_test.js", "select_to_speak_keystroke_selection_test.js", "select_to_speak_mouse_selection_test.js", diff --git a/ui/accessibility/extensions/chromevoxclassic/testing/chromevox_unittest_base.js b/ui/accessibility/extensions/chromevoxclassic/testing/chromevox_unittest_base.js index 01fcc5b6bdbd9d..884d376cce21aa 100644 --- a/ui/accessibility/extensions/chromevoxclassic/testing/chromevox_unittest_base.js +++ b/ui/accessibility/extensions/chromevoxclassic/testing/chromevox_unittest_base.js @@ -10,7 +10,9 @@ GEN_INCLUDE([ '//chrome/browser/resources/chromeos/accessibility/chromevox/testing/' + 'common.js', '//chrome/browser/resources/chromeos/accessibility/common/testing/' + - 'callback_helper.js' + 'callback_helper.js', + '//chrome/browser/resources/chromeos/accessibility/common/testing/' + + 'common.js' ]); /** From f2aedf12c9d0c4eb2a8c101546055c63852927f4 Mon Sep 17 00:00:00 2001 From: James Cook Date: Sat, 9 Jan 2021 06:36:48 +0000 Subject: [PATCH 22/49] Change line endings in lacros filter files from CRLF to LF This is consistent with all the other filter files, and Chromium source files in general. Bug: none Change-Id: I4ab7e7f24d7102c3fab12e772e52ded340245741 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2618962 Auto-Submit: James Cook Commit-Queue: Sven Zheng Reviewed-by: Sven Zheng Cr-Commit-Position: refs/heads/master@{#841796} --- .../filters/lacros.browser_tests.filter | 436 +++++++++--------- .../lacros.content_browsertests.filter | 12 +- .../lacros.interactive_ui_tests.filter | 112 ++--- .../buildbot/filters/lacros.unit_tests.filter | 12 +- 4 files changed, 286 insertions(+), 286 deletions(-) diff --git a/testing/buildbot/filters/lacros.browser_tests.filter b/testing/buildbot/filters/lacros.browser_tests.filter index b724e06a87056a..db6d636b9b881d 100644 --- a/testing/buildbot/filters/lacros.browser_tests.filter +++ b/testing/buildbot/filters/lacros.browser_tests.filter @@ -1,218 +1,218 @@ -# TODO(crbug.com/1111979) Enable all tests on lacros. --AccessContextAuditBrowserTest.CheckSessionOnly --AccessContextAuditBrowserTest.PRE_RemoveRecords --AccessContextAuditBrowserTest.RemoveRecords --AdsPageLoadMetricsObserverBrowserTest.PageAdDensityIgnoreDisplayNoneFrame --AdsPageLoadMetricsObserverBrowserTest.PageAdDensityMultipleFrames --AdsPageLoadMetricsObserverBrowserTest.PageAdDensityRecordsPageMax --All/DownloadReferrerPolicyTest.SaveLinkAsReferrerPolicy* --All/HostedAppProcessModelTest.BackgroundPageWithAppCoveringDifferentSites/0 --All/HostedOrWebAppTest.CtrlClickLink/HostedApp --All/HostedOrWebAppTest.CtrlClickLink/WebApp --All/HostedOrWebAppTest.OpenLinkInNewTab* --All/IntentPickerBubbleViewBrowserTest.NavigationInAppWindowToInScopeLinkDoesNotShowIntentPicker* --All/MultiActionAPITest.PopupCreation/1 --All/MultiActionAPITest.SessionStorageDoesNotPersistBetweenOpenings/1 --All/PopupBrowserTest.MoveClampedToCurrentDisplay* --All/SystemWebAppLinkCaptureBrowserTest.IncognitoBrowserOmniboxLinkCapture* --All/SystemWebAppLinkCaptureBrowserTest.WindowOpenFromOtherSWA* --AppViewTest.KillGuestCommunicatingWithWrongAppView --AppViewTest.KillGuestWithInvalidInstanceID --AudioFocusWebContentsObserverBrowserTest.PlatformAppHasDifferentAudioFocus --AutofillProviderBrowserTest.FrameDetachedOnFormlessSubmission --AutofillProviderBrowserTestWithSkipFlagOn.InferredLabelChangeNotImpactFormComparing --AutomationApiTest.ForceLayout --AutomationManagerAuraBrowserTest.EventFromAction --AutoplayExtensionBrowserTest.AutoplayAllowedInIframe --BluetoothApiTest.* --BluetoothLowEnergyApiTest.* --BluetoothPrivateApiTest.* --BrowserActionApiTest.BrowserActionOpenPopupOnPopup --BrowserNavigatorTest.NavigateFromNoTabStripWindowToOptions --BrowserNavigatorTest.NavigateFromNTPToOptionsPageInSameTab --BrowserNavigatorTest.NavigateFromNTPToOptionsSingleton --BrowserNavigatorTest.SwitchToTabLatestWindow --BrowserTest.GetSizeForNewRenderView --BrowserTest.RestorePinnedTabs --BrowserViewTest.DevToolsUpdatesBrowserWindow --BrowserViewTest.F6CyclesThroughCaptionBubbleToo --BrowserViewTest.GetAccessibleTabModalDialogTitle --BrowserViewTest.GetAccessibleTabModalDialogTree --BrowsingDataRemoverBrowserTest.StorageRemovedFromDisk --CaptivePortalBrowserTest.SecureDnsErrorTriggersCheck --CaptivePortalBrowserTest.SlowLoadSecureDnsErrorAfterLogin --CaptivePortalBrowserTest.SlowLoadSecureDnsErrorWithCaptivePortal --ChromeSitePerProcessTest.PopupWindowFocus --ClientHintsBrowserTest.ClientHintsClearSession --ClipboardApiTest.Extension --ContentIndexTest.MetricsCollected --ContentSettingsTest.AllowCookiesForASessionUsingExceptions --ContentVerifierTest.PolicyCorrupted --ContextMenuBrowserTest.* --CrComponentsCertificateManagerV3Test.All --CrComponentsManagedFootnoteV3Test.All --CreativeOriginAdsPageLoadMetricsObserverBrowserTest.CreativeOriginStatusWithThrottlingNestedThrottled --CrSettingsAdvancedPageV3Test.Load --CrSettingsBasicPageV3Test.All --CrSettingsClearBrowsingDataV3Test.ClearBrowsingDataAllPlatforms --CrSettingsDownloadsPageV3Test.All --CrSettingsLanguagesPageV3Test.AddLanguagesDialog --CrSettingsLanguagesPageV3Test.LanguageMenu --CrSettingsLanguagesPageV3Test.Spellcheck --CrSettingsLanguagesV3Test.All --CrSettingsMainPageV3Test.MainPageV3 --CrSettingsRouteV3Test.DynamicParameters --CrSettingsRouteV3Test.NonExistentRoute --CrSettingsSiteDetailsV3Test.SiteDetails --CrSettingsSiteListEntryV3Test.All --CrSettingsSyncAccountControlV3Test.All --CustomTabBarViewBrowserTest.BackToAppButtonIsNotVisibleInOutOfScopePopups --CustomTabBarViewBrowserTest.IsNotCreatedInPopup --CustomTabBarViewBrowserTest.RightClickMenuShowsCopyUrl --DeclarativeContentApiTest.RulesPersistence --DeepScanningDialogDelegateBlockLargeFileTransferBrowserTest.Test/3 --DesktopCaptureApiTest.ChooseDesktopMedia --DiceManageAccountBrowserTest.ClearManagedProfileOnStartup --DownloadExtensionTest.DownloadExtensionTest_SearchEmptyQuery --DownloadTest.DownloadTest_History --DownloadWakeLockTest.WakeLockAcquireAndCancel --ExtensionLoadingTest.KeepAliveWithDevToolsOpenOnReload --ExtensionManagementApiBrowserTest.GetAllIncludesTerminated --ExtensionManagementApiEscalationTest.SetEnabled --ExtensionOverrideTest.SubframeNavigationInOverridenNTPDoesNotAffectFocus --ExtensionPreferenceApiTest.Standard --ExtensionsMenuViewBrowserTest.ClickingContextMenuButton --ExtensionWebRequestApiTest.WebSocketRequest --ExtensionWebRequestApiTest.WebSocketRequestAuthRequired --ExternalProtocolDialogBrowserTest.TestFocus --FeedbackTest.AnonymousUser --FeedbackTest.ExtraDiagnostics --FeedbackTest.ShowFeedback --FeedbackTest.ShowFeedbackFromAssistant --FeedbackTest.ShowLoginFeedback --FeedbackTest.SubmissionTest --FindInPageControllerTest.FindMovesOnTabClose_Issue1343052 --FindInPageControllerTest.FindMovesWhenObscuring --FolderUploadConfirmationViewTest.InitiallyFocusesCancel --GlobalErrorBubbleTest.InvokeUi_ExtensionDisabledGlobalError --GlobalErrorBubbleTest.InvokeUi_ExtensionDisabledGlobalErrorRemote --GlobalErrorBubbleTest.InvokeUi_ExternalInstallBubbleAlert --IconLoaderBrowserTest.LoadGroup --InlineLoginHelperBrowserTest.ForceSigninWithUserManager --KeepAliveDevToolsTest.KeepsAliveUntilBrowserClose --LiteVideoBrowserTest.SimplePlayback --LoadImageBrowserTest.LoadImageWithMap --LocalCardMigrationBrowserTestForNickname.CardIdentifierString/1 --MediaRouterUIBrowserTest.EphemeralToolbarIconForDialog --MediaRouterUIBrowserTest.OpenDialogFromAppMenu --MediaSessionPictureInPictureWindowControllerBrowserTest.PlayPauseButtonVisibility --MediaSessionPictureInPictureWindowControllerBrowserTest.PreviousTrackHandlerCalled --NotificationPermissionContextApiTest.Granted --NtpExtensionBubbleViewBrowserTest.InvokeUi_ntp_override --NtpExtensionBubbleViewBrowserTest.TestControlledNewTabPageMessageBubble --NtpExtensionBubbleViewBrowserTest.TestControlledNewTabPageMessageBubbleLearnMore --OmniboxPopupContentsViewTest.ClickOmnibox --OmniboxPopupContentsViewTest.PopupMatchesLocationBarBackground --OutOfProcessPPAPITest.FlashClipboard --OutOfProcessPPAPITest.NetAddress --OutOfProcessPPAPITest.Printing --OutOfProcessPPAPITest.URLRequest_CreateAndIsURLRequestInfo --PageInfoBubbleViewBrowserTest.FocusDoesNotReturnToContentsOnReloadPrompt --PageInfoBubbleViewBrowserTest.FocusReturnsToContentOnClose --PageLoadMetricsBrowserTest.MainFrameIntersectionsMainFrame --PaymentRequestCompletionStatusMetricsTest.UserAborted_TabClosed --PaymentRequestCreditCardEditorTest.EditingExpiredCard --PaymentRequestShippingAddressEditorTest.FocusFirstField_Name --PaymentRequestShippingAddressEditorTest.FocusFirstInvalidField_NotName --PDFExtensionJSTest.Bookmark/1 --PDFExtensionTestWithTestGuestViewManager* --PermissionRequestManagerWithBackForwardCacheBrowserTest.RequestsForPagesInCacheNotGrouped --PermissionsApiTest.AlwaysAllowed --PictureInPicturePixelComparisonBrowserTest.PlayAndPauseControls --PictureInPictureWindowControllerBrowserTest.* --PopupTrackerBrowserTest.PopupInWindow_IsWindowTrue --PopupTrackerBrowserTest.ShiftClick_HasTracker --PPAPINaClNewlibTest.TrueTypeFont --PPAPINaClPNaClNonSfiTest.TrueTypeFont --PresentationReceiverWindowControllerBrowserTest.CreatesWindow --PreservedWindowPlacement.Test --PrintPreviewDestinationSelectTest.ChangeIconDeprecationWarnings --PrintPreviewDestinationSelectTest.UpdateStatusDeprecationWarnings --PrintPreviewDestinationStoreTest.LoadAndSelectDestination --PrintPreviewModelSettingsAvailabilityTest.All --PrintPreviewModelTest.GetPrintTicket --PrintPreviewModelTest.SetStickySettings --PrintPreviewRestoreStateTest.SaveValues --ProfileHelperTest.OpenNewWindowForProfile --ProfileListDesktopBrowserTest.SwitchToProfile --ProfileManagerBrowserTest.EphemeralProfile --ProfileManagerBrowserTest.SwitchToProfile --RemoteCopyBrowserTest.ImageUrl --RemoteCopyBrowserTest.Text --RemoteCopyBrowserTest.TextThenImageUrl --RunInBackgroundTest.RunInBackgroundBasicTest --RuntimeAPIUpdateTest.TerminatedExtensionUpdateHasCorrectPreviousVersion --SafeBrowsingBlockingPageBrowserTestWithThreatTypeAndIsolationSetting/SafeBrowsingBlockingPageBrowserTest.IframeOptInAndReportThreatDetails/3 --SafeBrowsingBlockingPageWithDelayedWarningsBrowserTest/SafeBrowsingBlockingPageDelayedWarningBrowserTest.JavaScriptDialog_WarningShown/3 --SafeBrowsingNetworkContext/NetworkContextConfigurationBrowserTest.Cache/0 --SaveCardBubbleViewsFullFormBrowserTest.StrikeDatabase_Local_AddStrikeIfBubbleDeclined --SaveCardBubbleViewsFullFormBrowserTestForManageCard.Local_Metrics_AcceptingFootnotePromoManageCards --SaveCardBubbleViewsFullFormBrowserTestForStatusChip.ClickingOnCreditCardIconInStatusChipReshowsBubble --SaveCardBubbleViewsFullFormBrowserTestForStatusChip.CreditCardIconShownInStatusChip --SaveCardBubbleViewsFullFormBrowserTestForStatusChip.Feedback_Success --SaveCardBubbleViewsFullFormBrowserTestForStatusChip.Local_ClickingSaveShowsSigninPromo --SaveCardBubbleViewsFullFormBrowserTestWithAutofillUpstream.StrikeDatabase_Upload_AddStrikeIfBubbleIgnored --SaveCardBubbleViewsFullFormBrowserTestWithAutofillUpstream.Upload_SubmittingFormWithExpirationDateMonthAndCurrentYear --SaveCardBubbleViewsFullFormBrowserTestWithAutofillUpstream.Upload_SubmittingFormWithMissingExpirationDateYearAndWithMonth --SaveCardBubbleViewsSyncTransportFullFormBrowserTest.Upload_TransportMode_RequestedCardholderNameTextfieldIsPrefilledWithFocusName --SearchByImageBrowserTest.ImageSearchWithCorruptImage --SearchByImageBrowserTest.ImageSearchWithValidImage --SecurityStateTabHelperTestWithFormsDangerous.MarkHttpAsWarningAndDangerousOnFormEdits --SerialTest.NavigateWithChooserCrossOrigin --ServiceWorkerAndExtensionsMenu/BrowserActionApiLazyTest.IncognitoBasic/0 --SessionCrashedBubbleViewTest.InvokeUi_SessionCrashedBubble --SessionRestoreTest.RestoredTabsHaveCorrectInitialSize --SettingsA11yAccessibilityV3.Accessibility_* --SettingsA11yBasicV3.Basic_* --SettingsA11yManageProfileV3.ManageProfile_* --SettingsA11yPasswordsV3.Passwords_* --SettingsA11ySignoutV3.Signout_* --SSLUITest.DisplayedContentWithCertErrorsClearedOnNavigation --SSLUITest.InAppTestHTTPSExpiredCertAndPreviouslyProceeded --StartupBrowserCreatorExtensionsCheckupExperimentTest.ExtensionsCheckup --StartupBrowserCreatorTest.RestoreWithNoStartupWindow --SubresourceRedirectBrowserTest.TestBypassOn503LoadShedFailure --TabActivityWatcherTest.AllWindowMetricsArePopulated --TabGroupEditorBubbleViewDialogBrowserTest.InvokeUi_default --TabHoverCardBubbleViewBrowserTest.WidgetNotVisibleOnMousePressAfterTabFocus --TabHoverCardBubbleViewBrowserTest.WidgetVisibleOnKeyPressAfterTabFocus --TabRestoreTest.RestoreWindowBounds --TabSearchBubbleBrowserTest.InvokeUi_default --TabStripDragManagerTest.All --TabStripUIBrowserTest.ActivatingTabClosesEmbedder --TranslateLanguageBrowserTest.LanguageModelLogSucceed --TranslateLanguageBrowserTest.TranslateAndRevert --TranslateLanguageBrowserTestWithTranslateRecentTarget.RecentTargetLanguage --TranslateManagerBrowserTest.PageTranslationTimeoutError --WebAppBrowserTest.CopyURL --WebAppBrowserTest.InScopePWAPopupsHaveCorrectSize --WebAppBrowserTest.OffScopePWAPopupsHaveCorrectSize --WebAppEngagementBrowserTest.CommandLineWindow --WebAppLinkCapturingBrowserTest.AboutBlankNavigationReparented --WebRtcDesktopCaptureBrowserTest.RunsScreenshareFromOneTabToAnother --WebRtcGetDisplayMediaBrowserTestWithPicker.GetDisplayMediaVideo --WebRtcGetDisplayMediaBrowserTestWithPicker.GetDisplayMediaVideoAndAudio --WebViewTest.SelectShowHide --WebViewTest.Shim_TestDisplayNoneWebviewRemoveChild --WelcomeA11y.WelcomeFlow_listitem --WorkerTaskProviderBrowserTest.CreateTasksForMultiProfiles - -# crbug.com/1121486 -# Following tests were flaky. We disable them first until we have time to investigate. --DevToolsExtensionTest.HttpIframeInDevToolsExtensionDevtools --DevToolsSanityTest.* --FindInPageControllerTest.SingleOccurrence --MediaRouterUIBrowserTest.PinAndUnpinToolbarIcon --MultiActionAPITest.PopupCreation/* --PDFExtensionClipboardTest.CombinedShiftArrowPresses --PopupTrackerBrowserTest.ControlClick_HasTracker +# TODO(crbug.com/1111979) Enable all tests on lacros. +-AccessContextAuditBrowserTest.CheckSessionOnly +-AccessContextAuditBrowserTest.PRE_RemoveRecords +-AccessContextAuditBrowserTest.RemoveRecords +-AdsPageLoadMetricsObserverBrowserTest.PageAdDensityIgnoreDisplayNoneFrame +-AdsPageLoadMetricsObserverBrowserTest.PageAdDensityMultipleFrames +-AdsPageLoadMetricsObserverBrowserTest.PageAdDensityRecordsPageMax +-All/DownloadReferrerPolicyTest.SaveLinkAsReferrerPolicy* +-All/HostedAppProcessModelTest.BackgroundPageWithAppCoveringDifferentSites/0 +-All/HostedOrWebAppTest.CtrlClickLink/HostedApp +-All/HostedOrWebAppTest.CtrlClickLink/WebApp +-All/HostedOrWebAppTest.OpenLinkInNewTab* +-All/IntentPickerBubbleViewBrowserTest.NavigationInAppWindowToInScopeLinkDoesNotShowIntentPicker* +-All/MultiActionAPITest.PopupCreation/1 +-All/MultiActionAPITest.SessionStorageDoesNotPersistBetweenOpenings/1 +-All/PopupBrowserTest.MoveClampedToCurrentDisplay* +-All/SystemWebAppLinkCaptureBrowserTest.IncognitoBrowserOmniboxLinkCapture* +-All/SystemWebAppLinkCaptureBrowserTest.WindowOpenFromOtherSWA* +-AppViewTest.KillGuestCommunicatingWithWrongAppView +-AppViewTest.KillGuestWithInvalidInstanceID +-AudioFocusWebContentsObserverBrowserTest.PlatformAppHasDifferentAudioFocus +-AutofillProviderBrowserTest.FrameDetachedOnFormlessSubmission +-AutofillProviderBrowserTestWithSkipFlagOn.InferredLabelChangeNotImpactFormComparing +-AutomationApiTest.ForceLayout +-AutomationManagerAuraBrowserTest.EventFromAction +-AutoplayExtensionBrowserTest.AutoplayAllowedInIframe +-BluetoothApiTest.* +-BluetoothLowEnergyApiTest.* +-BluetoothPrivateApiTest.* +-BrowserActionApiTest.BrowserActionOpenPopupOnPopup +-BrowserNavigatorTest.NavigateFromNoTabStripWindowToOptions +-BrowserNavigatorTest.NavigateFromNTPToOptionsPageInSameTab +-BrowserNavigatorTest.NavigateFromNTPToOptionsSingleton +-BrowserNavigatorTest.SwitchToTabLatestWindow +-BrowserTest.GetSizeForNewRenderView +-BrowserTest.RestorePinnedTabs +-BrowserViewTest.DevToolsUpdatesBrowserWindow +-BrowserViewTest.F6CyclesThroughCaptionBubbleToo +-BrowserViewTest.GetAccessibleTabModalDialogTitle +-BrowserViewTest.GetAccessibleTabModalDialogTree +-BrowsingDataRemoverBrowserTest.StorageRemovedFromDisk +-CaptivePortalBrowserTest.SecureDnsErrorTriggersCheck +-CaptivePortalBrowserTest.SlowLoadSecureDnsErrorAfterLogin +-CaptivePortalBrowserTest.SlowLoadSecureDnsErrorWithCaptivePortal +-ChromeSitePerProcessTest.PopupWindowFocus +-ClientHintsBrowserTest.ClientHintsClearSession +-ClipboardApiTest.Extension +-ContentIndexTest.MetricsCollected +-ContentSettingsTest.AllowCookiesForASessionUsingExceptions +-ContentVerifierTest.PolicyCorrupted +-ContextMenuBrowserTest.* +-CrComponentsCertificateManagerV3Test.All +-CrComponentsManagedFootnoteV3Test.All +-CreativeOriginAdsPageLoadMetricsObserverBrowserTest.CreativeOriginStatusWithThrottlingNestedThrottled +-CrSettingsAdvancedPageV3Test.Load +-CrSettingsBasicPageV3Test.All +-CrSettingsClearBrowsingDataV3Test.ClearBrowsingDataAllPlatforms +-CrSettingsDownloadsPageV3Test.All +-CrSettingsLanguagesPageV3Test.AddLanguagesDialog +-CrSettingsLanguagesPageV3Test.LanguageMenu +-CrSettingsLanguagesPageV3Test.Spellcheck +-CrSettingsLanguagesV3Test.All +-CrSettingsMainPageV3Test.MainPageV3 +-CrSettingsRouteV3Test.DynamicParameters +-CrSettingsRouteV3Test.NonExistentRoute +-CrSettingsSiteDetailsV3Test.SiteDetails +-CrSettingsSiteListEntryV3Test.All +-CrSettingsSyncAccountControlV3Test.All +-CustomTabBarViewBrowserTest.BackToAppButtonIsNotVisibleInOutOfScopePopups +-CustomTabBarViewBrowserTest.IsNotCreatedInPopup +-CustomTabBarViewBrowserTest.RightClickMenuShowsCopyUrl +-DeclarativeContentApiTest.RulesPersistence +-DeepScanningDialogDelegateBlockLargeFileTransferBrowserTest.Test/3 +-DesktopCaptureApiTest.ChooseDesktopMedia +-DiceManageAccountBrowserTest.ClearManagedProfileOnStartup +-DownloadExtensionTest.DownloadExtensionTest_SearchEmptyQuery +-DownloadTest.DownloadTest_History +-DownloadWakeLockTest.WakeLockAcquireAndCancel +-ExtensionLoadingTest.KeepAliveWithDevToolsOpenOnReload +-ExtensionManagementApiBrowserTest.GetAllIncludesTerminated +-ExtensionManagementApiEscalationTest.SetEnabled +-ExtensionOverrideTest.SubframeNavigationInOverridenNTPDoesNotAffectFocus +-ExtensionPreferenceApiTest.Standard +-ExtensionsMenuViewBrowserTest.ClickingContextMenuButton +-ExtensionWebRequestApiTest.WebSocketRequest +-ExtensionWebRequestApiTest.WebSocketRequestAuthRequired +-ExternalProtocolDialogBrowserTest.TestFocus +-FeedbackTest.AnonymousUser +-FeedbackTest.ExtraDiagnostics +-FeedbackTest.ShowFeedback +-FeedbackTest.ShowFeedbackFromAssistant +-FeedbackTest.ShowLoginFeedback +-FeedbackTest.SubmissionTest +-FindInPageControllerTest.FindMovesOnTabClose_Issue1343052 +-FindInPageControllerTest.FindMovesWhenObscuring +-FolderUploadConfirmationViewTest.InitiallyFocusesCancel +-GlobalErrorBubbleTest.InvokeUi_ExtensionDisabledGlobalError +-GlobalErrorBubbleTest.InvokeUi_ExtensionDisabledGlobalErrorRemote +-GlobalErrorBubbleTest.InvokeUi_ExternalInstallBubbleAlert +-IconLoaderBrowserTest.LoadGroup +-InlineLoginHelperBrowserTest.ForceSigninWithUserManager +-KeepAliveDevToolsTest.KeepsAliveUntilBrowserClose +-LiteVideoBrowserTest.SimplePlayback +-LoadImageBrowserTest.LoadImageWithMap +-LocalCardMigrationBrowserTestForNickname.CardIdentifierString/1 +-MediaRouterUIBrowserTest.EphemeralToolbarIconForDialog +-MediaRouterUIBrowserTest.OpenDialogFromAppMenu +-MediaSessionPictureInPictureWindowControllerBrowserTest.PlayPauseButtonVisibility +-MediaSessionPictureInPictureWindowControllerBrowserTest.PreviousTrackHandlerCalled +-NotificationPermissionContextApiTest.Granted +-NtpExtensionBubbleViewBrowserTest.InvokeUi_ntp_override +-NtpExtensionBubbleViewBrowserTest.TestControlledNewTabPageMessageBubble +-NtpExtensionBubbleViewBrowserTest.TestControlledNewTabPageMessageBubbleLearnMore +-OmniboxPopupContentsViewTest.ClickOmnibox +-OmniboxPopupContentsViewTest.PopupMatchesLocationBarBackground +-OutOfProcessPPAPITest.FlashClipboard +-OutOfProcessPPAPITest.NetAddress +-OutOfProcessPPAPITest.Printing +-OutOfProcessPPAPITest.URLRequest_CreateAndIsURLRequestInfo +-PageInfoBubbleViewBrowserTest.FocusDoesNotReturnToContentsOnReloadPrompt +-PageInfoBubbleViewBrowserTest.FocusReturnsToContentOnClose +-PageLoadMetricsBrowserTest.MainFrameIntersectionsMainFrame +-PaymentRequestCompletionStatusMetricsTest.UserAborted_TabClosed +-PaymentRequestCreditCardEditorTest.EditingExpiredCard +-PaymentRequestShippingAddressEditorTest.FocusFirstField_Name +-PaymentRequestShippingAddressEditorTest.FocusFirstInvalidField_NotName +-PDFExtensionJSTest.Bookmark/1 +-PDFExtensionTestWithTestGuestViewManager* +-PermissionRequestManagerWithBackForwardCacheBrowserTest.RequestsForPagesInCacheNotGrouped +-PermissionsApiTest.AlwaysAllowed +-PictureInPicturePixelComparisonBrowserTest.PlayAndPauseControls +-PictureInPictureWindowControllerBrowserTest.* +-PopupTrackerBrowserTest.PopupInWindow_IsWindowTrue +-PopupTrackerBrowserTest.ShiftClick_HasTracker +-PPAPINaClNewlibTest.TrueTypeFont +-PPAPINaClPNaClNonSfiTest.TrueTypeFont +-PresentationReceiverWindowControllerBrowserTest.CreatesWindow +-PreservedWindowPlacement.Test +-PrintPreviewDestinationSelectTest.ChangeIconDeprecationWarnings +-PrintPreviewDestinationSelectTest.UpdateStatusDeprecationWarnings +-PrintPreviewDestinationStoreTest.LoadAndSelectDestination +-PrintPreviewModelSettingsAvailabilityTest.All +-PrintPreviewModelTest.GetPrintTicket +-PrintPreviewModelTest.SetStickySettings +-PrintPreviewRestoreStateTest.SaveValues +-ProfileHelperTest.OpenNewWindowForProfile +-ProfileListDesktopBrowserTest.SwitchToProfile +-ProfileManagerBrowserTest.EphemeralProfile +-ProfileManagerBrowserTest.SwitchToProfile +-RemoteCopyBrowserTest.ImageUrl +-RemoteCopyBrowserTest.Text +-RemoteCopyBrowserTest.TextThenImageUrl +-RunInBackgroundTest.RunInBackgroundBasicTest +-RuntimeAPIUpdateTest.TerminatedExtensionUpdateHasCorrectPreviousVersion +-SafeBrowsingBlockingPageBrowserTestWithThreatTypeAndIsolationSetting/SafeBrowsingBlockingPageBrowserTest.IframeOptInAndReportThreatDetails/3 +-SafeBrowsingBlockingPageWithDelayedWarningsBrowserTest/SafeBrowsingBlockingPageDelayedWarningBrowserTest.JavaScriptDialog_WarningShown/3 +-SafeBrowsingNetworkContext/NetworkContextConfigurationBrowserTest.Cache/0 +-SaveCardBubbleViewsFullFormBrowserTest.StrikeDatabase_Local_AddStrikeIfBubbleDeclined +-SaveCardBubbleViewsFullFormBrowserTestForManageCard.Local_Metrics_AcceptingFootnotePromoManageCards +-SaveCardBubbleViewsFullFormBrowserTestForStatusChip.ClickingOnCreditCardIconInStatusChipReshowsBubble +-SaveCardBubbleViewsFullFormBrowserTestForStatusChip.CreditCardIconShownInStatusChip +-SaveCardBubbleViewsFullFormBrowserTestForStatusChip.Feedback_Success +-SaveCardBubbleViewsFullFormBrowserTestForStatusChip.Local_ClickingSaveShowsSigninPromo +-SaveCardBubbleViewsFullFormBrowserTestWithAutofillUpstream.StrikeDatabase_Upload_AddStrikeIfBubbleIgnored +-SaveCardBubbleViewsFullFormBrowserTestWithAutofillUpstream.Upload_SubmittingFormWithExpirationDateMonthAndCurrentYear +-SaveCardBubbleViewsFullFormBrowserTestWithAutofillUpstream.Upload_SubmittingFormWithMissingExpirationDateYearAndWithMonth +-SaveCardBubbleViewsSyncTransportFullFormBrowserTest.Upload_TransportMode_RequestedCardholderNameTextfieldIsPrefilledWithFocusName +-SearchByImageBrowserTest.ImageSearchWithCorruptImage +-SearchByImageBrowserTest.ImageSearchWithValidImage +-SecurityStateTabHelperTestWithFormsDangerous.MarkHttpAsWarningAndDangerousOnFormEdits +-SerialTest.NavigateWithChooserCrossOrigin +-ServiceWorkerAndExtensionsMenu/BrowserActionApiLazyTest.IncognitoBasic/0 +-SessionCrashedBubbleViewTest.InvokeUi_SessionCrashedBubble +-SessionRestoreTest.RestoredTabsHaveCorrectInitialSize +-SettingsA11yAccessibilityV3.Accessibility_* +-SettingsA11yBasicV3.Basic_* +-SettingsA11yManageProfileV3.ManageProfile_* +-SettingsA11yPasswordsV3.Passwords_* +-SettingsA11ySignoutV3.Signout_* +-SSLUITest.DisplayedContentWithCertErrorsClearedOnNavigation +-SSLUITest.InAppTestHTTPSExpiredCertAndPreviouslyProceeded +-StartupBrowserCreatorExtensionsCheckupExperimentTest.ExtensionsCheckup +-StartupBrowserCreatorTest.RestoreWithNoStartupWindow +-SubresourceRedirectBrowserTest.TestBypassOn503LoadShedFailure +-TabActivityWatcherTest.AllWindowMetricsArePopulated +-TabGroupEditorBubbleViewDialogBrowserTest.InvokeUi_default +-TabHoverCardBubbleViewBrowserTest.WidgetNotVisibleOnMousePressAfterTabFocus +-TabHoverCardBubbleViewBrowserTest.WidgetVisibleOnKeyPressAfterTabFocus +-TabRestoreTest.RestoreWindowBounds +-TabSearchBubbleBrowserTest.InvokeUi_default +-TabStripDragManagerTest.All +-TabStripUIBrowserTest.ActivatingTabClosesEmbedder +-TranslateLanguageBrowserTest.LanguageModelLogSucceed +-TranslateLanguageBrowserTest.TranslateAndRevert +-TranslateLanguageBrowserTestWithTranslateRecentTarget.RecentTargetLanguage +-TranslateManagerBrowserTest.PageTranslationTimeoutError +-WebAppBrowserTest.CopyURL +-WebAppBrowserTest.InScopePWAPopupsHaveCorrectSize +-WebAppBrowserTest.OffScopePWAPopupsHaveCorrectSize +-WebAppEngagementBrowserTest.CommandLineWindow +-WebAppLinkCapturingBrowserTest.AboutBlankNavigationReparented +-WebRtcDesktopCaptureBrowserTest.RunsScreenshareFromOneTabToAnother +-WebRtcGetDisplayMediaBrowserTestWithPicker.GetDisplayMediaVideo +-WebRtcGetDisplayMediaBrowserTestWithPicker.GetDisplayMediaVideoAndAudio +-WebViewTest.SelectShowHide +-WebViewTest.Shim_TestDisplayNoneWebviewRemoveChild +-WelcomeA11y.WelcomeFlow_listitem +-WorkerTaskProviderBrowserTest.CreateTasksForMultiProfiles + +# crbug.com/1121486 +# Following tests were flaky. We disable them first until we have time to investigate. +-DevToolsExtensionTest.HttpIframeInDevToolsExtensionDevtools +-DevToolsSanityTest.* +-FindInPageControllerTest.SingleOccurrence +-MediaRouterUIBrowserTest.PinAndUnpinToolbarIcon +-MultiActionAPITest.PopupCreation/* +-PDFExtensionClipboardTest.CombinedShiftArrowPresses +-PopupTrackerBrowserTest.ControlClick_HasTracker diff --git a/testing/buildbot/filters/lacros.content_browsertests.filter b/testing/buildbot/filters/lacros.content_browsertests.filter index bf84e3e488c587..81c99ff9f1ced9 100644 --- a/testing/buildbot/filters/lacros.content_browsertests.filter +++ b/testing/buildbot/filters/lacros.content_browsertests.filter @@ -1,6 +1,6 @@ - -# TODO(crbug.com/1111979) Enable all tests on lacros. --OutOfProcessPPAPITest.TrueTypeFont - -# Following tests are flaky. --All/WebContentsVideoCaptureDeviceBrowserTestP.CapturesContentChanges* + +# TODO(crbug.com/1111979) Enable all tests on lacros. +-OutOfProcessPPAPITest.TrueTypeFont + +# Following tests are flaky. +-All/WebContentsVideoCaptureDeviceBrowserTestP.CapturesContentChanges* diff --git a/testing/buildbot/filters/lacros.interactive_ui_tests.filter b/testing/buildbot/filters/lacros.interactive_ui_tests.filter index 17a4192c1ef9d6..0e3b4a21ce5434 100644 --- a/testing/buildbot/filters/lacros.interactive_ui_tests.filter +++ b/testing/buildbot/filters/lacros.interactive_ui_tests.filter @@ -1,56 +1,56 @@ -# TODO(crbug.com/1111979) Enable all tests on lacros. --AppWindowInteractiveTest.TestFullscreen --AppWindowTest* --BookmarkBarViewTest* --BrowserActionInteractiveTest.OpenPopupOnPopup --BrowserActionInteractiveTest.TestOpenPopup --BrowserActionInteractiveTest.TestOpenPopupIncognito --BrowserFocusTest.BackgroundBrowserDontStealFocus --ChromeVisibilityObserverInteractiveTest.VisibilityTest --ClipboardTest/PlatformClipboardTest.ReadAvailablePlatformSpecificFormatNamesTest --CrossSiteSubframe/DragAndDropBrowserTest* --DesktopWidgetTestInteractive* --DevToolsManagerDelegateTest* --ExtensionApiTest.WindowOpen --ExtensionApiTest.WindowOpenFocus --ExtensionPointerLockTest.ExtensionPointerLockAccessPass --GlobalCommandsApiTest.GlobalCommand --KeyboardLockInteractiveBrowserTest.ActiveWithSomeKeysLocked --KeyboardLockInteractiveBrowserTest.RequestedButNotActive --MenuControllerMnemonicTestMnemonicMatch.MnemonicMatch --MenuControllerMnemonicTestNoMatch.NoMatch --MenuControllerMnemonicTestTitleMatch.TitleMatch --MenuControllerUITest.TestMouseOverShownMenu --MenuItemViewTestBasic* --MenuItemViewTestInsert* --MenuItemViewTestRemove* --MenuModelAdapterTest.RebuildMenu --MenuViewDragAndDropForDropCancel.MenuViewCancelsForOwnDrag --MenuViewDragAndDropForDropStayOpen.MenuViewStaysOpenForNestedDrag --MenuViewDragAndDropTestNestedDrag.MenuViewDragAndDropNestedDrag --MenuViewDragAndDropTestTestInMenuDrag.TestInMenuDrag --NotificationsTest.TestShouldDisplayMultiFullscreen --OmniboxViewTest.Paste --OmniboxViewViewsTest.SelectionClipboard --PopupBlockerBrowserTest.ModalPopUnder --SameSiteSubframe* --SettingsUIV3InteractiveTest* --SitePerProcessInteractiveBrowserTest.ShowAndHideDatePopupInOOPIFMultipleTimes --SitePerProcessInteractiveBrowserTest.TabAndMouseFocusNavigation --StartupBrowserCreatorTest.LastUsedProfileActivated --TabDragging* --TabMetricsLoggerTest* --ToolbarActionViewInteractiveUITest* --WidgetCaptureTest.SystemModalWindowReleasesCapture --WidgetInputMethodInteractiveTest* - -# crbug.com/1121486 -# Following tests were flaky. We disable them first until we have time to investigate. --BrowserCommandControllerInteractiveTest.ShortcutsShouldTakeEffectInBrowserFullscreen --ExtensionApiTest.DisplayModeWindowIsInFullscreen --ExtensionCrashRecoveryTest.TwoExtensionsReloadIndependently --KeyboardLockInteractiveBrowserTest.SubsequentLockCallSupersedesPreviousCall --NewTabPageDoodleShareDialogFocusTest.All --PlatformNotificationServiceBrowserTest.TestShouldDisplayMultiFullscreen --PopupBlockerBrowserTest.BlockWebContentsCreationIncognito --NotificationsApiTest* +# TODO(crbug.com/1111979) Enable all tests on lacros. +-AppWindowInteractiveTest.TestFullscreen +-AppWindowTest* +-BookmarkBarViewTest* +-BrowserActionInteractiveTest.OpenPopupOnPopup +-BrowserActionInteractiveTest.TestOpenPopup +-BrowserActionInteractiveTest.TestOpenPopupIncognito +-BrowserFocusTest.BackgroundBrowserDontStealFocus +-ChromeVisibilityObserverInteractiveTest.VisibilityTest +-ClipboardTest/PlatformClipboardTest.ReadAvailablePlatformSpecificFormatNamesTest +-CrossSiteSubframe/DragAndDropBrowserTest* +-DesktopWidgetTestInteractive* +-DevToolsManagerDelegateTest* +-ExtensionApiTest.WindowOpen +-ExtensionApiTest.WindowOpenFocus +-ExtensionPointerLockTest.ExtensionPointerLockAccessPass +-GlobalCommandsApiTest.GlobalCommand +-KeyboardLockInteractiveBrowserTest.ActiveWithSomeKeysLocked +-KeyboardLockInteractiveBrowserTest.RequestedButNotActive +-MenuControllerMnemonicTestMnemonicMatch.MnemonicMatch +-MenuControllerMnemonicTestNoMatch.NoMatch +-MenuControllerMnemonicTestTitleMatch.TitleMatch +-MenuControllerUITest.TestMouseOverShownMenu +-MenuItemViewTestBasic* +-MenuItemViewTestInsert* +-MenuItemViewTestRemove* +-MenuModelAdapterTest.RebuildMenu +-MenuViewDragAndDropForDropCancel.MenuViewCancelsForOwnDrag +-MenuViewDragAndDropForDropStayOpen.MenuViewStaysOpenForNestedDrag +-MenuViewDragAndDropTestNestedDrag.MenuViewDragAndDropNestedDrag +-MenuViewDragAndDropTestTestInMenuDrag.TestInMenuDrag +-NotificationsTest.TestShouldDisplayMultiFullscreen +-OmniboxViewTest.Paste +-OmniboxViewViewsTest.SelectionClipboard +-PopupBlockerBrowserTest.ModalPopUnder +-SameSiteSubframe* +-SettingsUIV3InteractiveTest* +-SitePerProcessInteractiveBrowserTest.ShowAndHideDatePopupInOOPIFMultipleTimes +-SitePerProcessInteractiveBrowserTest.TabAndMouseFocusNavigation +-StartupBrowserCreatorTest.LastUsedProfileActivated +-TabDragging* +-TabMetricsLoggerTest* +-ToolbarActionViewInteractiveUITest* +-WidgetCaptureTest.SystemModalWindowReleasesCapture +-WidgetInputMethodInteractiveTest* + +# crbug.com/1121486 +# Following tests were flaky. We disable them first until we have time to investigate. +-BrowserCommandControllerInteractiveTest.ShortcutsShouldTakeEffectInBrowserFullscreen +-ExtensionApiTest.DisplayModeWindowIsInFullscreen +-ExtensionCrashRecoveryTest.TwoExtensionsReloadIndependently +-KeyboardLockInteractiveBrowserTest.SubsequentLockCallSupersedesPreviousCall +-NewTabPageDoodleShareDialogFocusTest.All +-PlatformNotificationServiceBrowserTest.TestShouldDisplayMultiFullscreen +-PopupBlockerBrowserTest.BlockWebContentsCreationIncognito +-NotificationsApiTest* diff --git a/testing/buildbot/filters/lacros.unit_tests.filter b/testing/buildbot/filters/lacros.unit_tests.filter index 27dd462d7c10e1..2186395fc0f996 100644 --- a/testing/buildbot/filters/lacros.unit_tests.filter +++ b/testing/buildbot/filters/lacros.unit_tests.filter @@ -1,6 +1,6 @@ -# TODO(crbug.com/1111979) Enable all tests on lacros. --ChromeContentBrowserClientTest.UserAgentStringOrdering --NativeDesktopMediaListTest.* --PermissionMessageCombinationsUnittest.USBSerialBluetoothCoalescing --RelaunchNotificationControllerPlatformImplTest.SynchronousNotification --WindowSizerTest.* +# TODO(crbug.com/1111979) Enable all tests on lacros. +-ChromeContentBrowserClientTest.UserAgentStringOrdering +-NativeDesktopMediaListTest.* +-PermissionMessageCombinationsUnittest.USBSerialBluetoothCoalescing +-RelaunchNotificationControllerPlatformImplTest.SynchronousNotification +-WindowSizerTest.* From 7c0cb549c8c1e120181beea88fb3625805661658 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 06:39:58 +0000 Subject: [PATCH 23/49] Roll Chrome Win64 PGO Profile Roll Chrome Win64 PGO profile from chrome-win64-master-1610150355-1b4a639d43ac20407656d2f3a2b0d583443b5895.profdata to chrome-win64-master-1610161046-8bb47bdff715346cff6fa6c623eb76f6c2e1f1b6.profdata If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/pgo-win64-chromium Please CC pgo-profile-sheriffs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:win64-chrome Tbr: pgo-profile-sheriffs@google.com Change-Id: Id2b8eb9bb203cda80e9b8af6c1adf9ca303171c8 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619266 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841797} --- chrome/build/win64.pgo.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/build/win64.pgo.txt b/chrome/build/win64.pgo.txt index d9969741deb6ac..c15165716bb4af 100644 --- a/chrome/build/win64.pgo.txt +++ b/chrome/build/win64.pgo.txt @@ -1 +1 @@ -chrome-win64-master-1610150355-1b4a639d43ac20407656d2f3a2b0d583443b5895.profdata +chrome-win64-master-1610161046-8bb47bdff715346cff6fa6c623eb76f6c2e1f1b6.profdata From 7bab1c92ede7fdfc2aa2ac97cbc60be985685b07 Mon Sep 17 00:00:00 2001 From: David Black Date: Sat, 9 Jan 2021 06:44:58 +0000 Subject: [PATCH 24/49] Fix holding space item chip insets. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Insets were a little off spec in that: - Label was 4dip too close to right edge - Pin toggle was 2dip too close to right edge This CL also reduces scope of some item chip related constants. Bug: 1164608 Change-Id: If5050bcd3636f3cb2d7da6347c80d09f5a4a7238 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619083 Reviewed-by: Toni Baržić Commit-Queue: David Black Cr-Commit-Position: refs/heads/master@{#841798} --- .../holding_space/holding_space_constants.h | 9 --------- .../holding_space_item_chip_view.cc | 20 +++++++++++++------ .../holding_space_item_chips_container.cc | 8 ++++++-- 3 files changed, 20 insertions(+), 17 deletions(-) diff --git a/ash/public/cpp/holding_space/holding_space_constants.h b/ash/public/cpp/holding_space/holding_space_constants.h index 2f700e66ebfdd5..aea8462debdafa 100644 --- a/ash/public/cpp/holding_space/holding_space_constants.h +++ b/ash/public/cpp/holding_space/holding_space_constants.h @@ -16,22 +16,13 @@ constexpr int kHoldingSpaceBubbleContainerChildSpacing = 8; constexpr int kHoldingSpaceBubbleWidth = 360; constexpr gfx::Insets kHoldingSpaceChildBubblePadding(16); constexpr int kHoldingSpaceChildBubbleChildSpacing = 16; -constexpr gfx::Insets kHoldingSpaceChipPadding(8); -constexpr int kHoldingSpaceChipChildSpacing = 8; -constexpr int kHoldingSpaceChipHeight = 40; constexpr int kHoldingSpaceChipIconSize = 24; -constexpr int kHoldingSpaceChipWidth = 160; -constexpr int kHoldingSpaceChipLabelMaskGradientWidth = 16; -constexpr int kHoldingSpaceChipsPerRow = 2; -constexpr int kHoldingSpaceColumnSpacing = 8; -constexpr int kHoldingSpaceColumnWidth = 160; constexpr int kHoldingSpaceContextMenuMargin = 8; constexpr int kHoldingSpaceCornerRadius = 8; constexpr int kHoldingSpaceDownloadsChevronIconSize = 20; constexpr int kHoldingSpaceDownloadsHeaderSpacing = 16; constexpr int kHoldingSpaceFocusInsets = -2; constexpr int kHoldingSpaceIconSize = 20; -constexpr int kHoldingSpaceRowSpacing = 8; constexpr gfx::Insets kHoldingSpaceScreenCapturePadding(8); constexpr gfx::Size kHoldingSpaceScreenCapturePinButtonSize(24, 24); constexpr gfx::Size kHoldingSpaceScreenCapturePlayIconSize(32, 32); diff --git a/ash/system/holding_space/holding_space_item_chip_view.cc b/ash/system/holding_space/holding_space_item_chip_view.cc index 2ba816bfeeec64..ed0fa291ecb33d 100644 --- a/ash/system/holding_space/holding_space_item_chip_view.cc +++ b/ash/system/holding_space/holding_space_item_chip_view.cc @@ -15,6 +15,7 @@ #include "ui/compositor/paint_recorder.h" #include "ui/gfx/skia_paint_util.h" #include "ui/views/background.h" +#include "ui/views/border.h" #include "ui/views/controls/label.h" #include "ui/views/layout/box_layout.h" #include "ui/views/layout/fill_layout.h" @@ -23,6 +24,14 @@ namespace ash { +// Appearance. +constexpr int kChildSpacing = 8; +constexpr int kLabelMaskGradientWidth = 16; +constexpr gfx::Insets kLabelMargins(0, 0, 0, /*right=*/2); +constexpr gfx::Insets kPadding(8, 8, 8, /*right=*/10); +constexpr int kPreferredHeight = 40; +constexpr int kPreferredWidth = 160; + // CirclePainter --------------------------------------------------------------- class CirclePainter : public views::Painter { @@ -91,9 +100,8 @@ class HoldingSpaceItemChipView::LabelMaskLayerOwner : public ui::LayerDelegate { flags.setAntiAlias(false); gfx::Point gradient_end(size.width() - kHoldingSpaceIconSize, 0); - gfx::Point gradient_start( - gradient_end.x() - kHoldingSpaceChipLabelMaskGradientWidth, - gradient_end.y()); + gfx::Point gradient_start(gradient_end.x() - kLabelMaskGradientWidth, + gradient_end.y()); flags.setShader(gfx::CreateGradientShader( gradient_start, gradient_end, SK_ColorBLACK, SK_ColorTRANSPARENT)); @@ -113,12 +121,11 @@ HoldingSpaceItemChipView::HoldingSpaceItemChipView( const HoldingSpaceItem* item) : HoldingSpaceItemView(delegate, item) { auto* layout = SetLayoutManager(std::make_unique( - views::BoxLayout::Orientation::kHorizontal, - gfx::Insets(kHoldingSpaceChipPadding), kHoldingSpaceChipChildSpacing)); + views::BoxLayout::Orientation::kHorizontal, kPadding, kChildSpacing)); layout->set_cross_axis_alignment( views::BoxLayout::CrossAxisAlignment::kCenter); - SetPreferredSize(gfx::Size(kHoldingSpaceChipWidth, kHoldingSpaceChipHeight)); + SetPreferredSize(gfx::Size(kPreferredWidth, kPreferredHeight)); image_ = AddChildView(std::make_unique( kHoldingSpaceChipIconSize / 2, RoundedImageView::Alignment::kLeading)); @@ -145,6 +152,7 @@ HoldingSpaceItemChipView::HoldingSpaceItemChipView( label_ = label_and_pin_button_container_->AddChildView( holding_space_util::CreateLabel(holding_space_util::LabelStyle::kChip)); + label_->SetBorder(views::CreateEmptyBorder(kLabelMargins)); label_->SetElideBehavior(gfx::ELIDE_MIDDLE); label_->SetHorizontalAlignment(gfx::HorizontalAlignment::ALIGN_LEFT); label_->SetText(item->text()); diff --git a/ash/system/holding_space/holding_space_item_chips_container.cc b/ash/system/holding_space/holding_space_item_chips_container.cc index d0c0a1523439f3..1c3e51d043ce07 100644 --- a/ash/system/holding_space/holding_space_item_chips_container.cc +++ b/ash/system/holding_space/holding_space_item_chips_container.cc @@ -12,6 +12,10 @@ namespace ash { namespace { +// Appearance. +constexpr int kNumberOfChipsPerRow = 2; +constexpr int kSpacing = 8; + // Need a custom grid layout to facilitate removal of views from the grid, // which can change the number of rows required. views::GridLayout makes this // case difficult. @@ -110,8 +114,8 @@ class SimpleGridLayout : public views::LayoutManagerBase { HoldingSpaceItemChipsContainer::HoldingSpaceItemChipsContainer() { SetLayoutManager(std::make_unique( - kHoldingSpaceChipsPerRow, kHoldingSpaceColumnSpacing, - kHoldingSpaceRowSpacing)); + kNumberOfChipsPerRow, /*column_spacing=*/kSpacing, + /*row_spacing=*/kSpacing)); } HoldingSpaceItemChipsContainer::~HoldingSpaceItemChipsContainer() = default; From 8eeb7135f428a1f235f9bd8b619d70cd49119844 Mon Sep 17 00:00:00 2001 From: chromium-internal-autoroll Date: Sat, 9 Jan 2021 06:56:41 +0000 Subject: [PATCH 25/49] Roll src-internal from fe85da141e77 to a51f14911dda (3 revisions) https://chrome-internal.googlesource.com/chrome/src-internal.git/+log/fe85da141e77..a51f14911dda If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://skia-autoroll.corp.goog/r/src-internal-chromium-autoroll Please CC on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:linux-chromeos-chrome Bug: None Tbr: Change-Id: I3e35b39ad46cb927b7a79c05ecd31c308843735d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619268 Reviewed-by: chromium-internal-autoroll Commit-Queue: chromium-internal-autoroll Cr-Commit-Position: refs/heads/master@{#841799} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 064357525e1aa9..53f33919c13738 100644 --- a/DEPS +++ b/DEPS @@ -1590,7 +1590,7 @@ deps = { Var('chromium_git') + '/v8/v8.git' + '@' + Var('v8_revision'), 'src-internal': { - 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@fe85da141e7777f28edb8272e184334a551e9220', + 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@a51f14911dda538375d1f4da1925ce667ac3ca6f', 'condition': 'checkout_src_internal', }, From 256cb7a3c30bbfab83192114b655c85cce61b16f Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 07:47:53 +0000 Subject: [PATCH 26/49] Roll Skia from 5045de33e754 to 8f282f5d9f30 (1 revision) https://skia.googlesource.com/skia.git/+log/5045de33e754..8f282f5d9f30 2021-01-09 csmartdalton@google.com Reland "Disable tessellation when we don't have indirect draw support" If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/skia-autoroll Please CC johnstiles@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux-blink-rel;luci.chromium.try:linux-chromeos-compile-dbg;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Cq-Do-Not-Cancel-Tryjobs: true Bug: chromium:1163441 Tbr: johnstiles@google.com Change-Id: I3edfcb618cf635e7f91bcf4a00056894bc372443 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619272 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841800} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 53f33919c13738..b23b0ad5cf6966 100644 --- a/DEPS +++ b/DEPS @@ -199,7 +199,7 @@ vars = { # Three lines of non-changing comments so that # the commit queue can handle CLs rolling Skia # and whatever else without interference from each other. - 'skia_revision': '5045de33e75455e6e149548f3e35bdec87d01086', + 'skia_revision': '8f282f5d9f30aeb5e3122735723b403203511370', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling V8 # and whatever else without interference from each other. From e66ebd961561b82d30a3f48f1706000aa7b8aaa9 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 08:06:23 +0000 Subject: [PATCH 27/49] Roll Chrome Linux PGO Profile Roll Chrome Linux PGO profile from chrome-linux-master-1610150355-4a8e87c65afe038c52dde92bd9ad8141fba84ab9.profdata to chrome-linux-master-1610171259-b1598c945c0945eca1fe59af3b4329d36850c3d0.profdata If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/pgo-linux-chromium Please CC pgo-profile-sheriffs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:linux-chrome Tbr: pgo-profile-sheriffs@google.com Change-Id: I7a974d46561a9e80db301338f833b5c3b1bd1c15 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619461 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841801} --- chrome/build/linux.pgo.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/build/linux.pgo.txt b/chrome/build/linux.pgo.txt index be83b691e80b61..b887ca38f27027 100644 --- a/chrome/build/linux.pgo.txt +++ b/chrome/build/linux.pgo.txt @@ -1 +1 @@ -chrome-linux-master-1610150355-4a8e87c65afe038c52dde92bd9ad8141fba84ab9.profdata +chrome-linux-master-1610171259-b1598c945c0945eca1fe59af3b4329d36850c3d0.profdata From 4560037112146d19ad50a00e0eba61219e8d22bc Mon Sep 17 00:00:00 2001 From: chromium-internal-autoroll Date: Sat, 9 Jan 2021 08:26:23 +0000 Subject: [PATCH 28/49] Roll src-internal from a51f14911dda to 9b447214fe9d (1 revision) https://chrome-internal.googlesource.com/chrome/src-internal.git/+log/a51f14911dda..9b447214fe9d If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://skia-autoroll.corp.goog/r/src-internal-chromium-autoroll Please CC on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:linux-chromeos-chrome Bug: None Tbr: Change-Id: I927ab91651ddaf241702fdb1083293eedf5a2b72 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619276 Reviewed-by: chromium-internal-autoroll Commit-Queue: chromium-internal-autoroll Cr-Commit-Position: refs/heads/master@{#841802} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index b23b0ad5cf6966..76be618bd9c2f4 100644 --- a/DEPS +++ b/DEPS @@ -1590,7 +1590,7 @@ deps = { Var('chromium_git') + '/v8/v8.git' + '@' + Var('v8_revision'), 'src-internal': { - 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@a51f14911dda538375d1f4da1925ce667ac3ca6f', + 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@9b447214fe9d580707990c8df612500980012859', 'condition': 'checkout_src_internal', }, From a3f504dc04e4f356a132f35e2cb70bc3cb6aaa3d Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 08:39:13 +0000 Subject: [PATCH 29/49] Roll Perfetto Trace Processor Win from affdce7627b1 to 35f78f4a4562 https://android.googlesource.com/platform/external/perfetto.git/+log/affdce7627b1..35f78f4a4562 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/perfetto-trace-processor-win-chromium Please CC perfetto-bugs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Tbr: perfetto-bugs@google.com Change-Id: I38709286bd7fc2e213b50b41445d4840f124b4a6 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619463 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841803} --- tools/perf/core/perfetto_binary_roller/binary_deps.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/perf/core/perfetto_binary_roller/binary_deps.json b/tools/perf/core/perfetto_binary_roller/binary_deps.json index ec0cd5f2f0e1a9..3e9044e3f14481 100644 --- a/tools/perf/core/perfetto_binary_roller/binary_deps.json +++ b/tools/perf/core/perfetto_binary_roller/binary_deps.json @@ -1,8 +1,8 @@ { "trace_processor_shell": { "win": { - "hash": "0104dfe57b4d98879c4238741f712a983facfbd5", - "remote_path": "perfetto_binaries/trace_processor_shell/win/affdce7627b1030441a19608a1bcb321190786da/trace_processor_shell.exe" + "hash": "1b175a93430138b7855ceeb6eb8516c7e66c3684", + "remote_path": "perfetto_binaries/trace_processor_shell/win/35f78f4a4562f61cde3b096492628e1d47acb04e/trace_processor_shell.exe" }, "mac": { "hash": "ad7587bcfdd72883c1e1b1596ddec4f81bbf7736", From 79263386a909efc20dfa26af9fceb36b5fca7c99 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 08:50:13 +0000 Subject: [PATCH 30/49] Roll Fuchsia AEMU from luM2HIHgf... to xAHa1IXmK... If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/fuchsia-aemu-chromium-autoroll Please CC chrome-fuchsia-gardener@grotations.appspotmail.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Tbr: chrome-fuchsia-gardener@grotations.appspotmail.com Change-Id: I450db2deeca59e6ca0323bb78de90979ed7a0dcd Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619458 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841804} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 76be618bd9c2f4..8d490d1bdbbfb0 100644 --- a/DEPS +++ b/DEPS @@ -1344,7 +1344,7 @@ deps = { 'packages': [ { 'package': 'fuchsia/third_party/aemu/linux-amd64', - 'version': 'luM2HIHgfBKxr1C7UPo8RdQPAvyLNd74T9rYfhWFOC8C' + 'version': 'xAHa1IXmKteChkPvba9ezjSnKL7IyDePQRzWVUEAx9UC' }, ], 'condition': 'host_os == "linux" and checkout_fuchsia', From 8d7b55db0d82377eb646c0106df4b16aa8829829 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 08:53:53 +0000 Subject: [PATCH 31/49] Roll Chrome Win64 PGO Profile Roll Chrome Win64 PGO profile from chrome-win64-master-1610161046-8bb47bdff715346cff6fa6c623eb76f6c2e1f1b6.profdata to chrome-win64-master-1610171259-5029a012e6fce7f079fbe28ada65e6f1b10bca27.profdata If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/pgo-win64-chromium Please CC pgo-profile-sheriffs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:win64-chrome Tbr: pgo-profile-sheriffs@google.com Change-Id: If10bcfc5172b92d68eaa8cccc3d6e8c16ed93bea Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619277 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841805} --- chrome/build/win64.pgo.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/build/win64.pgo.txt b/chrome/build/win64.pgo.txt index c15165716bb4af..cc55584101d68d 100644 --- a/chrome/build/win64.pgo.txt +++ b/chrome/build/win64.pgo.txt @@ -1 +1 @@ -chrome-win64-master-1610161046-8bb47bdff715346cff6fa6c623eb76f6c2e1f1b6.profdata +chrome-win64-master-1610171259-5029a012e6fce7f079fbe28ada65e6f1b10bca27.profdata From acb1468e931a626a408cd325419eb4c4ee9f6600 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 08:54:13 +0000 Subject: [PATCH 32/49] Roll Chrome Win32 PGO Profile Roll Chrome Win32 PGO profile from chrome-win32-master-1610107094-5d3c24229731decbd402a4499ebb6cac6decdedb.profdata to chrome-win32-master-1610161046-399fd17ec947c0f0e6be2167d83f56f1768af12e.profdata If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/pgo-win32-chromium Please CC pgo-profile-sheriffs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:win-chrome Tbr: pgo-profile-sheriffs@google.com Change-Id: I7245586472da900fd8598c11b328dbd1c5f13657 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619273 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841806} --- chrome/build/win32.pgo.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/build/win32.pgo.txt b/chrome/build/win32.pgo.txt index 936d42db9123c6..192612cb876fb7 100644 --- a/chrome/build/win32.pgo.txt +++ b/chrome/build/win32.pgo.txt @@ -1 +1 @@ -chrome-win32-master-1610107094-5d3c24229731decbd402a4499ebb6cac6decdedb.profdata +chrome-win32-master-1610161046-399fd17ec947c0f0e6be2167d83f56f1768af12e.profdata From b4bc4a5117bbca1924d1566fa63445f18a3dad17 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 09:04:44 +0000 Subject: [PATCH 33/49] Roll ANGLE from 6e909d940753 to 51603c63d1cb (1 revision) https://chromium.googlesource.com/angle/angle.git/+log/6e909d940753..51603c63d1cb 2021-01-09 syoussefi@chromium.org Revert "Use is_apple instead of is_mac and is_ios everywhere" If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/angle-chromium-autoroll Please CC ianelliott@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win-asan;luci.chromium.try:win_optional_gpu_tests_rel;luci.chromium.try:linux-swangle-try-x64;luci.chromium.try:win-swangle-try-x86 Bug: chromium:1161513 Tbr: ianelliott@google.com Change-Id: I838e9f10285b5569eecbc1dc3d74b5fe2a690876 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619462 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841807} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 8d490d1bdbbfb0..a309252c37b6ee 100644 --- a/DEPS +++ b/DEPS @@ -211,7 +211,7 @@ vars = { # Three lines of non-changing comments so that # the commit queue can handle CLs rolling ANGLE # and whatever else without interference from each other. - 'angle_revision': '6e909d9407534e3b7e4eb42e49941256a14066b5', + 'angle_revision': '51603c63d1cb9e36afaf2069fc069e542ac2f3fb', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling SwiftShader # and whatever else without interference from each other. From dab5e6bc11c54e0e3671e35bee34ccfaf536d7f5 Mon Sep 17 00:00:00 2001 From: Internal Frameworks Autoroller Date: Sat, 9 Jan 2021 09:08:04 +0000 Subject: [PATCH 34/49] [Frameworks roll] Roll to 350897252 piper revision TBR=bling-team@google.com Change-Id: I084c4fb08f26ee137eb8158b2a529288009f7b22 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619304 Reviewed-by: Internal Frameworks Autoroller Commit-Queue: Internal Frameworks Autoroller Cr-Commit-Position: refs/heads/master@{#841808} --- .../frameworks/chrome_internal_dynamic_framework.arm64.zip.sha1 | 2 +- .../frameworks/chrome_internal_dynamic_framework.x64.zip.sha1 | 2 +- .../chrome_sso_internal_dynamic_framework.arm64.zip.sha1 | 2 +- .../chrome_sso_internal_dynamic_framework.x64.zip.sha1 | 2 +- .../remoting_dogfood_internal_dynamic_framework.arm64.zip.sha1 | 2 +- .../remoting_dogfood_internal_dynamic_framework.x64.zip.sha1 | 2 +- .../remoting_internal_dynamic_framework.arm64.zip.sha1 | 2 +- .../frameworks/remoting_internal_dynamic_framework.x64.zip.sha1 | 2 +- .../web_view_shell_internal_dynamic_framework.arm64.zip.sha1 | 2 +- .../web_view_shell_internal_dynamic_framework.x64.zip.sha1 | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/ios/google_internal/frameworks/chrome_internal_dynamic_framework.arm64.zip.sha1 b/ios/google_internal/frameworks/chrome_internal_dynamic_framework.arm64.zip.sha1 index 603fb7b4d3edd3..de71e9faaf0a6a 100644 --- a/ios/google_internal/frameworks/chrome_internal_dynamic_framework.arm64.zip.sha1 +++ b/ios/google_internal/frameworks/chrome_internal_dynamic_framework.arm64.zip.sha1 @@ -1 +1 @@ -96000536c395a463386e923a7515471c664a5394 \ No newline at end of file +4e30bc9afdaf607e72abb47880040fe591b54847 \ No newline at end of file diff --git a/ios/google_internal/frameworks/chrome_internal_dynamic_framework.x64.zip.sha1 b/ios/google_internal/frameworks/chrome_internal_dynamic_framework.x64.zip.sha1 index fb3c96e271d7bf..ca65b44f1b0c2c 100644 --- a/ios/google_internal/frameworks/chrome_internal_dynamic_framework.x64.zip.sha1 +++ b/ios/google_internal/frameworks/chrome_internal_dynamic_framework.x64.zip.sha1 @@ -1 +1 @@ -27cc14be2139609c7c7da56c525c3bae5cf50d17 \ No newline at end of file +c9dfa0cbdd53d60a85356af6e952fe5a1009aa4d \ No newline at end of file diff --git a/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.arm64.zip.sha1 b/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.arm64.zip.sha1 index 51f978a2042214..2016cb3f1c5a49 100644 --- a/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.arm64.zip.sha1 +++ b/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.arm64.zip.sha1 @@ -1 +1 @@ -8aa76742ce99c2f6bf9abdf6fd8e1ae5d7c8b833 \ No newline at end of file +c63b2067fee7c3467b44e24bf20df3ad9d2fbdc5 \ No newline at end of file diff --git a/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.x64.zip.sha1 b/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.x64.zip.sha1 index cb695abf1f607d..fec523939b765a 100644 --- a/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.x64.zip.sha1 +++ b/ios/google_internal/frameworks/chrome_sso_internal_dynamic_framework.x64.zip.sha1 @@ -1 +1 @@ -0d6c6bcfbf96031da1e97b6ca45ec1b950c947d8 \ No newline at end of file +01820e63c75a24d32ad4e0f415d3c2ab8e097fb6 \ No newline at end of file diff --git a/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.arm64.zip.sha1 b/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.arm64.zip.sha1 index 427084cc93b961..4f47b3d9a55e96 100644 --- a/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.arm64.zip.sha1 +++ b/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.arm64.zip.sha1 @@ -1 +1 @@ -ada10ff16fa2b99659bc9a41f13f8dfe50cc6770 \ No newline at end of file +0ed4abd3b9e28920819448ce415ebfa09f9059e3 \ No newline at end of file diff --git a/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.x64.zip.sha1 b/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.x64.zip.sha1 index 56d73bd4635061..dbcb1a1ca0080a 100644 --- a/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.x64.zip.sha1 +++ b/ios/google_internal/frameworks/remoting_dogfood_internal_dynamic_framework.x64.zip.sha1 @@ -1 +1 @@ -c5e26248c1626432705c1dacf39c8ac405462c16 \ No newline at end of file +ac194e3054e5698e9f738d09060a53d648e3b2d7 \ No newline at end of file diff --git a/ios/google_internal/frameworks/remoting_internal_dynamic_framework.arm64.zip.sha1 b/ios/google_internal/frameworks/remoting_internal_dynamic_framework.arm64.zip.sha1 index 61c4b9d8d4528a..c1ffc871e9e6f8 100644 --- a/ios/google_internal/frameworks/remoting_internal_dynamic_framework.arm64.zip.sha1 +++ b/ios/google_internal/frameworks/remoting_internal_dynamic_framework.arm64.zip.sha1 @@ -1 +1 @@ -721a9c861f3bd1764e506cadc00abad6c6afbbe3 \ No newline at end of file +ece0563e9a29ed69e21858d0d776db224d201a4b \ No newline at end of file diff --git a/ios/google_internal/frameworks/remoting_internal_dynamic_framework.x64.zip.sha1 b/ios/google_internal/frameworks/remoting_internal_dynamic_framework.x64.zip.sha1 index fed1a5802d0fe3..2574583ff7b655 100644 --- a/ios/google_internal/frameworks/remoting_internal_dynamic_framework.x64.zip.sha1 +++ b/ios/google_internal/frameworks/remoting_internal_dynamic_framework.x64.zip.sha1 @@ -1 +1 @@ -d56e002052ef6e2460cecd84270eee100de66c32 \ No newline at end of file +f793af2d1550b5bc30af4279694217ea8769d46f \ No newline at end of file diff --git a/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.arm64.zip.sha1 b/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.arm64.zip.sha1 index 290ed473f9834f..e36e9274a45e6f 100644 --- a/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.arm64.zip.sha1 +++ b/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.arm64.zip.sha1 @@ -1 +1 @@ -1d2d8d8eb2500924ef44d5567e62b8e999650149 \ No newline at end of file +90a20a192a7abf46bd818d47df3624e24a475f88 \ No newline at end of file diff --git a/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.x64.zip.sha1 b/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.x64.zip.sha1 index 6a907b29edd763..537c8e87788765 100644 --- a/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.x64.zip.sha1 +++ b/ios/google_internal/frameworks/web_view_shell_internal_dynamic_framework.x64.zip.sha1 @@ -1 +1 @@ -28a50656e0a255bd518dda7ae93dfc68fcac3054 \ No newline at end of file +51f58f28f1313cc2e2b382a6b46f76f6d48af743 \ No newline at end of file From 95c31dbbee07e885917871d07e02c9a96b28d12c Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 09:10:14 +0000 Subject: [PATCH 35/49] Roll Fuchsia SDK from 0.20210108.2.1 to 0.20210109.0.1 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/fuchsia-sdk-chromium-autoroll Please CC chrome-fuchsia-gardener@grotations.appspotmail.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chromium.try:fuchsia-arm64-cast;luci.chromium.try:fuchsia-deterministic-dbg;luci.chromium.try:fuchsia-x64-cast Tbr: chrome-fuchsia-gardener@grotations.appspotmail.com Change-Id: I868031fc6e1b501fbfc3e13d45e8f66cc1dcf60d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619270 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841809} --- build/fuchsia/linux.sdk.sha1 | 2 +- build/fuchsia/mac.sdk.sha1 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build/fuchsia/linux.sdk.sha1 b/build/fuchsia/linux.sdk.sha1 index e163596e7d4d29..81e1c0d41037ff 100644 --- a/build/fuchsia/linux.sdk.sha1 +++ b/build/fuchsia/linux.sdk.sha1 @@ -1 +1 @@ -0.20210108.2.1 +0.20210109.0.1 diff --git a/build/fuchsia/mac.sdk.sha1 b/build/fuchsia/mac.sdk.sha1 index e163596e7d4d29..81e1c0d41037ff 100644 --- a/build/fuchsia/mac.sdk.sha1 +++ b/build/fuchsia/mac.sdk.sha1 @@ -1 +1 @@ -0.20210108.2.1 +0.20210109.0.1 From 1ad756f76e039a7778503a68f883483ff3429d13 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 09:15:24 +0000 Subject: [PATCH 36/49] Roll WebRTC from 783278a3109d to 472c1fe01cff (1 revision) https://webrtc.googlesource.com/src.git/+log/783278a3109d..472c1fe01cff 2021-01-09 webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com Update WebRTC code version (2021-01-09T04:01:32). If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/webrtc-chromium-autoroll Please CC webrtc-chromium-sheriffs-robots@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: webrtc-chromium-sheriffs-robots@google.com Change-Id: I2edb9cfab97d0b9187c83728df383b2dd2639fd1 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619464 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841810} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index a309252c37b6ee..6294fa1c75716d 100644 --- a/DEPS +++ b/DEPS @@ -1518,7 +1518,7 @@ deps = { Var('chromium_git') + '/external/github.com/gpuweb/cts.git' + '@' + '3c2fe3888658d82b47ca831d59a2e07579619c2d', 'src/third_party/webrtc': - Var('webrtc_git') + '/src.git' + '@' + '783278a3109df8d2e362861e52fd0deea851633c', + Var('webrtc_git') + '/src.git' + '@' + '472c1fe01cff04c4ba78ea6acfa6d614b4fc6b14', 'src/third_party/libgifcodec': Var('skia_git') + '/libgifcodec' + '@'+ Var('libgifcodec_revision'), From 24b08882e250867e006858deecbdf6d6ffb68efa Mon Sep 17 00:00:00 2001 From: Mason Wilde Date: Sat, 9 Jan 2021 09:26:04 +0000 Subject: [PATCH 37/49] Serviceconnection: Add IO information to ProcessInfo Add rchar, wchar, syscr, syscw, read_bytes, write_bytes, and cancelled_write_bytes fields to the ProcessInfo from a process /proc/|PID|/io file. Bug: b:173062804 Change-Id: Id17922866395e9f2f987eda589e0a0e40f31a07b Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2574930 Commit-Queue: Daniel Cheng Reviewed-by: Daniel Cheng Reviewed-by: Maksim Ivanov Cr-Commit-Position: refs/heads/master@{#841811} --- .../public/mojom/cros_healthd_probe.mojom | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/chromeos/services/cros_healthd/public/mojom/cros_healthd_probe.mojom b/chromeos/services/cros_healthd/public/mojom/cros_healthd_probe.mojom index 0f87f37a623de9..bc7eaed9fe4b51 100644 --- a/chromeos/services/cros_healthd/public/mojom/cros_healthd_probe.mojom +++ b/chromeos/services/cros_healthd/public/mojom/cros_healthd_probe.mojom @@ -116,6 +116,25 @@ struct ProcessInfo { // Unused memory available to the process, in KiB. This will always be // |total_memory_kib| - |resident_memory_kib|. uint32 free_memory_kib; + // The sum of bytes passed to system read calls. This includes terminal + // I/O and is independent of whether the physical disk is accessed. + uint64 bytes_read; + // The sum of bytes passed to system write calls. This includes terminal + // I/O and is independent of whether the physical disk is accessed. + uint64 bytes_written; + // Attempted count of read syscalls. + uint64 read_system_calls; + // Attempted count of write syscalls. + uint64 write_system_calls; + // Attempt to count the number of bytes which this process really did cause + // to be fetched from the storage layer. + uint64 physical_bytes_read; + // Attempt to count the number of bytes which this process caused to be sent + // to the storage layer. + uint64 physical_bytes_written; + // Number of bytes which this process caused to not happen, by truncating + // pagecache. + uint64 cancelled_bytes_written; }; // Battery probe result. Can either be populated with the BatteryInfo or an From ce93b187e60a5456c07029ee2f0fb4c20f4ef705 Mon Sep 17 00:00:00 2001 From: chromium-internal-autoroll Date: Sat, 9 Jan 2021 10:44:54 +0000 Subject: [PATCH 38/49] Roll src-internal from 9b447214fe9d to 16c884166b03 (1 revision) https://chrome-internal.googlesource.com/chrome/src-internal.git/+log/9b447214fe9d..16c884166b03 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://skia-autoroll.corp.goog/r/src-internal-chromium-autoroll Please CC on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:linux-chromeos-chrome Bug: None Tbr: Change-Id: I52171292a8df94948107a2c60dba0d22814f747f Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619472 Reviewed-by: chromium-internal-autoroll Commit-Queue: chromium-internal-autoroll Cr-Commit-Position: refs/heads/master@{#841812} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 6294fa1c75716d..c6ce312ef5ce07 100644 --- a/DEPS +++ b/DEPS @@ -1590,7 +1590,7 @@ deps = { Var('chromium_git') + '/v8/v8.git' + '@' + Var('v8_revision'), 'src-internal': { - 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@9b447214fe9d580707990c8df612500980012859', + 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@16c884166b030de23e02ca2ee3f63ce4225ed4f1', 'condition': 'checkout_src_internal', }, From df50dce39aa084691b0e609b536ddaa7d6fa96e6 Mon Sep 17 00:00:00 2001 From: v8-ci-autoroll-builder Date: Sat, 9 Jan 2021 11:08:14 +0000 Subject: [PATCH 39/49] Update V8 to version 8.9.226. Summary of changes available at: https://chromium.googlesource.com/v8/v8/+log/6bb19707..9e87ac2f Please follow these instructions for assigning/CC'ing issues: https://v8.dev/docs/triage-issues Please close rolling in case of a roll revert: https://v8-roll.appspot.com/ This only works with a Google account. CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-blink-rel CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_optional_gpu_tests_rel CQ_INCLUDE_TRYBOTS=luci.chromium.try:mac_optional_gpu_tests_rel CQ_INCLUDE_TRYBOTS=luci.chromium.try:win_optional_gpu_tests_rel CQ_INCLUDE_TRYBOTS=luci.chromium.try:android_optional_gpu_tests_rel TBR=hablich@chromium.org,vahl@chromium.org,v8-waterfall-sheriff@grotations.appspotmail.com Change-Id: I517bbfff52bfbfc87e4c9fe1e8a4e76feead4772 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619466 Reviewed-by: v8-ci-autoroll-builder Commit-Queue: v8-ci-autoroll-builder Cr-Commit-Position: refs/heads/master@{#841813} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index c6ce312ef5ce07..0de06254dc30ce 100644 --- a/DEPS +++ b/DEPS @@ -203,7 +203,7 @@ vars = { # Three lines of non-changing comments so that # the commit queue can handle CLs rolling V8 # and whatever else without interference from each other. - 'v8_revision': '6bb19707a491fda7a4dc04dbbeb188d48f6d641d', + 'v8_revision': '9e87ac2f8d0bcc663793b0909e377589c2274e8f', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling swarming_client # and whatever else without interference from each other. From e994d20359274eee989a757181a07fd79df4b488 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 11:42:46 +0000 Subject: [PATCH 40/49] Roll Chrome Win32 PGO Profile Roll Chrome Win32 PGO profile from chrome-win32-master-1610161046-399fd17ec947c0f0e6be2167d83f56f1768af12e.profdata to chrome-win32-master-1610171259-1cd9d9fe2bae470082eebb08e030e0c6938a393c.profdata If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/pgo-win32-chromium Please CC pgo-profile-sheriffs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:win-chrome Tbr: pgo-profile-sheriffs@google.com Change-Id: Ic80219b98efc2e2ad9b627bddc2ef36ce90b5d66 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619475 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841814} --- chrome/build/win32.pgo.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/build/win32.pgo.txt b/chrome/build/win32.pgo.txt index 192612cb876fb7..349d92641ded06 100644 --- a/chrome/build/win32.pgo.txt +++ b/chrome/build/win32.pgo.txt @@ -1 +1 @@ -chrome-win32-master-1610161046-399fd17ec947c0f0e6be2167d83f56f1768af12e.profdata +chrome-win32-master-1610171259-1cd9d9fe2bae470082eebb08e030e0c6938a393c.profdata From d77fa6982d3558f69e059de59b63b1e8a3cad03d Mon Sep 17 00:00:00 2001 From: chromium-internal-autoroll Date: Sat, 9 Jan 2021 11:59:46 +0000 Subject: [PATCH 41/49] Roll src-internal from 16c884166b03 to c39f33692f93 (1 revision) https://chrome-internal.googlesource.com/chrome/src-internal.git/+log/16c884166b03..c39f33692f93 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://skia-autoroll.corp.goog/r/src-internal-chromium-autoroll Please CC on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:linux-chromeos-chrome Bug: None Tbr: Change-Id: I48bfbf0173856ba068b618cb03802eb1791360d4 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619503 Reviewed-by: chromium-internal-autoroll Commit-Queue: chromium-internal-autoroll Cr-Commit-Position: refs/heads/master@{#841815} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 0de06254dc30ce..65ba6704a5f09b 100644 --- a/DEPS +++ b/DEPS @@ -1590,7 +1590,7 @@ deps = { Var('chromium_git') + '/v8/v8.git' + '@' + Var('v8_revision'), 'src-internal': { - 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@16c884166b030de23e02ca2ee3f63ce4225ed4f1', + 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@c39f33692f93608cde7154f7af015b40176da248', 'condition': 'checkout_src_internal', }, From c930e7a1a1316518c41308672dabfd96de7093e7 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 12:03:06 +0000 Subject: [PATCH 42/49] Roll WebRTC from 472c1fe01cff to 42082f9045e7 (1 revision) https://webrtc.googlesource.com/src.git/+log/472c1fe01cff..42082f9045e7 2021-01-09 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision 6ae5319dfd..256cb7a3c3 (841669:841800) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/webrtc-chromium-autoroll Please CC webrtc-chromium-sheriffs-robots@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: webrtc-chromium-sheriffs-robots@google.com Change-Id: I4506d441d085bfc94d7bdc80b3916c6710d4ee43 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619501 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841816} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 65ba6704a5f09b..e3b62e1d7bdc42 100644 --- a/DEPS +++ b/DEPS @@ -1518,7 +1518,7 @@ deps = { Var('chromium_git') + '/external/github.com/gpuweb/cts.git' + '@' + '3c2fe3888658d82b47ca831d59a2e07579619c2d', 'src/third_party/webrtc': - Var('webrtc_git') + '/src.git' + '@' + '472c1fe01cff04c4ba78ea6acfa6d614b4fc6b14', + Var('webrtc_git') + '/src.git' + '@' + '42082f9045e74e65b9e3a66b51093e0dc2f9375a', 'src/third_party/libgifcodec': Var('skia_git') + '/libgifcodec' + '@'+ Var('libgifcodec_revision'), From ceb598797cf7d9e74509cdd4da93109875fe6bf7 Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 12:06:26 +0000 Subject: [PATCH 43/49] Roll Chrome Win64 PGO Profile Roll Chrome Win64 PGO profile from chrome-win64-master-1610171259-5029a012e6fce7f079fbe28ada65e6f1b10bca27.profdata to chrome-win64-master-1610182453-e2d19885b1bfeea6bc0ced33d1b3a64e0380c0bb.profdata If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/pgo-win64-chromium Please CC pgo-profile-sheriffs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:win64-chrome Tbr: pgo-profile-sheriffs@google.com Change-Id: I9965cb58519a2ff77c54ccf7df36557cb2a4283d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619539 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841817} --- chrome/build/win64.pgo.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/build/win64.pgo.txt b/chrome/build/win64.pgo.txt index cc55584101d68d..82ac66625f7736 100644 --- a/chrome/build/win64.pgo.txt +++ b/chrome/build/win64.pgo.txt @@ -1 +1 @@ -chrome-win64-master-1610171259-5029a012e6fce7f079fbe28ada65e6f1b10bca27.profdata +chrome-win64-master-1610182453-e2d19885b1bfeea6bc0ced33d1b3a64e0380c0bb.profdata From 0eb623d9d678d7c6ed8f1fe061df25c158fd35b4 Mon Sep 17 00:00:00 2001 From: v8-ci-autoroll-builder Date: Sat, 9 Jan 2021 13:21:58 +0000 Subject: [PATCH 44/49] Update V8 to version 8.9.229. Summary of changes available at: https://chromium.googlesource.com/v8/v8/+log/9e87ac2f..5d60a181 Please follow these instructions for assigning/CC'ing issues: https://v8.dev/docs/triage-issues Please close rolling in case of a roll revert: https://v8-roll.appspot.com/ This only works with a Google account. CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-blink-rel CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_optional_gpu_tests_rel CQ_INCLUDE_TRYBOTS=luci.chromium.try:mac_optional_gpu_tests_rel CQ_INCLUDE_TRYBOTS=luci.chromium.try:win_optional_gpu_tests_rel CQ_INCLUDE_TRYBOTS=luci.chromium.try:android_optional_gpu_tests_rel TBR=hablich@chromium.org,vahl@chromium.org,v8-waterfall-sheriff@grotations.appspotmail.com Change-Id: I7994405c7bb85932bc1fbc60d48b4e2aab4900e5 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619522 Reviewed-by: v8-ci-autoroll-builder Commit-Queue: v8-ci-autoroll-builder Cr-Commit-Position: refs/heads/master@{#841818} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index e3b62e1d7bdc42..5d5e9d3bdccdee 100644 --- a/DEPS +++ b/DEPS @@ -203,7 +203,7 @@ vars = { # Three lines of non-changing comments so that # the commit queue can handle CLs rolling V8 # and whatever else without interference from each other. - 'v8_revision': '9e87ac2f8d0bcc663793b0909e377589c2274e8f', + 'v8_revision': '5d60a181de0863d8d00ae42ec0ee3521f51b501a', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling swarming_client # and whatever else without interference from each other. From e0663e121161d8705ea10b76616e14dda4a4047c Mon Sep 17 00:00:00 2001 From: chromium-internal-autoroll Date: Sat, 9 Jan 2021 13:25:38 +0000 Subject: [PATCH 45/49] Roll src-internal from c39f33692f93 to d043aed16479 (1 revision) https://chrome-internal.googlesource.com/chrome/src-internal.git/+log/c39f33692f93..d043aed16479 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://skia-autoroll.corp.goog/r/src-internal-chromium-autoroll Please CC on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:linux-chromeos-chrome Bug: None Tbr: Change-Id: Ib39f7f718d1abd26a90e7c176dfd8a56e9f6607b Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619639 Reviewed-by: chromium-internal-autoroll Commit-Queue: chromium-internal-autoroll Cr-Commit-Position: refs/heads/master@{#841819} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 5d5e9d3bdccdee..986a899efb3c5e 100644 --- a/DEPS +++ b/DEPS @@ -1590,7 +1590,7 @@ deps = { Var('chromium_git') + '/v8/v8.git' + '@' + Var('v8_revision'), 'src-internal': { - 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@c39f33692f93608cde7154f7af015b40176da248', + 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@d043aed16479cfa9dc746047aaad535765588675', 'condition': 'checkout_src_internal', }, From 17df7dba5edb43b717741673c4001fe5fe02688d Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 13:47:58 +0000 Subject: [PATCH 46/49] Roll DevTools Frontend from ba12c16f393a to 08a231692824 (1 revision) https://chromium.googlesource.com/devtools/devtools-frontend.git/+log/ba12c16f393a..08a231692824 2021-01-09 devtools-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Update DevTools DEPS. If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/devtools-frontend-chromium Please CC devtools-waterfall-sheriff-onduty@grotations.appspotmail.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: devtools-waterfall-sheriff-onduty@grotations.appspotmail.com Change-Id: I126b5b6f7502a553cb0992ffb61fc6772df1ba92 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619643 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841820} --- DEPS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DEPS b/DEPS index 986a899efb3c5e..761fbe209a6270 100644 --- a/DEPS +++ b/DEPS @@ -274,7 +274,7 @@ vars = { # Three lines of non-changing comments so that # the commit queue can handle CLs rolling devtools-frontend # and whatever else without interference from each other. - 'devtools_frontend_revision': 'ba12c16f393a978fe8d3f7ad9d9db4d3ad1125b0', + 'devtools_frontend_revision': '08a23169282404c7bc2b0be0c5469e31c0d3171a', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling libprotobuf-mutator # and whatever else without interference from each other. From 6f10d74ae5485dd781ee16cbc8cb9a14be6bfe9f Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 13:54:08 +0000 Subject: [PATCH 47/49] Roll Chrome Win32 PGO Profile Roll Chrome Win32 PGO profile from chrome-win32-master-1610171259-1cd9d9fe2bae470082eebb08e030e0c6938a393c.profdata to chrome-win32-master-1610182453-e2cbc7061497e20c547b73150f9f3abdd20c3cdf.profdata If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/pgo-win32-chromium Please CC pgo-profile-sheriffs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:win-chrome Tbr: pgo-profile-sheriffs@google.com Change-Id: I704f8d7c07ac0fbaa88fa20db45a618943a3aa38 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2618957 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841821} --- chrome/build/win32.pgo.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/build/win32.pgo.txt b/chrome/build/win32.pgo.txt index 349d92641ded06..4a36fcc36fe671 100644 --- a/chrome/build/win32.pgo.txt +++ b/chrome/build/win32.pgo.txt @@ -1 +1 @@ -chrome-win32-master-1610171259-1cd9d9fe2bae470082eebb08e030e0c6938a393c.profdata +chrome-win32-master-1610182453-e2cbc7061497e20c547b73150f9f3abdd20c3cdf.profdata From 6d6545907cee0e97bcaca0c4a0857b4e2a24937c Mon Sep 17 00:00:00 2001 From: chromium-autoroll Date: Sat, 9 Jan 2021 14:25:18 +0000 Subject: [PATCH 48/49] Roll Chrome Linux PGO Profile Roll Chrome Linux PGO profile from chrome-linux-master-1610171259-b1598c945c0945eca1fe59af3b4329d36850c3d0.profdata to chrome-linux-master-1610193586-93f61022a3f2638e289b0e08a26785a26ecf4b4e.profdata If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/pgo-linux-chromium Please CC pgo-profile-sheriffs@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Cq-Include-Trybots: luci.chrome.try:linux-chrome Tbr: pgo-profile-sheriffs@google.com Change-Id: I0c4624a2e4ab5fc2e949d10c9c27fd869078989c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2619646 Reviewed-by: chromium-autoroll Commit-Queue: chromium-autoroll Cr-Commit-Position: refs/heads/master@{#841822} --- chrome/build/linux.pgo.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/build/linux.pgo.txt b/chrome/build/linux.pgo.txt index b887ca38f27027..6f1ba865c5bdeb 100644 --- a/chrome/build/linux.pgo.txt +++ b/chrome/build/linux.pgo.txt @@ -1 +1 @@ -chrome-linux-master-1610171259-b1598c945c0945eca1fe59af3b4329d36850c3d0.profdata +chrome-linux-master-1610193586-93f61022a3f2638e289b0e08a26785a26ecf4b4e.profdata From fda547b0d6a575d7295c475c31f2c000ef2ce09e Mon Sep 17 00:00:00 2001 From: Gavin Williams Date: Sat, 9 Jan 2021 14:51:38 +0000 Subject: [PATCH 49/49] scanning: Fix shadow height on scanned image This change fixes the gap between the bottom of the scanned image border and its focus shadow. Before: http://screen/6tdVfoSCvnEy72p After: http://screen/5LVWsQbm3NEdkAy Bug: 1059779 Change-Id: I31c30b9cc940b8b4394da71fc4b3287dc43a4527 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2618557 Reviewed-by: Jesse Schettler Reviewed-by: Zentaro Kavanagh Commit-Queue: Gavin Williams Cr-Commit-Position: refs/heads/master@{#841823} --- chromeos/components/scanning/resources/scan_preview.html | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/chromeos/components/scanning/resources/scan_preview.html b/chromeos/components/scanning/resources/scan_preview.html index dbad0f5bdd9b05..23ccf2f569dc7e 100644 --- a/chromeos/components/scanning/resources/scan_preview.html +++ b/chromeos/components/scanning/resources/scan_preview.html @@ -58,6 +58,10 @@ width: calc(100% - 2px); } + .scanned-image { + display: block; + } + /* Add top margin to all but the first scanned image. */ .scanned-image:nth-of-type(n+2) { margin-top: 8px;