1
0
mirror of https://github.com/valinet/ExplorerPatcher.git synced 2024-12-18 02:16:00 +01:00

Taskbar11: Fixed a bug that reset the "never combine" setting on OS builds 22621.2361+

This commit is contained in:
Valentin Radu 2023-10-04 02:33:55 +03:00
parent 070639360d
commit 085b3dd9f7
3 changed files with 18 additions and 41 deletions

View File

@ -11506,51 +11506,20 @@ DWORD Inject(BOOL bIsExplorer)
ResetEvent(hEvent);
}*/
if (bOldTaskbar)
{
if (IsWindows11())
{
CreateThread(
0,
0,
PlayStartupSound,
0,
0,
0
);
if (IsWindows11()) {
if (bOldTaskbar) {
CreateThread(0, 0, PlayStartupSound, 0, 0, 0);
printf("Play startup sound thread...\n");
}
}
if (bOldTaskbar)
{
if (IsWindows11())
{
CreateThread(
0,
0,
SignalShellReady,
dwExplorerReadyDelay,
0,
0
);
CreateThread(0, 0, SignalShellReady, dwExplorerReadyDelay, 0, 0);
printf("Signal shell ready...\n");
} else {
CreateThread(0, 0, FixTaskbarAutohide, 0, 0, 0);
if (!IsWindows11Version22H2Build2361OrHigher()) {
RegDeleteKeyValueW(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced", L"TaskbarGlomLevel");
RegDeleteKeyValueW(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced", L"MMTaskbarGlomLevel");
}
}
}
else
{
CreateThread(
0,
0,
FixTaskbarAutohide,
0,
0,
0
);
RegDeleteKeyValueW(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced", L"TaskbarGlomLevel");
RegDeleteKeyValueW(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced", L"MMTaskbarGlomLevel");
}
if (IsWindows11Version22H2OrHigher() && bOldTaskbar)
{

View File

@ -7,6 +7,7 @@
#include <winstring.h>
#include <stdio.h>
#include <Shlwapi.h>
#include "osutility.h"
#define LVT_LOC_NONE 0
#define LVT_LOC_BOTTOMLEFT 1

View File

@ -87,4 +87,11 @@ inline BOOL IsWindows11Version22H2Build2134OrHigher()
if (global_rovi.dwBuildNumber > 22621) return TRUE;
return global_rovi.dwBuildNumber == 22621 && global_ubr >= 2134;
}
inline BOOL IsWindows11Version22H2Build2361OrHigher()
{
if (!global_rovi.dwMajorVersion) global_ubr = VnGetOSVersionAndUBR(&global_rovi);
if (global_rovi.dwBuildNumber > 22621) return TRUE;
return global_rovi.dwBuildNumber == 22621 && global_ubr >= 2361;
}
#endif