|
Post by OrthodoxWin32 on Feb 24, 2024 14:51:40 GMT -8
Update - all of the files open but when clicking Apply on OK, it freezes, hangs and is unable to apply any of the themes. Am I missing something here? Thank you for your help so far.
This is how my desktop currently looks. Not quite there yet: Regarding changing the theme, the best is to use themes.exe, as clara indicates. Your configuration is good overall. However, I think you forgot: - To disable the ribbon in Explorer, the ribbon is poorly displayed with the classic theme (it is possible to deactivate it with ExplorerPatcher or a Windhawk mod). - To display with Open-Shell a start button - To activate Syslistview32 in the explorer (this is possible with ExplorerPatcher or a Windhawk mod). On the other hand, the buttons seem to be displayed incorrectly in the taskbar. You can replace the Classic Taskbar Fix Lite mod with this mod (this is the same mod that I modified to remove the space between the icons, which corrects the display problem) : // ==WindhawkMod== // @id classic-taskbar-buttons-lite-wtis // @name Classic Taskbar 3D buttons Lite VS - Without icon spacing // @description Lightweight mod, restoring the 3D buttons in classic theme // @version 1.1.1 // @author Anixx // @include explorer.exe // @compilerOptions -lgdi32 -lUxTheme // ==/WindhawkMod==
// ==WindhawkModReadme== /* # Classic Taskbar Fix Restores 3D buttons on taskbar when using Windows Classic theme. Based on mod by Aubymori (https://github.com/aubymori). */ // ==/WindhawkModReadme==
#include <windhawk_utils.h> #include <windows.h> #include <uxtheme.h> #include <tmschema.h>
typedef struct tagBUTTONRENDERINFOSTATES { char data[12]; } BUTTONRENDERINFOSTATES, *PBUTTONRENDERINFOSTATES;
/* Remove clock hover effect */ typedef void (* GDIHelpers_FillRectARGB_t)(HDC, LPCRECT, BYTE, DWORD, bool); GDIHelpers_FillRectARGB_t GDIHelpers_FillRectARGB_orig; void __cdecl GDIHelpers_FillRectARGB_hook( HDC hDC, LPCRECT lprc, BYTE btUnknown, DWORD dwUnknown, bool bUnknown ) { return; }
/* Draw taskbar item */ typedef void (* CTaskBtnGroup__DrawBar_t)(void *, HDC, void *, void *); CTaskBtnGroup__DrawBar_t CTaskBtnGroup__DrawBar_orig; void __cdecl CTaskBtnGroup__DrawBar_hook( void *pThis, HDC hDC, void *pRenderInfo, PBUTTONRENDERINFOSTATES pRenderStates ) { LPRECT lprcDest = (LPRECT)((char *)pRenderInfo + 4);
HTHEME hTheme = OpenThemeData(NULL, L"BUTTON");
if (hTheme) { int iStateId = PBS_NORMAL;
if (pRenderStates->data[2]) {
iStateId = PBS_PRESSED; // or use PBS_HOT if you prefer
} else if (pRenderStates->data[4]) {
iStateId = PBS_PRESSED;
}
// Draw the button with the current theme.
DrawThemeBackground(hTheme, hDC, BP_PUSHBUTTON, iStateId, lprcDest, NULL);
// Close the theme data handle when done.
CloseThemeData(hTheme); } else { // Fallback to non-themed drawing if themes are not available.
UINT uState = DFCS_BUTTONPUSH; if (pRenderStates->data[2]) { uState |= DFCS_CHECKED; } else if (pRenderStates->data[4]) { uState |= DFCS_PUSHED; }
DrawFrameControl(hDC, lprcDest, DFC_BUTTON, uState); };
/* If button is pushed in, offset the rect for the icon and text draw */ if (pRenderStates->data[2] || pRenderStates->data[4]) { lprcDest->top++; lprcDest->bottom++; lprcDest->left++; lprcDest->right++; }
return; }
BOOL Wh_ModInit(void) { HMODULE hExplorer = GetModuleHandleW(NULL);
WindhawkUtils::SYMBOL_HOOK hooks[] = { { { L"void __cdecl GDIHelpers::FillRectARGB(struct HDC__ *,struct tagRECT const *,unsigned char,unsigned long,bool)" }, (void **)&GDIHelpers_FillRectARGB_orig, (void *)GDIHelpers_FillRectARGB_hook, FALSE }, { { L"private: void __cdecl CTaskBtnGroup::_DrawBar(struct HDC__ *,struct BUTTONRENDERINFO const &,struct BUTTONRENDERINFOSTATES const &)" }, (void **)&CTaskBtnGroup__DrawBar_orig, (void *)CTaskBtnGroup__DrawBar_hook, FALSE }, };
if (!WindhawkUtils::HookSymbols(hExplorer, hooks, ARRAYSIZE(hooks))) { Wh_Log(L"Failed to hook one or more functions"); return FALSE; }
return TRUE; }
|
|
|
Post by OrthodoxWin32 on Feb 24, 2024 15:19:16 GMT -8
OrthodoxWin32 Wow, looks like i don't need to do anything at all. Surprising how i have not stumbled on this thread before. Sometimes we miss certain important topics in the forums, it happens to me too Indeed I have already done a lot of work, but I still have more than half to port. I'm quite happy because my search allowed me to discover forgotten schemes in the depths of the web, I had to go to WebArchive sometimes.
|
|
|
Post by goodbytes on Feb 28, 2024 20:36:50 GMT -8
Regarding changing the theme, the best is to use themes.exe, as clara indicates. Your configuration is good overall. However, I think you forgot: - To disable the ribbon in Explorer, the ribbon is poorly displayed with the classic theme (it is possible to deactivate it with ExplorerPatcher or a Windhawk mod). - To display with Open-Shell a start button - To activate Syslistview32 in the explorer (this is possible with ExplorerPatcher or a Windhawk mod). On the other hand, the buttons seem to be displayed incorrectly in the taskbar. You can replace the Classic Taskbar Fix Lite mod with this mod (this is the same mod that I modified to remove the space between the icons, which corrects the display problem) Appreciate your reply, thanks for the information. I will do these steps, but for context I didn't make it past step 10 in this guide. The .cpl files freeze so I didn't continue with the remaining steps.
Themes.exe doesn't have any themes in it currently, so it's not allowing me to add Windows Aero Classic, for example.
I must be missing something!
|
|
clara
Sophomore Member
Posts: 118
|
Post by clara on Feb 29, 2024 5:28:09 GMT -8
I must be missing something!
You are. A few messages above there is a linked thread with links to all the themes compatible with themes.exe you should import in registry for them to become available.
|
|
|
Post by goodbytes on Feb 29, 2024 15:28:42 GMT -8
I must be missing something!
You are. A few messages above there is a linked thread with links to all the themes compatible with themes.exe you should import in registry for them to become available. Thanks! Applied the .reg files, which then showed up in themes.exe (Windows Aero Classic-6sicsix)
But after clicking APPLY, themes.exe crashes. It's not responding. There must be something wrong on my end but I followed crumble266 's video and the corresponding instructions to a tee. The actual step of applying a theme has become the issue.
|
|
clara
Sophomore Member
Posts: 118
|
Post by clara on Feb 29, 2024 15:46:29 GMT -8
I think any kind of theme manager just hangs for a while, the problem if it does it indefinitely....
Gonna take a shot in the dark, but try checking properties > security tab for themes.exe, and if it just shows a grey window and not a user list give your user full access to the file. The file i supplied was modified in resourcehacker a bit, so if there's a problem, this might be it.
|
|
|
Post by goodbytes on Feb 29, 2024 15:51:48 GMT -8
Despite crashing, it did apply the theme. How am I looking?
Three things: the icons in the system tray are white on grey - any fix? And "Alt+tab" no longer works. Why would this be? When I move the mouse over the quick launch icons, they disappear. Each icon block turns grey. Weird? Thank you!
See below:
|
|
clara
Sophomore Member
Posts: 118
|
Post by clara on Feb 29, 2024 16:21:35 GMT -8
Alt+Tab is configurable in Explorer. Check if you have set your Windows colors in UWP Setings to "dark", switch them tp "light", this should fix tray icon colors. What you have currently is not Quick Launch, this is icons pinned to taskbar. You need to enable true Quick Launch with right-clicking on taskbar > toolbars > quick launch. Icons disappearing on buttons without labels is a Classic Taskbar glitch.
|
|
|
Post by anixx on Feb 29, 2024 16:22:46 GMT -8
Choose "Light" mode in Windows settings app.
|
|
|
Post by OrthodoxWin32 on Mar 1, 2024 0:49:34 GMT -8
When I move the mouse over the quick launch icons, they disappear. Each icon block turns grey. Weird? Thank you!
See below: It is possible to correct this issue using the mod that I posted in this message, replacing the Classic Taskbar 3D buttons Lite mod.
|
|
|
Post by OrthodoxWin32 on Mar 1, 2024 0:52:53 GMT -8
Icons disappearing on buttons without labels is a Classic Taskbar glitch. As I said before, this is an issue with button spacing. By removing the space, the icons no longer disappear. But I think there is a way to modify the mod (Classic Taskbar 3D buttons) to obtain a correct rendering with the space between the icons.
|
|
|
Post by goodbytes on Mar 1, 2024 23:32:53 GMT -8
Alt+Tab is configurable in Explorer. Check if you have set your Windows colors in UWP Setings to "dark", switch them tp "light", this should fix tray icon colors. What you have currently is not Quick Launch, this is icons pinned to taskbar. You need to enable true Quick Launch with right-clicking on taskbar > toolbars > quick launch. Icons disappearing on buttons without labels is a Classic Taskbar glitch. Thanks, all fixed! Although "quick launch" doesn't exist.
Icons disappearing on buttons without labels is a Classic Taskbar glitch. As I said before, this is an issue with button spacing. By removing the space, the icons no longer disappear. But I think there is a way to modify the mod (Classic Taskbar 3D buttons) to obtain a correct rendering with the space between the icons. Glitch fixed! Thanks so much.
How am I looking now?
|
|
|
Post by anixx on Mar 2, 2024 7:15:34 GMT -8
|
|
|
Post by OrthodoxWin32 on Mar 2, 2024 15:43:04 GMT -8
Glitch fixed! Thanks so much.
How am I looking now? Yes, your setup seems to have everything for the classic theme to work properly. Afterwards, you can add the icons at 32pixel, the clientedge... But it's optional.
|
|
|
Post by 4y135g64 on Mar 30, 2024 17:50:13 GMT -8
hi.
im on w10 22h2.
does classic theme and taskbar work without glitches?
thanks
|
|
|
Post by OrthodoxWin32 on Mar 31, 2024 1:22:02 GMT -8
hi. im on w10 22h2. does classic theme and taskbar work without glitches? thanks Under 21H2, I achieved it. I don't see why it would be different under 22H2.
|
|
|
Post by anixx on Apr 2, 2024 9:49:21 GMT -8
The only issue I am experiencing now is that the tray icons are white instead of black, and the currently selected program is purple instead of the classic gray. Any way to fix these things? In the Settings app under customization. For black icons in tray, choose the light theme.
|
|
aldon
Freshman Member
Posts: 56
|
Post by aldon on Apr 26, 2024 0:02:29 GMT -8
|
|
|
Post by anixx on Apr 26, 2024 1:15:44 GMT -8
And it you do not update, it simply crashes Explorer.
|
|
|
Post by anixx on Apr 26, 2024 1:17:09 GMT -8
I wonder, why do they want everything metroified? If it is simply to change theme, they could just change theme.
|
|