[Libreoffice-commits] core.git: vcl/win

Abhilash Singh abhilash300singh at gmail.com
Thu Dec 8 09:12:20 UTC 2016


 vcl/win/gdi/salnativewidgets-luna.cxx |   25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

New commits:
commit 64889c9fb6c3e8e7b7a7349833f7a10236104168
Author: Abhilash Singh <abhilash300singh at gmail.com>
Date:   Wed Dec 7 10:26:10 2016 +0530

    tdf#54169 Don't show acclerators by default on Windows
    
    Change-Id: I2bdecae83ed23e4f6fff0be99b46005a6db43837
    Reviewed-on: https://gerrit.libreoffice.org/31711
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>

diff --git a/vcl/win/gdi/salnativewidgets-luna.cxx b/vcl/win/gdi/salnativewidgets-luna.cxx
index 23fa61a..bb053c6 100644
--- a/vcl/win/gdi/salnativewidgets-luna.cxx
+++ b/vcl/win/gdi/salnativewidgets-luna.cxx
@@ -188,6 +188,31 @@ BOOL VisualStylesAPI::IsThemeActive()
 void SalData::initNWF()
 {
     ImplSVData* pSVData = ImplGetSVData();
+    pSVData->maNWFData.mbEnableAccel = false; // Don't show accelerators all the time
+    pSVData->maNWFData.mbAutoAccel = true;    // Show accelerators only when alt is pressed
+
+    HKEY hkey;
+
+    if (ERROR_SUCCESS == RegOpenKey(HKEY_CURRENT_USER, "Control Panel\\Accessibility\\Keyboard Preference", &hkey))
+    {
+        DWORD dwType = 0;
+        sal_uInt8 Data[2]; // possible values: "1", "0"
+        DWORD cbData = sizeof(Data);
+
+        if (ERROR_SUCCESS == RegQueryValueEx(hkey, "On", nullptr, &dwType, Data, &cbData)) // Check whether "make keyboard easier to use" is turned on
+        {
+            if (dwType == REG_SZ)
+            {
+                bool bValue = ((0 == stricmp(reinterpret_cast<const char *>(Data), "1")));
+                if(bValue)
+                {
+                    pSVData->maNWFData.mbEnableAccel = true; // Always show accelerators
+                    pSVData->maNWFData.mbAutoAccel = false;
+                }
+            }
+        }
+        RegCloseKey(hkey);
+    }
 
     // the menu bar and the top docking area should have a common background (gradient)
     pSVData->maNWFData.mbMenuBarDockingAreaCommonBG = true;


More information about the Libreoffice-commits mailing list