| Index: components/display_compositor/compositor_overlay_candidate_validator_ozone.cc
|
| diff --git a/components/display_compositor/compositor_overlay_candidate_validator_ozone.cc b/components/display_compositor/compositor_overlay_candidate_validator_ozone.cc
|
| deleted file mode 100644
|
| index 901076af3ba7f0aad7fb74f3bfe95c3138f6a89a..0000000000000000000000000000000000000000
|
| --- a/components/display_compositor/compositor_overlay_candidate_validator_ozone.cc
|
| +++ /dev/null
|
| @@ -1,128 +0,0 @@
|
| -// Copyright 2014 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 "components/display_compositor/compositor_overlay_candidate_validator_ozone.h"
|
| -
|
| -#include <stddef.h>
|
| -
|
| -#include <utility>
|
| -
|
| -#include "base/bind.h"
|
| -#include "base/memory/ptr_util.h"
|
| -#include "base/strings/string_split.h"
|
| -#include "cc/output/overlay_strategy_fullscreen.h"
|
| -#include "cc/output/overlay_strategy_single_on_top.h"
|
| -#include "cc/output/overlay_strategy_underlay.h"
|
| -#include "cc/output/overlay_strategy_underlay_cast.h"
|
| -#include "ui/ozone/public/overlay_candidates_ozone.h"
|
| -
|
| -namespace display_compositor {
|
| -namespace {
|
| -// Templated function used to create an OverlayProcessor::Strategy
|
| -// of type |S|.
|
| -template <typename S>
|
| -std::unique_ptr<cc::OverlayProcessor::Strategy> MakeOverlayStrategy(
|
| - CompositorOverlayCandidateValidatorOzone* capability_checker) {
|
| - return base::MakeUnique<S>(capability_checker);
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| -// |overlay_candidates| is an object used to answer questions about possible
|
| -// overlays configuarations.
|
| -// |strategies_string| is a comma-separated string containing all the overaly
|
| -// strategies that should be returned by GetStrategies.
|
| -// If |strategies_string| is empty "single-on-top,underlay" will be used as
|
| -// default.
|
| -CompositorOverlayCandidateValidatorOzone::
|
| - CompositorOverlayCandidateValidatorOzone(
|
| - std::unique_ptr<ui::OverlayCandidatesOzone> overlay_candidates,
|
| - std::string strategies_string)
|
| - : overlay_candidates_(std::move(overlay_candidates)),
|
| - software_mirror_active_(false) {
|
| - if (!strategies_string.length())
|
| - strategies_string = "single-on-top,underlay";
|
| -
|
| - for (const auto& strategy_name :
|
| - base::SplitStringPiece(strategies_string, ",", base::TRIM_WHITESPACE,
|
| - base::SPLIT_WANT_NONEMPTY)) {
|
| - if (strategy_name == "single-fullscreen") {
|
| - strategies_instantiators_.push_back(
|
| - base::Bind(MakeOverlayStrategy<cc::OverlayStrategyFullscreen>));
|
| - } else if (strategy_name == "single-on-top") {
|
| - strategies_instantiators_.push_back(
|
| - base::Bind(MakeOverlayStrategy<cc::OverlayStrategySingleOnTop>));
|
| - } else if (strategy_name == "underlay") {
|
| - strategies_instantiators_.push_back(
|
| - base::Bind(MakeOverlayStrategy<cc::OverlayStrategyUnderlay>));
|
| - } else if (strategy_name == "cast") {
|
| - strategies_instantiators_.push_back(
|
| - base::Bind(MakeOverlayStrategy<cc::OverlayStrategyUnderlayCast>));
|
| - } else {
|
| - LOG(WARNING) << "Unrecognized overlay strategy " << strategy_name;
|
| - }
|
| - }
|
| -}
|
| -
|
| -CompositorOverlayCandidateValidatorOzone::
|
| - ~CompositorOverlayCandidateValidatorOzone() {}
|
| -
|
| -void CompositorOverlayCandidateValidatorOzone::GetStrategies(
|
| - cc::OverlayProcessor::StrategyList* strategies) {
|
| - for (auto& instantiator : strategies_instantiators_)
|
| - strategies->push_back(instantiator.Run(this));
|
| -}
|
| -
|
| -bool CompositorOverlayCandidateValidatorOzone::AllowCALayerOverlays() {
|
| - return false;
|
| -}
|
| -
|
| -bool CompositorOverlayCandidateValidatorOzone::AllowDCLayerOverlays() {
|
| - return false;
|
| -}
|
| -
|
| -void CompositorOverlayCandidateValidatorOzone::CheckOverlaySupport(
|
| - cc::OverlayCandidateList* surfaces) {
|
| - // SW mirroring copies out of the framebuffer, so we can't remove any
|
| - // quads for overlaying, otherwise the output is incorrect.
|
| - if (software_mirror_active_) {
|
| - for (size_t i = 0; i < surfaces->size(); i++) {
|
| - surfaces->at(i).overlay_handled = false;
|
| - }
|
| - return;
|
| - }
|
| -
|
| - DCHECK_GE(2U, surfaces->size());
|
| - ui::OverlayCandidatesOzone::OverlaySurfaceCandidateList ozone_surface_list;
|
| - ozone_surface_list.resize(surfaces->size());
|
| -
|
| - for (size_t i = 0; i < surfaces->size(); i++) {
|
| - ozone_surface_list.at(i).transform = surfaces->at(i).transform;
|
| - ozone_surface_list.at(i).format = surfaces->at(i).format;
|
| - ozone_surface_list.at(i).display_rect = surfaces->at(i).display_rect;
|
| - ozone_surface_list.at(i).crop_rect = surfaces->at(i).uv_rect;
|
| - ozone_surface_list.at(i).quad_rect_in_target_space =
|
| - surfaces->at(i).quad_rect_in_target_space;
|
| - ozone_surface_list.at(i).clip_rect = surfaces->at(i).clip_rect;
|
| - ozone_surface_list.at(i).is_clipped = surfaces->at(i).is_clipped;
|
| - ozone_surface_list.at(i).plane_z_order = surfaces->at(i).plane_z_order;
|
| - ozone_surface_list.at(i).buffer_size =
|
| - surfaces->at(i).resource_size_in_pixels;
|
| - }
|
| -
|
| - overlay_candidates_->CheckOverlaySupport(&ozone_surface_list);
|
| - DCHECK_EQ(surfaces->size(), ozone_surface_list.size());
|
| -
|
| - for (size_t i = 0; i < surfaces->size(); i++) {
|
| - surfaces->at(i).overlay_handled = ozone_surface_list.at(i).overlay_handled;
|
| - surfaces->at(i).display_rect = ozone_surface_list.at(i).display_rect;
|
| - }
|
| -}
|
| -
|
| -void CompositorOverlayCandidateValidatorOzone::SetSoftwareMirrorMode(
|
| - bool enabled) {
|
| - software_mirror_active_ = enabled;
|
| -}
|
| -
|
| -} // namespace display_compositor
|
|
|