From 38f2bdbe6930fa6794af401d1279d6e7d3dd25aa Mon Sep 17 00:00:00 2001
From: Maplespe <43676879+Maplespe@users.noreply.github.com>
Date: Tue, 7 Jan 2025 11:09:33 +0800
Subject: [PATCH] bug fix
---
DWMBlurGlass/MainWindow.cpp | 2 +-
DWMBlurGlass/MainWindow.h | 2 +-
DWMBlurGlass/Page/MainPage.cpp | 3 ++-
DWMBlurGlass/Resource.rc | Bin 5802 -> 5802 bytes
.../uiproject/DWMBlurGlass/icon/checkbox.png | Bin 4838 -> 7827 bytes
DWMBlurGlassExt/Common/DWMStruct.cpp | 19 +++++++++++++----
DWMBlurGlassExt/DWMBlurGlass.cpp | 5 +++--
DWMBlurGlassExt/DWMBlurGlassExt.rc | Bin 5250 -> 5250 bytes
DWMBlurGlassExt/Section/CustomButton.cpp | 20 ++++++++++++------
DWMBlurGlassExt/Section/OcclusionCulling.cpp | 2 +-
DWMBlurGlassExt/Section/TitleTextTweaker.cpp | 8 ++++++-
11 files changed, 44 insertions(+), 17 deletions(-)
diff --git a/DWMBlurGlass/MainWindow.cpp b/DWMBlurGlass/MainWindow.cpp
index aa5801b..0f9eb6d 100644
--- a/DWMBlurGlass/MainWindow.cpp
+++ b/DWMBlurGlass/MainWindow.cpp
@@ -53,7 +53,7 @@ namespace MDWMBlurGlass
SendMessageW(hWnd, WM_SETICON, ICON_SMALL, (LPARAM)hIcon);
UIBkgndStyle bgStyle;
- bgStyle.bkgndColor = Color::M_RGBA(250, 250, 250, 255);
+ bgStyle.bkgndColor = Color::M_RGBA(245, 241, 249, 255);
root->SetBackground(bgStyle);
try
diff --git a/DWMBlurGlass/MainWindow.h b/DWMBlurGlass/MainWindow.h
index 4775326..2818971 100644
--- a/DWMBlurGlass/MainWindow.h
+++ b/DWMBlurGlass/MainWindow.h
@@ -21,7 +21,7 @@
namespace MDWMBlurGlass
{
- inline const std::wstring g_vernum = L"2.3.0";
+ inline const std::wstring g_vernum = L"2.3.1";
Mui::_m_result MainWindow_SrcEventProc(Mui::MWindowCtx*, const Mui::MWndDefEventSource&, Mui::MEventCodeEnum, Mui::_m_param);
diff --git a/DWMBlurGlass/Page/MainPage.cpp b/DWMBlurGlass/Page/MainPage.cpp
index 664021f..5fcea3b 100644
--- a/DWMBlurGlass/Page/MainPage.cpp
+++ b/DWMBlurGlass/Page/MainPage.cpp
@@ -209,7 +209,7 @@ namespace MDWMBlurGlass
-
+
);
@@ -911,6 +911,7 @@ namespace MDWMBlurGlass
m_page->Child(L"crossFadeGroup")->SetEnabled(index == blurMethod::CustomBlur && m_cfgData.crossFade);
m_page->Child(L"useaccentcolor")->SetEnabled(index == blurMethod::CustomBlur || index == blurMethod::AccentBlur);
m_page->Child(L"overrideAccent")->SetEnabled(index == blurMethod::CustomBlur);
+ m_page->Child(L"disableOnBattery")->SetEnabled(index == blurMethod::CustomBlur);
m_page->Child(L"titlebtnGlow")->SetEnabled(index == blurMethod::CustomBlur);
if(index == blurMethod::AccentBlur)
m_page->Child(L"overrideAccent")->SetSel(true, false);
diff --git a/DWMBlurGlass/Resource.rc b/DWMBlurGlass/Resource.rc
index 6e3339c7ce14a73f8ff3022ad57a18f14c1567a4..94b5dc9623b9ea1a33a07aa3ee6fa695a59ed7ba 100644
GIT binary patch
delta 42
wcmZ3byGnP%Jyu4;$@f_e84WiJvb|*jQvW$Dfz;&x9MY51xP>;Sal3E>06cOHo&W#<
delta 42
wcmZ3byGnP%Jyu48$@f_e84WfIvb|*jQvW$Dfz;&x9MY51xP>;Sal3E>06Y;5ng9R*
diff --git a/DWMBlurGlass/uiproject/DWMBlurGlass/icon/checkbox.png b/DWMBlurGlass/uiproject/DWMBlurGlass/icon/checkbox.png
index 8d595c7829e0e54208386a43db85216d100cd3a3..d48232d9fd47dad129ac410d568da05456b7d097 100644
GIT binary patch
literal 7827
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
W@T*9rOSYbQb<(R6GAaLG;QS9*7L%g@
literal 4838
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
Nn!br%rH*sde*u^2W<>x1
diff --git a/DWMBlurGlassExt/Common/DWMStruct.cpp b/DWMBlurGlassExt/Common/DWMStruct.cpp
index 33ec234..b1a4a7b 100644
--- a/DWMBlurGlassExt/Common/DWMStruct.cpp
+++ b/DWMBlurGlassExt/Common/DWMStruct.cpp
@@ -1035,11 +1035,22 @@ namespace MDWMBlurGlassExt::DWM
void CTopLevelWindow::CDWriteTextSetColor(COLORREF color)
{
- auto text = (CDWriteText*)*((ULONG64*)this + 71);//CDWriteText This
- typedef void(__fastcall**** CDWriteText_SetColor)(CDWriteText*, UINT);//(***((void(__fastcall****)(ULONG64, __int64))This + 71))(*((ULONG64*)This + 71), inputVec);
- auto pfunCDWriteText_SetColor = ***((CDWriteText_SetColor)this + 71);//CDWriteText::SetColor(CDWriteText *this, int a2)
+ if(os::buildNumber < 26100)
+ {
+ auto text = (CDWriteText*)*((ULONG64*)this + 71);//CDWriteText This
+ typedef void(__fastcall**** CDWriteText_SetColor)(CDWriteText*, UINT);//(***((void(__fastcall****)(ULONG64, __int64))This + 71))(*((ULONG64*)This + 71), inputVec);
+ auto pfunCDWriteText_SetColor = ***((CDWriteText_SetColor)this + 71);//CDWriteText::SetColor(CDWriteText *this, int a2)
+
+ pfunCDWriteText_SetColor(text, color);
+ }
+ else
+ {
+ auto text = (CDWriteText*)*((ULONG64*)this + 66);
+ typedef void(__fastcall**** CDWriteText_SetColor)(CDWriteText*, UINT);
+ auto pfunCDWriteText_SetColor = ***((CDWriteText_SetColor)this + 66);
- pfunCDWriteText_SetColor(text, color);
+ pfunCDWriteText_SetColor(text, color);
+ }
}
bool CTopLevelWindow::TreatAsActiveWindow()
diff --git a/DWMBlurGlassExt/DWMBlurGlass.cpp b/DWMBlurGlassExt/DWMBlurGlass.cpp
index c26e3ee..a63797c 100644
--- a/DWMBlurGlassExt/DWMBlurGlass.cpp
+++ b/DWMBlurGlassExt/DWMBlurGlass.cpp
@@ -82,9 +82,10 @@ namespace MDWMBlurGlassExt
GetCurrentProcessId(),
fileHandle.get(),
static_cast(
+ MINIDUMP_TYPE::MiniDumpNormal |
MINIDUMP_TYPE::MiniDumpWithThreadInfo |
- MINIDUMP_TYPE::MiniDumpWithFullMemory |
- MINIDUMP_TYPE::MiniDumpWithUnloadedModules
+ MINIDUMP_TYPE::MiniDumpWithUnloadedModules |
+ MINIDUMP_TYPE::MiniDumpWithProcessThreadData
),
&minidumpExceptionInfo,
nullptr,
diff --git a/DWMBlurGlassExt/DWMBlurGlassExt.rc b/DWMBlurGlassExt/DWMBlurGlassExt.rc
index 8e42b46799ee8fa57bcebacd2e3142e6fdbb0588..ecd275ce0c9471b1599cb85b0a8dfcaf642c2676 100644
GIT binary patch
delta 68
zcmZqDY|`9tiC6a`+-%4l$O!;vHW54k
delta 68
zcmZqDY|`9tiC6a`+-%4l$O!;t_YpGy
diff --git a/DWMBlurGlassExt/Section/CustomButton.cpp b/DWMBlurGlassExt/Section/CustomButton.cpp
index 9697e2f..b618434 100644
--- a/DWMBlurGlassExt/Section/CustomButton.cpp
+++ b/DWMBlurGlassExt/Section/CustomButton.cpp
@@ -19,6 +19,7 @@
#include "../DWMBlurGlass.h"
#include "../Backdrops/ButtonGlowBackdrop.hpp"
#include
+#include
#pragma comment(lib, "shcore.lib")
namespace MDWMBlurGlassExt::CustomButton
@@ -34,12 +35,13 @@ namespace MDWMBlurGlassExt::CustomButton
};
thread_local std::unordered_map g_cbuttonList;
std::unordered_map> g_glowbackdropMap{};
+ std::mutex g_dslock;
inline auto FindWindowFromButton(CButton* btn)
{
- for(auto wnditer = g_cbuttonList.begin(); wnditer != g_cbuttonList.end(); ++wnditer)
+ for (auto wnditer = g_cbuttonList.begin(); wnditer != g_cbuttonList.end(); ++wnditer)
{
- if(auto iter = wnditer->second.buttonList.find(btn); iter != wnditer->second.buttonList.end())
+ if (auto iter = wnditer->second.buttonList.find(btn); iter != wnditer->second.buttonList.end())
return wnditer;
}
return g_cbuttonList.end();
@@ -123,7 +125,7 @@ namespace MDWMBlurGlassExt::CustomButton
&& (
(g_configData.blurmethod != blurMethod::DWMAPIBlur && g_configData.oldBtnHeight)
|| (g_configData.blurmethod == blurMethod::CustomBlur && g_configData.titlebtnGlow)
- ))
+ ))
Attach();
else if (g_startup
&& ((!g_configData.oldBtnHeight && !g_configData.titlebtnGlow) || g_configData.blurmethod == blurMethod::DWMAPIBlur)
@@ -200,7 +202,7 @@ namespace MDWMBlurGlassExt::CustomButton
if (scale != 1.f)
borderW -= (int)ceil(1.1f * scale);
- if(os::buildNumber < 22000 && borderW <= 0)
+ if (os::buildNumber < 22000 && borderW <= 0)
{
borderW = 6;
if (IsZoomed(g_window))
@@ -279,8 +281,11 @@ namespace MDWMBlurGlassExt::CustomButton
{
RemoveGlow(This);
}
+ std::lock_guard lock{ g_dslock };
if (auto iter = g_cbuttonList.find(This); iter != g_cbuttonList.end())
+ {
g_cbuttonList.erase(iter);
+ }
}
void CButton_Destructor(CButton* This)
@@ -322,18 +327,21 @@ namespace MDWMBlurGlassExt::CustomButton
auto hr = g_funCButton_RedrawVisual.call_org(This);
if (!g_configData.titlebtnGlow) return hr;
+ std::lock_guard lock{ g_dslock };
auto iter = FindWindowFromButton(This);
if (iter == g_cbuttonList.end())
return hr;
+ auto cwnd = iter->first;
+
RECT rect;
- iter->first->GetActualWindowRect(&rect, 0, 0, false);
+ cwnd->GetActualWindowRect(&rect, 0, 0, false);
auto monitor = MonitorFromPoint({ max(0, rect.left), max(0, rect.top) }, 0);
UINT dpi = 96;
GetDpiForMonitor(monitor, MDT_EFFECTIVE_DPI, &dpi, &dpi);
const float scale = (float)dpi / 96.f;
- if (auto backdrop = GetOrCreateGlow(iter->first, false))
+ if (auto backdrop = GetOrCreateGlow(cwnd, false))
{
auto& data = iter->second.buttonList[This];
diff --git a/DWMBlurGlassExt/Section/OcclusionCulling.cpp b/DWMBlurGlassExt/Section/OcclusionCulling.cpp
index b079af5..83c6875 100644
--- a/DWMBlurGlassExt/Section/OcclusionCulling.cpp
+++ b/DWMBlurGlassExt/Section/OcclusionCulling.cpp
@@ -83,10 +83,10 @@ namespace MDWMBlurGlassExt::OcclusionCulling
if (os::buildNumber < 22000)
{
+ g_funCOcclusionContext_PostSubgraph.Attach();
g_funCVisual_GetWindowBackgroundTreatmentInternal.Attach();
g_funCArrayBasedCoverageSet_AddAntiOccluderRect.Attach();
g_funCArrayBasedCoverageSet_IsCovered.Attach();
- g_funCOcclusionContext_PostSubgraph.Attach();
}
}
diff --git a/DWMBlurGlassExt/Section/TitleTextTweaker.cpp b/DWMBlurGlassExt/Section/TitleTextTweaker.cpp
index 3edeb2b..7ad77d3 100644
--- a/DWMBlurGlassExt/Section/TitleTextTweaker.cpp
+++ b/DWMBlurGlassExt/Section/TitleTextTweaker.cpp
@@ -269,7 +269,13 @@ namespace MDWMBlurGlassExt::TitleTextTweaker
HRESULT CTopLevelWindow_UpdateText(CTopLevelWindow* This, CTopLevelWindow::WindowFrame* a2, double a3)
{
- if (a2 && (*((BYTE*)This + 624) & 8) != 0)
+ BYTE flag = 0;
+ if(os::buildNumber < 26100)
+ flag = (*((BYTE*)This + 624) & 8);
+ else
+ flag = (*((BYTE*)This + 584) & 8);
+
+ if (a2 && flag != 0)
{
auto ret = g_funCTopLevelWindow_UpdateText.call_org(This, a2, a3);
|