blob: 4fcbd9effc49bf2235f1a8cc54a4ef89494565d0 [file] [log] [blame]
// 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.
#include "cc/output/compositor_frame.h"
#include "content/common/content_export.h"
namespace content {
// This struct contains the properties that are constant among all
// CompositorFrames that the renderer submits to the same surface.
struct CONTENT_EXPORT RenderWidgetSurfaceProperties {
static RenderWidgetSurfaceProperties FromCompositorFrame(
const cc::CompositorFrame& frame);
RenderWidgetSurfaceProperties(const RenderWidgetSurfaceProperties& other);
RenderWidgetSurfaceProperties& operator=(
const RenderWidgetSurfaceProperties& other);
bool operator==(const RenderWidgetSurfaceProperties& other) const;
bool operator!=(const RenderWidgetSurfaceProperties& other) const;
gfx::Size size;
float device_scale_factor = 0;
float top_controls_height = 0;
float top_controls_shown_ratio = 0;
float bottom_controls_height = 0;
float bottom_controls_shown_ratio = 0;
cc::Selection<gfx::SelectionBound> selection;
bool has_transparent_background = false;
} // namespace content