blob: 2cfcbda20e0d6dcf1e0d749be2a293d10f4b387d [file] [log] [blame]
// Copyright 2013 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 SERVICES_NATIVE_VIEWPORT_PLATFORM_VIEWPORT_HEADLESS_H_
#define SERVICES_NATIVE_VIEWPORT_PLATFORM_VIEWPORT_HEADLESS_H_
#include "base/macros.h"
#include "services/native_viewport/platform_viewport.h"
#include "ui/gfx/rect.h"
namespace native_viewport {
class PlatformViewportHeadless : public PlatformViewport {
public:
~PlatformViewportHeadless() override;
static scoped_ptr<PlatformViewport> Create(Delegate* delegate);
private:
explicit PlatformViewportHeadless(Delegate* delegate);
// Overridden from PlatformViewport:
void Init(const gfx::Rect& bounds) override;
void Show() override;
void Hide() override;
void Close() override;
gfx::Size GetSize() override;
void SetBounds(const gfx::Rect& bounds) override;
Delegate* delegate_;
mojo::ViewportMetricsPtr metrics_;
DISALLOW_COPY_AND_ASSIGN(PlatformViewportHeadless);
};
} // namespace native_viewport
#endif // SERVICES_NATIVE_VIEWPORT_PLATFORM_VIEWPORT_HEADLESS_H_