From 7024ddba4b91d66341e1e076aca90b55aaf6641d Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 9 Jan 2012 13:11:14 +0100 Subject: Platform style hints: Introduce keyboard repeat rate. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I556c2ecec7d5368122875a659af3ae7db88aa481 Reviewed-by: Samuel Rødal --- src/plugins/platforms/windows/qwindowsintegration.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/plugins/platforms/windows/qwindowsintegration.cpp') diff --git a/src/plugins/platforms/windows/qwindowsintegration.cpp b/src/plugins/platforms/windows/qwindowsintegration.cpp index 4633173e7e..8bb8bafe74 100644 --- a/src/plugins/platforms/windows/qwindowsintegration.cpp +++ b/src/plugins/platforms/windows/qwindowsintegration.cpp @@ -271,6 +271,14 @@ QPlatformFontDatabase *QWindowsIntegration::fontDatabase() const return d->m_fontDatabase; } +static inline int keyBoardAutoRepeatRateMS() +{ + DWORD time = 0; + if (SystemParametersInfo(SPI_GETKEYBOARDSPEED, 0, &time, 0)) + return time ? 1000 / static_cast(time) : 500; + return 30; +} + QVariant QWindowsIntegration::styleHint(QPlatformIntegration::StyleHint hint) const { switch (hint) { @@ -278,7 +286,8 @@ QVariant QWindowsIntegration::styleHint(QPlatformIntegration::StyleHint hint) co if (const unsigned timeMS = GetCaretBlinkTime()) return QVariant(int(timeMS)); break; - + case KeyboardAutoRepeatRate: + return QVariant(keyBoardAutoRepeatRateMS()); case QPlatformIntegration::StartDragTime: case QPlatformIntegration::StartDragDistance: case QPlatformIntegration::MouseDoubleClickInterval: -- cgit v1.2.3