[SNDVOL32] Read the Style value from the registry and use it as the default display...
authorEric Kohl <eric.kohl@reactos.org>
Mon, 11 Feb 2019 22:44:01 +0000 (23:44 +0100)
committerEric Kohl <eric.kohl@reactos.org>
Mon, 11 Feb 2019 22:44:01 +0000 (23:44 +0100)
CORE-15743

base/applications/sndvol32/misc.c
base/applications/sndvol32/sndvol32.c
base/applications/sndvol32/sndvol32.h

index 1f0ff84..670fa12 100644 (file)
@@ -128,9 +128,9 @@ LoadAndFormatString(IN HINSTANCE hInstance,
 }
 
 static const TCHAR AppRegSettings[] = TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Applets\\Volume Control");
-//static const TCHAR AppOptionsKey[] = TEXT("Options");
+static const TCHAR AppOptionsKey[] = TEXT("Options");
 static const TCHAR LineStatesValue[] = TEXT("LineStates");
-//static const TCHAR StyleValue[] = TEXT("Style");
+static const TCHAR StyleValue[] = TEXT("Style");
 
 HKEY hAppSettingsKey = NULL;
 
@@ -273,3 +273,29 @@ ExitClose:
 
     return Ret;
 }
+
+DWORD
+GetStyleValue(VOID)
+{
+    HKEY hOptionsKey;
+    DWORD dwStyle = 0, dwSize;
+
+    if (RegOpenKeyEx(hAppSettingsKey,
+                     AppOptionsKey,
+                     0,
+                     KEY_READ,
+                     &hOptionsKey) == ERROR_SUCCESS)
+    {
+        dwSize = sizeof(DWORD);
+        RegQueryValueEx(hOptionsKey,
+                        StyleValue,
+                        NULL,
+                        NULL,
+                        (LPBYTE)&dwStyle,
+                        &dwSize);
+
+        RegCloseKey(hOptionsKey);
+    }
+
+    return dwStyle;
+}
index 29e6dcf..011bec2 100644 (file)
@@ -1322,13 +1322,14 @@ CreateApplicationWindow(
 static
 BOOL
 HandleCommandLine(LPTSTR cmdline,
+                  DWORD dwStyle,
                   PWINDOW_MODE pMode,
                   PUINT pMixerId)
 {
     TCHAR option;
 
     *pMixerId = 0;
-    *pMode = SMALL_MODE;
+    *pMode = (dwStyle & 0x20) ? SMALL_MODE : NORMAL_MODE;
 
     while (*cmdline == _T(' ') || *cmdline == _T('-') || *cmdline == _T('/'))
     {
@@ -1347,11 +1348,6 @@ HandleCommandLine(LPTSTR cmdline,
             case 'D':
                 break;
 
-            case 'n': /* Normal size */
-            case 'N':
-                *pMode = NORMAL_MODE;
-                break;
-
             case 's': /* Small size */
             case 'S':
                 *pMode = SMALL_MODE;
@@ -1391,6 +1387,7 @@ _tWinMain(HINSTANCE hInstance,
     INITCOMMONCONTROLSEX Controls;
     WINDOW_MODE WindowMode = SMALL_MODE;
     UINT MixerId = 0;
+    DWORD dwStyle;
 
     UNREFERENCED_PARAMETER(hPrevInstance);
     UNREFERENCED_PARAMETER(nCmdShow);
@@ -1398,10 +1395,11 @@ _tWinMain(HINSTANCE hInstance,
     hAppInstance = hInstance;
     hAppHeap = GetProcessHeap();
 
-    HandleCommandLine(lpszCmdLine, &WindowMode, &MixerId);
-
     if (InitAppConfig())
     {
+        dwStyle = GetStyleValue();
+        HandleCommandLine(lpszCmdLine, dwStyle, &WindowMode, &MixerId);
+
         /* load the application title */
         if (!AllocAndLoadString(&lpAppTitle,
                                 hAppInstance,
index cf20366..65fcb36 100644 (file)
@@ -185,6 +185,9 @@ WriteLineConfig(IN LPTSTR szDeviceName,
                 IN PSNDVOL_REG_LINESTATE LineState,
                 IN DWORD cbSize);
 
+DWORD
+GetStyleValue(VOID);
+
 /* tray.c */
 
 INT_PTR