Chromium Code Reviews| Index: ui/ozone/platform/drm/gpu/drm_display.cc |
| diff --git a/ui/ozone/platform/drm/gpu/drm_display.cc b/ui/ozone/platform/drm/gpu/drm_display.cc |
| index 076cc59d356302ed9e79a8a47dbaebea13d1e27b..f4b59746859fc63737ccf98a1a4bef7e0937de00 100644 |
| --- a/ui/ozone/platform/drm/gpu/drm_display.cc |
| +++ b/ui/ozone/platform/drm/gpu/drm_display.cc |
| @@ -170,10 +170,21 @@ bool DrmDisplay::SetHDCPState(HDCPState state) { |
| GetContentProtectionValue(hdcp_property.get(), state)); |
| } |
| -void DrmDisplay::SetGammaRamp(const std::vector<GammaRampRGBEntry>& lut) { |
| - if (!drm_->SetGammaRamp(crtc_, lut)) { |
| - LOG(ERROR) << "Failed to set gamma ramp for display: crtc_id = " << crtc_ |
| - << " size = " << lut.size(); |
| +void DrmDisplay::SetColorCorrection( |
| + const std::vector<GammaRampRGBEntry>& degamma_lut, |
| + const std::vector<GammaRampRGBEntry>& gamma_lut, |
| + const std::vector<float>& correction_matrix) { |
| + if (degamma_lut.size() == 0) { |
|
dcheng
2016/02/23 20:01:55
.empty()
robert.bradford
2016/02/24 12:34:20
Done.
|
| + if (!drm_->SetGammaRamp(crtc_, gamma_lut)) { |
| + LOG(ERROR) << "Failed to set gamma ramp for display: crtc_id = " << crtc_ |
| + << " size = " << gamma_lut.size(); |
| + } |
| + } else { |
| + if (!drm_->SetColorCorrection(crtc_, degamma_lut, gamma_lut, |
| + correction_matrix)) { |
| + LOG(ERROR) << "Failed to set color correction for display: crtc_id = " |
| + << crtc_; |
| + } |
| } |
| } |