Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(598)

Unified Diff: ui/ozone/platform/drm/gpu/drm_thread_message_proxy.cc

Issue 1182063002: Add support for more advanced color correction (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@qcms-fixed-point-gamma
Patch Set: Refactor for glevin@ and load VCGT always Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/ozone/platform/drm/gpu/drm_thread_message_proxy.cc
diff --git a/ui/ozone/platform/drm/gpu/drm_thread_message_proxy.cc b/ui/ozone/platform/drm/gpu/drm_thread_message_proxy.cc
index f0647eb7085bfbc11fd9f7ce565ff80cb2e7b6a4..9b508f9d5dd38aad1ae894943ac54f3af73a866d 100644
--- a/ui/ozone/platform/drm/gpu/drm_thread_message_proxy.cc
+++ b/ui/ozone/platform/drm/gpu/drm_thread_message_proxy.cc
@@ -51,7 +51,8 @@ bool DrmThreadMessageProxy::OnMessageReceived(const IPC::Message& message) {
OnRemoveGraphicsDevice)
IPC_MESSAGE_HANDLER(OzoneGpuMsg_GetHDCPState, OnGetHDCPState)
IPC_MESSAGE_HANDLER(OzoneGpuMsg_SetHDCPState, OnSetHDCPState)
- IPC_MESSAGE_HANDLER(OzoneGpuMsg_SetGammaRamp, OnSetGammaRamp);
+ IPC_MESSAGE_HANDLER(OzoneGpuMsg_SetGammaRamp, OnSetGammaRamp)
+ IPC_MESSAGE_HANDLER(OzoneGpuMsg_SetColorCorrection, OnSetColorCorrection)
IPC_MESSAGE_HANDLER(OzoneGpuMsg_CheckOverlayCapabilities,
OnCheckOverlayCapabilities)
IPC_MESSAGE_UNHANDLED(handled = false);
@@ -218,6 +219,18 @@ void DrmThreadMessageProxy::OnSetGammaRamp(
base::Unretained(drm_thread_), id, lut));
}
+void DrmThreadMessageProxy::OnSetColorCorrection(
+ int64_t id,
+ const std::vector<GammaRampRGBEntry>& degamma_lut,
+ const std::vector<GammaRampRGBEntry>& gamma_lut,
+ const std::vector<float>& correction_matrix) {
+ DCHECK(drm_thread_->IsRunning());
+ drm_thread_->task_runner()->PostTask(
+ FROM_HERE,
+ base::Bind(&DrmThread::SetColorCorrection, base::Unretained(drm_thread_),
+ id, degamma_lut, gamma_lut, correction_matrix));
+}
+
void DrmThreadMessageProxy::OnCheckOverlayCapabilitiesCallback(
gfx::AcceleratedWidget widget,
const std::vector<OverlayCheck_Params>& overlays) const {

Powered by Google App Engine
This is Rietveld 408576698