1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef UI_OZONE_COMMON_NATIVE_DISPLAY_DELEGATE_OZONE_H_
6 #define UI_OZONE_COMMON_NATIVE_DISPLAY_DELEGATE_OZONE_H_
8 #include "base/macros.h"
9 #include "base/memory/scoped_vector.h"
10 #include "ui/display/types/native_display_delegate.h"
14 class NativeDisplayDelegateOzone
: public NativeDisplayDelegate
{
16 NativeDisplayDelegateOzone();
17 ~NativeDisplayDelegateOzone() override
;
19 // NativeDisplayDelegate overrides:
20 void Initialize() override
;
21 void GrabServer() override
;
22 void UngrabServer() override
;
23 void TakeDisplayControl(const DisplayControlCallback
& callback
) override
;
24 void RelinquishDisplayControl(
25 const DisplayControlCallback
& callback
) override
;
26 void SyncWithServer() override
;
27 void SetBackgroundColor(uint32_t color_argb
) override
;
28 void ForceDPMSOn() override
;
29 void GetDisplays(const GetDisplaysCallback
& callback
) override
;
30 void AddMode(const ui::DisplaySnapshot
& output
,
31 const ui::DisplayMode
* mode
) override
;
32 void Configure(const ui::DisplaySnapshot
& output
,
33 const ui::DisplayMode
* mode
,
34 const gfx::Point
& origin
,
35 const ConfigureCallback
& callback
) override
;
36 void CreateFrameBuffer(const gfx::Size
& size
) override
;
37 void GetHDCPState(const ui::DisplaySnapshot
& output
,
38 const GetHDCPStateCallback
& callback
) override
;
39 void SetHDCPState(const ui::DisplaySnapshot
& output
,
41 const SetHDCPStateCallback
& callback
) override
;
42 std::vector
<ui::ColorCalibrationProfile
> GetAvailableColorCalibrationProfiles(
43 const ui::DisplaySnapshot
& output
) override
;
44 bool SetColorCalibrationProfile(
45 const ui::DisplaySnapshot
& output
,
46 ui::ColorCalibrationProfile new_profile
) override
;
47 bool SetGammaRamp(const ui::DisplaySnapshot
& output
,
48 const std::vector
<GammaRampRGBEntry
>& lut
) override
;
50 void AddObserver(NativeDisplayObserver
* observer
) override
;
51 void RemoveObserver(NativeDisplayObserver
* observer
) override
;
54 ScopedVector
<DisplaySnapshot
> displays_
;
56 DISALLOW_COPY_AND_ASSIGN(NativeDisplayDelegateOzone
);
61 #endif // UI_OZONE_COMMON_NATIVE_DISPLAY_DELEGATE_OZONE_H_