[SNDVOL32] Read the Style value from the registry and use it as the default display mode. The /n option is no longer needed.

CORE-15743
This commit is contained in:
Eric Kohl 2019-02-11 23:44:01 +01:00
parent 45f0d7413c
commit f6e819fcb8
3 changed files with 37 additions and 10 deletions

View 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;
}

View 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,

View file

@ -185,6 +185,9 @@ WriteLineConfig(IN LPTSTR szDeviceName,
IN PSNDVOL_REG_LINESTATE LineState,
IN DWORD cbSize);
DWORD
GetStyleValue(VOID);
/* tray.c */
INT_PTR