blob: 033b3b2bc316e3fba3c227056e689aa8b906b3ee [file] [log] [blame]
// Copyright 2015 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 UI_OZONE_PLATFORM_DRM_MOJO_DRM_HOST_DELEGATE_H_
#define UI_OZONE_PLATFORM_DRM_MOJO_DRM_HOST_DELEGATE_H_
#include "base/macros.h"
#include "mojo/services/ozone_drm_gpu/public/interfaces/ozone_drm_gpu.mojom.h"
#include "ui/ozone/platform/drm/host/drm_gpu_platform_support_host.h"
namespace ui {
class MojoDrmHostDelegate : public ui::DrmGpuPlatformSupportHostDelegate {
public:
explicit MojoDrmHostDelegate(mojo::OzoneDrmGpu* ozone_drm_gpu);
~MojoDrmHostDelegate() override;
private:
// DrmGpuPlatformSupportHostDelegate.
void CreateWindow(const gfx::AcceleratedWidget& widget) override;
void WindowBoundsChanged(const gfx::AcceleratedWidget& widget,
const gfx::Rect& bounds) override;
void AddGraphicsDevice(const base::FilePath& path,
const base::FileDescriptor& fd) override;
bool RefreshNativeDisplays() override;
bool ConfigureNativeDisplay(int64_t id,
const ui::DisplayMode_Params& mode,
const gfx::Point& originhost) override;
mojo::OzoneDrmGpu* ozone_drm_gpu_;
DISALLOW_COPY_AND_ASSIGN(MojoDrmHostDelegate);
};
} // namespace ui
#endif