#include "components/viz/service/display/overlay_processor_delegated_support.h"
#include "base/metrics/histogram_macros.h"
#include "base/strings/stringprintf.h"
#include "base/trace_event/trace_event.h"
#include "base/types/expected.h"
#include "components/viz/common/quads/draw_quad.h"
#include "components/viz/service/debugger/viz_debugger.h"
#include "components/viz/service/display/aggregated_frame.h"
#include "components/viz/service/display/overlay_candidate.h"
#include "components/viz/service/display/overlay_candidate_factory.h"
#include "ui/gfx/geometry/rect.h"
#include "ui/gfx/geometry/rect_f.h"
#include "ui/gfx/geometry/rrect_f.h"
#include "ui/gfx/geometry/transform.h"
#include "ui/gfx/geometry/vector2d_f.h"
namespace {
DBG_FLAG_FBOOL("delegated.disable.delegation", disable_delegation)
}
namespace viz {
base::expected<std::optional<OverlayCandidate>, DelegationStatus>
TryPromoteDrawQuadForDelegation(
const OverlayCandidateFactory& candidate_factory,
const DrawQuad* quad) { … }
void DebugLogBeforeDelegation(
const gfx::Rect& incoming_root_damage,
const SurfaceDamageRectList& surface_damage_rect_list) { … }
void DebugLogAfterDelegation(DelegationStatus status,
const OverlayCandidateList& candidates,
const gfx::Rect& outgoing_root_damage) { … }
bool ForceDisableDelegation() { … }
}