mirror of
https://github.com/valinet/ExplorerPatcher.git
synced 2025-02-17 11:08:41 +01:00
System tray icon improvements
This commit is contained in:
parent
6956b23307
commit
25d21d8ed0
@ -2,6 +2,13 @@
|
|||||||
|
|
||||||
This document includes the same release notes as in the [Releases](https://github.com/valinet/ExplorerPatcher/releases) section on GitHub.
|
This document includes the same release notes as in the [Releases](https://github.com/valinet/ExplorerPatcher/releases) section on GitHub.
|
||||||
|
|
||||||
|
## 22000.194.0.26
|
||||||
|
|
||||||
|
Tested on build: 22000.194.
|
||||||
|
|
||||||
|
* Option to open Network and Sharing Center instead if Network settings when right clicking the network icon in the system tray
|
||||||
|
* Centered network and sound right click menus and made them toggle on right click
|
||||||
|
|
||||||
## 22000.194.0.25
|
## 22000.194.0.25
|
||||||
|
|
||||||
Tested on build: 22000.194.
|
Tested on build: 22000.194.
|
||||||
|
@ -51,8 +51,8 @@ END
|
|||||||
//
|
//
|
||||||
|
|
||||||
VS_VERSION_INFO VERSIONINFO
|
VS_VERSION_INFO VERSIONINFO
|
||||||
FILEVERSION 22000,194,0,25
|
FILEVERSION 22000,194,0,26
|
||||||
PRODUCTVERSION 22000,194,0,25
|
PRODUCTVERSION 22000,194,0,26
|
||||||
FILEFLAGSMASK 0x3fL
|
FILEFLAGSMASK 0x3fL
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
FILEFLAGS 0x1L
|
FILEFLAGS 0x1L
|
||||||
@ -69,12 +69,12 @@ BEGIN
|
|||||||
BEGIN
|
BEGIN
|
||||||
VALUE "CompanyName", "VALINET Solutions SRL"
|
VALUE "CompanyName", "VALINET Solutions SRL"
|
||||||
VALUE "FileDescription", "ExplorerPatcher"
|
VALUE "FileDescription", "ExplorerPatcher"
|
||||||
VALUE "FileVersion", "22000.194.0.25"
|
VALUE "FileVersion", "22000.194.0.26"
|
||||||
VALUE "InternalName", "ExplorerPatcher.dll"
|
VALUE "InternalName", "ExplorerPatcher.dll"
|
||||||
VALUE "LegalCopyright", "Copyright (C) 2006-2021 VALINET Solutions SRL. All rights reserved."
|
VALUE "LegalCopyright", "Copyright (C) 2006-2021 VALINET Solutions SRL. All rights reserved."
|
||||||
VALUE "OriginalFilename", "ExplorerPatcher.dll"
|
VALUE "OriginalFilename", "ExplorerPatcher.dll"
|
||||||
VALUE "ProductName", "ExplorerPatcher"
|
VALUE "ProductName", "ExplorerPatcher"
|
||||||
VALUE "ProductVersion", "22000.194.0.25"
|
VALUE "ProductVersion", "22000.194.0.26"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
BLOCK "VarFileInfo"
|
BLOCK "VarFileInfo"
|
||||||
|
@ -26,6 +26,8 @@
|
|||||||
#define CHECKFOREGROUNDELAPSED_TIMEOUT 100
|
#define CHECKFOREGROUNDELAPSED_TIMEOUT 100
|
||||||
#define POPUPMENU_SAFETOREMOVE_TIMEOUT 300
|
#define POPUPMENU_SAFETOREMOVE_TIMEOUT 300
|
||||||
#define POPUPMENU_BLUETOOTH_TIMEOUT 700
|
#define POPUPMENU_BLUETOOTH_TIMEOUT 700
|
||||||
|
#define POPUPMENU_PNIDUI_TIMEOUT 300
|
||||||
|
#define POPUPMENU_SNDVOLSSO_TIMEOUT 300
|
||||||
|
|
||||||
HWND archivehWnd;
|
HWND archivehWnd;
|
||||||
HMODULE hStartIsBack64 = 0;
|
HMODULE hStartIsBack64 = 0;
|
||||||
@ -34,6 +36,7 @@ BOOL bMicaEffectOnTitlebar = FALSE;
|
|||||||
BOOL bHideControlCenterButton = FALSE;
|
BOOL bHideControlCenterButton = FALSE;
|
||||||
BOOL bSkinMenus = TRUE;
|
BOOL bSkinMenus = TRUE;
|
||||||
BOOL bSkinIcons = TRUE;
|
BOOL bSkinIcons = TRUE;
|
||||||
|
BOOL bReplaceNetwork = FALSE;
|
||||||
HMODULE hModule = NULL;
|
HMODULE hModule = NULL;
|
||||||
HANDLE hIsWinXShown = NULL;
|
HANDLE hIsWinXShown = NULL;
|
||||||
HANDLE hWinXThread = NULL;
|
HANDLE hWinXThread = NULL;
|
||||||
@ -696,6 +699,77 @@ void PopupMenuAdjustCoordinatesAndFlags(int* x, int* y, UINT* uFlags)
|
|||||||
*uFlags |= TPM_VCENTERALIGN | TPM_RIGHTALIGN;
|
*uFlags |= TPM_VCENTERALIGN | TPM_RIGHTALIGN;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
long long pnidui_TrackPopupMenuElapsed = 0;
|
||||||
|
BOOL pnidui_TrackPopupMenuHook(
|
||||||
|
HMENU hMenu,
|
||||||
|
UINT uFlags,
|
||||||
|
int x,
|
||||||
|
int y,
|
||||||
|
int nReserved,
|
||||||
|
HWND hWnd,
|
||||||
|
const RECT* prcRect
|
||||||
|
)
|
||||||
|
{
|
||||||
|
long long elapsed = milliseconds_now() - pnidui_TrackPopupMenuElapsed;
|
||||||
|
BOOL b = FALSE;
|
||||||
|
if (elapsed > POPUPMENU_PNIDUI_TIMEOUT || !bSkinMenus)
|
||||||
|
{
|
||||||
|
if (bSkinMenus)
|
||||||
|
{
|
||||||
|
PopupMenuAdjustCoordinatesAndFlags(&x, &y, &uFlags);
|
||||||
|
}
|
||||||
|
b = TrackPopupMenu(
|
||||||
|
hMenu,
|
||||||
|
uFlags | TPM_RIGHTBUTTON,
|
||||||
|
x,
|
||||||
|
y,
|
||||||
|
0,
|
||||||
|
hWnd,
|
||||||
|
prcRect
|
||||||
|
);
|
||||||
|
if (bReplaceNetwork && b == 3109)
|
||||||
|
{
|
||||||
|
ShellExecuteW(
|
||||||
|
NULL,
|
||||||
|
L"open",
|
||||||
|
L"shell:::{8E908FC9-BECC-40f6-915B-F4CA0E70D03D}",
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
SW_SHOWNORMAL
|
||||||
|
);
|
||||||
|
b = 0;
|
||||||
|
}
|
||||||
|
pnidui_TrackPopupMenuElapsed = milliseconds_now();
|
||||||
|
}
|
||||||
|
return b;
|
||||||
|
}
|
||||||
|
long long sndvolsso_TrackPopupMenuExElapsed = 0;
|
||||||
|
BOOL sndvolsso_TrackPopupMenuExHook(
|
||||||
|
HMENU hMenu,
|
||||||
|
UINT uFlags,
|
||||||
|
int x,
|
||||||
|
int y,
|
||||||
|
HWND hWnd,
|
||||||
|
LPTPMPARAMS lptpm
|
||||||
|
)
|
||||||
|
{
|
||||||
|
long long elapsed = milliseconds_now() - sndvolsso_TrackPopupMenuExElapsed;
|
||||||
|
BOOL b = FALSE;
|
||||||
|
if (elapsed > POPUPMENU_SNDVOLSSO_TIMEOUT)
|
||||||
|
{
|
||||||
|
PopupMenuAdjustCoordinatesAndFlags(&x, &y, &uFlags);
|
||||||
|
b = TrackPopupMenuEx(
|
||||||
|
hMenu,
|
||||||
|
uFlags | TPM_RIGHTBUTTON,
|
||||||
|
x,
|
||||||
|
y,
|
||||||
|
hWnd,
|
||||||
|
lptpm
|
||||||
|
);
|
||||||
|
sndvolsso_TrackPopupMenuExElapsed = milliseconds_now();
|
||||||
|
}
|
||||||
|
return b;
|
||||||
|
}
|
||||||
long long TrackPopupMenuElapsed = 0;
|
long long TrackPopupMenuElapsed = 0;
|
||||||
BOOL TrackPopupMenuHook(
|
BOOL TrackPopupMenuHook(
|
||||||
HMENU hMenu,
|
HMENU hMenu,
|
||||||
@ -1540,6 +1614,7 @@ __declspec(dllexport) DWORD WINAPI main(
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
dwSize = sizeof(DWORD);
|
||||||
RegQueryValueExW(
|
RegQueryValueExW(
|
||||||
hKey,
|
hKey,
|
||||||
TEXT("HideExplorerSearchBar"),
|
TEXT("HideExplorerSearchBar"),
|
||||||
@ -1548,6 +1623,7 @@ __declspec(dllexport) DWORD WINAPI main(
|
|||||||
&bHideExplorerSearchBar,
|
&bHideExplorerSearchBar,
|
||||||
&dwSize
|
&dwSize
|
||||||
);
|
);
|
||||||
|
dwSize = sizeof(DWORD);
|
||||||
RegQueryValueExW(
|
RegQueryValueExW(
|
||||||
hKey,
|
hKey,
|
||||||
TEXT("MicaEffectOnTitlebar"),
|
TEXT("MicaEffectOnTitlebar"),
|
||||||
@ -1556,6 +1632,7 @@ __declspec(dllexport) DWORD WINAPI main(
|
|||||||
&bMicaEffectOnTitlebar,
|
&bMicaEffectOnTitlebar,
|
||||||
&dwSize
|
&dwSize
|
||||||
);
|
);
|
||||||
|
dwSize = sizeof(DWORD);
|
||||||
RegQueryValueExW(
|
RegQueryValueExW(
|
||||||
hKey,
|
hKey,
|
||||||
TEXT("HideControlCenterButton"),
|
TEXT("HideControlCenterButton"),
|
||||||
@ -1564,6 +1641,7 @@ __declspec(dllexport) DWORD WINAPI main(
|
|||||||
&bHideControlCenterButton,
|
&bHideControlCenterButton,
|
||||||
&dwSize
|
&dwSize
|
||||||
);
|
);
|
||||||
|
dwSize = sizeof(DWORD);
|
||||||
RegQueryValueExW(
|
RegQueryValueExW(
|
||||||
hKey,
|
hKey,
|
||||||
TEXT("SkinMenus"),
|
TEXT("SkinMenus"),
|
||||||
@ -1572,6 +1650,7 @@ __declspec(dllexport) DWORD WINAPI main(
|
|||||||
&bSkinMenus,
|
&bSkinMenus,
|
||||||
&dwSize
|
&dwSize
|
||||||
);
|
);
|
||||||
|
dwSize = sizeof(DWORD);
|
||||||
RegQueryValueExW(
|
RegQueryValueExW(
|
||||||
hKey,
|
hKey,
|
||||||
TEXT("SkinIcons"),
|
TEXT("SkinIcons"),
|
||||||
@ -1580,6 +1659,15 @@ __declspec(dllexport) DWORD WINAPI main(
|
|||||||
&bSkinIcons,
|
&bSkinIcons,
|
||||||
&dwSize
|
&dwSize
|
||||||
);
|
);
|
||||||
|
dwSize = sizeof(DWORD);
|
||||||
|
RegQueryValueExW(
|
||||||
|
hKey,
|
||||||
|
TEXT("ReplaceNetwork"),
|
||||||
|
0,
|
||||||
|
NULL,
|
||||||
|
&bReplaceNetwork,
|
||||||
|
&dwSize
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1720,6 +1808,10 @@ __declspec(dllexport) DWORD WINAPI main(
|
|||||||
|
|
||||||
HANDLE hPnidui = LoadLibraryW(L"pnidui.dll");
|
HANDLE hPnidui = LoadLibraryW(L"pnidui.dll");
|
||||||
VnPatchIAT(hPnidui, "api-ms-win-core-com-l1-1-0.dll", "CoCreateInstance", pnidui_CoCreateInstanceHook);
|
VnPatchIAT(hPnidui, "api-ms-win-core-com-l1-1-0.dll", "CoCreateInstance", pnidui_CoCreateInstanceHook);
|
||||||
|
if (bSkinMenus || bReplaceNetwork)
|
||||||
|
{
|
||||||
|
VnPatchIAT(hPnidui, "user32.dll", "TrackPopupMenu", pnidui_TrackPopupMenuHook);
|
||||||
|
}
|
||||||
#ifdef USE_PRIVATE_INTERFACES
|
#ifdef USE_PRIVATE_INTERFACES
|
||||||
if (bSkinIcons)
|
if (bSkinIcons)
|
||||||
{
|
{
|
||||||
@ -1732,6 +1824,10 @@ __declspec(dllexport) DWORD WINAPI main(
|
|||||||
|
|
||||||
|
|
||||||
HANDLE hSndvolsso = LoadLibraryW(L"sndvolsso.dll");
|
HANDLE hSndvolsso = LoadLibraryW(L"sndvolsso.dll");
|
||||||
|
if (bSkinMenus)
|
||||||
|
{
|
||||||
|
VnPatchIAT(hSndvolsso, "user32.dll", "TrackPopupMenuEx", sndvolsso_TrackPopupMenuExHook);
|
||||||
|
}
|
||||||
#ifdef USE_PRIVATE_INTERFACES
|
#ifdef USE_PRIVATE_INTERFACES
|
||||||
if (bSkinIcons)
|
if (bSkinIcons)
|
||||||
{
|
{
|
||||||
|
@ -19,11 +19,13 @@
|
|||||||
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ExplorerPatcher]
|
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ExplorerPatcher]
|
||||||
;b Disable Control Center button *
|
;b Disable Control Center button *
|
||||||
"HideControlCenterButton"=dword:00000000
|
"HideControlCenterButton"=dword:00000000
|
||||||
;b Apply immersive style to system tray icon menus *
|
;b Center and skin system tray icon menus *
|
||||||
"SkinMenus"=dword:00000001
|
"SkinMenus"=dword:00000001
|
||||||
;p 2
|
;p 2
|
||||||
;b Apply Windows 11 style to system tray icons *
|
;b Apply Windows 11 style to system tray icons *
|
||||||
"SkinIcons"=dword:00000001
|
"SkinIcons"=dword:00000001
|
||||||
|
;b Open network settings in Control Panel for system tray icon *
|
||||||
|
"ReplaceNetwork"=dword:00000000
|
||||||
|
|
||||||
;T File Explorer
|
;T File Explorer
|
||||||
[-HKEY_CURRENT_USER\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32]
|
[-HKEY_CURRENT_USER\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user