Index: ui/ozone/platform/drm/gpu/drm_gpu_platform_support.cc |
diff --git a/ui/ozone/platform/drm/gpu/drm_gpu_platform_support.cc b/ui/ozone/platform/drm/gpu/drm_gpu_platform_support.cc |
index 495307f85e4abcbfcbdd338b19c611adc4ca582f..728fb6a4d7db3048d42cf5098249bc96834a5c9a 100644 |
--- a/ui/ozone/platform/drm/gpu/drm_gpu_platform_support.cc |
+++ b/ui/ozone/platform/drm/gpu/drm_gpu_platform_support.cc |
@@ -213,6 +213,7 @@ bool DrmGpuPlatformSupport::OnMessageReceived(const IPC::Message& message) { |
OnRelinquishDisplayControl) |
IPC_MESSAGE_HANDLER(OzoneGpuMsg_AddGraphicsDevice, OnAddGraphicsDevice) |
IPC_MESSAGE_HANDLER(OzoneGpuMsg_RemoveGraphicsDevice, OnRemoveGraphicsDevice) |
+ IPC_MESSAGE_HANDLER(OzoneGpuMsg_SetGammaRamp, OnSetGammaRamp); |
IPC_MESSAGE_UNHANDLED(handled = false); |
IPC_END_MESSAGE_MAP() |
@@ -291,6 +292,19 @@ void DrmGpuPlatformSupport::OnRemoveGraphicsDevice(const base::FilePath& path) { |
ndd_->RemoveGraphicsDevice(path); |
} |
+void DrmGpuPlatformSupport::OnSetGammaRamp(int64_t id, |
+ const GammaRampRGBData& lut) { |
+ std::vector<uint16_t> r, g, b; |
+ |
+ for (unsigned int i = 0; i < lut.size(); ++i) { |
+ r.push_back(get<0>(lut[i])); |
+ g.push_back(get<1>(lut[i])); |
+ b.push_back(get<2>(lut[i])); |
+ } |
+ |
+ ndd_->SetGammaRamp(id, r, g, b); |
+} |
+ |
void DrmGpuPlatformSupport::RelinquishGpuResources( |
const base::Closure& callback) { |
callback.Run(); |