Discussion:
Michael Müller : dxgi: Implement dxgi_output_GetGammaControlCapabilities().
Alexandre Julliard
2018-11-30 20:34:42 UTC
Permalink
Module: wine
Branch: master
Commit: ad76b1fb36c73133586368a38f280e0de0744c33
URL: https://source.winehq.org/git/wine.git/?a=commit;h=ad76b1fb36c73133586368a38f280e0de0744c33

Author: Michael Müller <***@fds-team.de>
Date: Fri Nov 30 14:43:03 2018 +0100

dxgi: Implement dxgi_output_GetGammaControlCapabilities().

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43584
Signed-off-by: Józef Kucia <***@codeweavers.com>
Signed-off-by: Henri Verbeet <***@codeweavers.com>
Signed-off-by: Alexandre Julliard <***@winehq.org>

---

dlls/dxgi/output.c | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/dlls/dxgi/output.c b/dlls/dxgi/output.c
index 868a368..4a508b3 100644
--- a/dlls/dxgi/output.c
+++ b/dlls/dxgi/output.c
@@ -297,9 +297,22 @@ static void STDMETHODCALLTYPE dxgi_output_ReleaseOwnership(IDXGIOutput4 *iface)
static HRESULT STDMETHODCALLTYPE dxgi_output_GetGammaControlCapabilities(IDXGIOutput4 *iface,
DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps)
{
- FIXME("iface %p, gamma_caps %p stub!\n", iface, gamma_caps);
+ unsigned int i;

- return E_NOTIMPL;
+ TRACE("iface %p, gamma_caps %p.\n", iface, gamma_caps);
+
+ if (!gamma_caps)
+ return E_INVALIDARG;
+
+ gamma_caps->ScaleAndOffsetSupported = FALSE;
+ gamma_caps->MaxConvertedValue = 1.0f;
+ gamma_caps->MinConvertedValue = 0.0f;
+ gamma_caps->NumGammaControlPoints = 256;
+
+ for (i = 0; i < gamma_caps->NumGammaControlPoints; ++i)
+ gamma_caps->ControlPointPositions[i] = i / 255.0f;
+
+ return S_OK;
}

static HRESULT STDMETHODCALLTYPE dxgi_output_SetGammaControl(I

Loading...