diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-09-18 14:34:04 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-10-04 11:15:27 +0000 |
commit | e6430e577f105ad8813c92e75c54660c4985026e (patch) | |
tree | 88115e5d1fb471fea807111924dcccbeadbf9e4f /chromium/ui/accelerated_widget_mac | |
parent | 53d399fe6415a96ea6986ec0d402a9c07da72453 (diff) | |
download | qtwebengine-chromium-e6430e577f105ad8813c92e75c54660c4985026e.tar.gz |
BASELINE: Update Chromium to 61.0.3163.99
Change-Id: I8452f34574d88ca2b27af9bd56fc9ff3f16b1367
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/ui/accelerated_widget_mac')
6 files changed, 28 insertions, 9 deletions
diff --git a/chromium/ui/accelerated_widget_mac/BUILD.gn b/chromium/ui/accelerated_widget_mac/BUILD.gn index 5ca58ad0a4b..82823dd3b70 100644 --- a/chromium/ui/accelerated_widget_mac/BUILD.gn +++ b/chromium/ui/accelerated_widget_mac/BUILD.gn @@ -9,6 +9,7 @@ component("accelerated_widget_mac") { "accelerated_widget_mac.h", "accelerated_widget_mac.mm", "accelerated_widget_mac_export.h", + "availability_macros.h", "ca_layer_tree_coordinator.h", "ca_layer_tree_coordinator.mm", "ca_renderer_layer_tree.h", diff --git a/chromium/ui/accelerated_widget_mac/availability_macros.h b/chromium/ui/accelerated_widget_mac/availability_macros.h new file mode 100644 index 00000000000..bc0bfe71d00 --- /dev/null +++ b/chromium/ui/accelerated_widget_mac/availability_macros.h @@ -0,0 +1,12 @@ +// Copyright 2017 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. + +// AVSampleBufferDisplayLayer has incorrectly been marked as available from +// macOS 10.10, whereas it's been available since at least macOS 10.9. This +// macro allows us to use AVSampleBufferDisplayLayer109 in its place. +// Since we don't deploy to lower than 10.9, just disabling the warning is fine. +#define AVSampleBufferDisplayLayer109 \ + _Pragma("clang diagnostic push") \ + _Pragma("clang diagnostic ignored \"-Wunguarded-availability\"") \ + AVSampleBufferDisplayLayer _Pragma("clang diagnostic pop") diff --git a/chromium/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm b/chromium/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm index b4e992ede1d..760db452608 100644 --- a/chromium/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm +++ b/chromium/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm @@ -8,6 +8,7 @@ #include "base/mac/mac_util.h" #include "base/trace_event/trace_event.h" +#include "ui/accelerated_widget_mac/availability_macros.h" #include "ui/base/cocoa/animation_utils.h" namespace ui { @@ -29,7 +30,7 @@ CALayerTreeCoordinator::CALayerTreeCoordinator( if (allow_av_sample_buffer_display_layer_) { fullscreen_low_power_layer_.reset( - [[AVSampleBufferDisplayLayer alloc] init]); + [[AVSampleBufferDisplayLayer109 alloc] init]); } } } diff --git a/chromium/ui/accelerated_widget_mac/ca_layer_tree_unittest_mac.mm b/chromium/ui/accelerated_widget_mac/ca_layer_tree_unittest_mac.mm index 9471415b391..f41e17af911 100644 --- a/chromium/ui/accelerated_widget_mac/ca_layer_tree_unittest_mac.mm +++ b/chromium/ui/accelerated_widget_mac/ca_layer_tree_unittest_mac.mm @@ -10,6 +10,7 @@ #include "testing/gtest/include/gtest/gtest.h" #include "testing/gtest_mac.h" #include "third_party/skia/include/core/SkColor.h" +#include "ui/accelerated_widget_mac/availability_macros.h" #include "ui/accelerated_widget_mac/ca_renderer_layer_tree.h" #include "ui/gfx/geometry/dip_util.h" #include "ui/gfx/mac/io_surface.h" @@ -90,11 +91,12 @@ class CALayerTreeTest : public testing::Test { void SetUp() override { superlayer_.reset([[CALayer alloc] init]); fullscreen_low_power_layer_.reset( - [[AVSampleBufferDisplayLayer alloc] init]); + [[AVSampleBufferDisplayLayer109 alloc] init]); } base::scoped_nsobject<CALayer> superlayer_; - base::scoped_nsobject<AVSampleBufferDisplayLayer> fullscreen_low_power_layer_; + base::scoped_nsobject<AVSampleBufferDisplayLayer109> + fullscreen_low_power_layer_; }; // Test updating each layer's properties. diff --git a/chromium/ui/accelerated_widget_mac/ca_renderer_layer_tree.h b/chromium/ui/accelerated_widget_mac/ca_renderer_layer_tree.h index 33fae65156d..37678eb4459 100644 --- a/chromium/ui/accelerated_widget_mac/ca_renderer_layer_tree.h +++ b/chromium/ui/accelerated_widget_mac/ca_renderer_layer_tree.h @@ -16,6 +16,7 @@ #include "base/mac/scoped_nsobject.h" #include "base/memory/ref_counted.h" #include "ui/accelerated_widget_mac/accelerated_widget_mac_export.h" +#include "ui/accelerated_widget_mac/availability_macros.h" #include "ui/gfx/geometry/rect.h" #include "ui/gfx/geometry/rect_f.h" #include "ui/gfx/mac/io_surface.h" @@ -57,8 +58,9 @@ class ACCELERATED_WIDGET_MAC_EXPORT CARendererLayerTree { // layer on a black background. If so, then set |fullscreen_low_power_layer| // to draw this content and return true. Otherwise return false. This is to // be called after committing scheduled CALayers. + bool CommitFullscreenLowPowerLayer( - AVSampleBufferDisplayLayer* fullscreen_low_power_layer); + AVSampleBufferDisplayLayer109* fullscreen_low_power_layer); // Returns the contents used for a given solid color. id ContentsForSolidColorForTesting(unsigned int color); @@ -184,7 +186,7 @@ class ACCELERATED_WIDGET_MAC_EXPORT CARendererLayerTree { // If this layer's contents can be represented as an // AVSampleBufferDisplayLayer, then |ca_layer| will point to |av_layer|. - base::scoped_nsobject<AVSampleBufferDisplayLayer> av_layer; + base::scoped_nsobject<AVSampleBufferDisplayLayer109> av_layer; bool use_av_layer = false; private: diff --git a/chromium/ui/accelerated_widget_mac/ca_renderer_layer_tree.mm b/chromium/ui/accelerated_widget_mac/ca_renderer_layer_tree.mm index bfe5a2ee1c1..d9be65f778b 100644 --- a/chromium/ui/accelerated_widget_mac/ca_renderer_layer_tree.mm +++ b/chromium/ui/accelerated_widget_mac/ca_renderer_layer_tree.mm @@ -15,6 +15,7 @@ #include "base/mac/sdk_forward_declarations.h" #include "base/trace_event/trace_event.h" #include "third_party/skia/include/core/SkColor.h" +#include "ui/accelerated_widget_mac/availability_macros.h" #include "ui/base/cocoa/animation_utils.h" #include "ui/base/ui_base_switches.h" #include "ui/gfx/geometry/dip_util.h" @@ -55,7 +56,7 @@ namespace { // This will enqueue |io_surface| to be drawn by |av_layer|. This will // retain |cv_pixel_buffer| until it is no longer being displayed. bool AVSampleBufferDisplayLayerEnqueueCVPixelBuffer( - AVSampleBufferDisplayLayer* av_layer, + AVSampleBufferDisplayLayer109* av_layer, CVPixelBufferRef cv_pixel_buffer) { OSStatus os_status = noErr; @@ -113,7 +114,7 @@ bool AVSampleBufferDisplayLayerEnqueueCVPixelBuffer( // |io_surface| in a CVPixelBuffer. This will increase the in-use count // of and retain |io_surface| until it is no longer being displayed. bool AVSampleBufferDisplayLayerEnqueueIOSurface( - AVSampleBufferDisplayLayer* av_layer, + AVSampleBufferDisplayLayer109* av_layer, IOSurfaceRef io_surface) { CVReturn cv_return = kCVReturnSuccess; @@ -245,7 +246,7 @@ void CARendererLayerTree::CommitScheduledCALayers( } bool CARendererLayerTree::CommitFullscreenLowPowerLayer( - AVSampleBufferDisplayLayer* fullscreen_low_power_layer) { + AVSampleBufferDisplayLayer109* fullscreen_low_power_layer) { DCHECK(has_committed_); const ContentLayer* video_layer = nullptr; gfx::RectF video_layer_frame_dip; @@ -672,7 +673,7 @@ void CARendererLayerTree::ContentLayer::CommitToCA(CALayer* superlayer, update_ca_filter = old_layer->ca_filter != ca_filter; } else { if (use_av_layer) { - av_layer.reset([[AVSampleBufferDisplayLayer alloc] init]); + av_layer.reset([[AVSampleBufferDisplayLayer109 alloc] init]); ca_layer.reset([av_layer retain]); [av_layer setVideoGravity:AVLayerVideoGravityResize]; } else { |