https://git.reactos.org/?p=reactos.git;a=commitdiff;h=67ad4e7f60ec52691d0a8…
commit 67ad4e7f60ec52691d0a8b017e3d23b1d889b656
Author:     Doug Lyons <douglyons(a)douglyons.com>
AuthorDate: Tue Nov 30 15:48:46 2021 -0600
Commit:     GitHub <noreply(a)github.com>
CommitDate: Tue Nov 30 22:48:46 2021 +0100
    [EXPLORER] Fix for Start Button Wrong size when Using Themes (#4121) CORE-16742
    The problem once was unhidden by
    0.4.7-dev-705-g 85ae8421055f51eac48cb3d8acce47a7cd715982
---
 base/shell/explorer/traywnd.cpp | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/base/shell/explorer/traywnd.cpp b/base/shell/explorer/traywnd.cpp
index e14e805b8f7..2b69e48bb02 100644
--- a/base/shell/explorer/traywnd.cpp
+++ b/base/shell/explorer/traywnd.cpp
@@ -1562,7 +1562,7 @@ ChangePos:
         else
         {
             WndSize.cx = StartBtnSize.cx;
-            WndSize.cy = StartBtnSize.cy - EdgeSize.cx;
+            WndSize.cy = StartBtnSize.cy - EdgeSize.cy;
         }
         if (WndSize.cx < g_TaskbarSettings.sr.Size.cx)
@@ -1628,14 +1628,13 @@ ChangePos:
         if (StartSize.cx > rcClient.right)
             StartSize.cx = rcClient.right;
-        if (!m_Theme)
+        HWND hwndTaskToolbar = ::GetWindow(m_TaskSwitch, GW_CHILD);
+        if (hwndTaskToolbar)
         {
-            HWND hwndTaskToolbar = ::GetWindow(m_TaskSwitch, GW_CHILD);
-            if (hwndTaskToolbar)
-            {
-                DWORD size = SendMessageW(hwndTaskToolbar, TB_GETBUTTONSIZE, 0, 0);
-                StartSize.cy = HIWORD(size);
-            }
+            DWORD size = SendMessageW(hwndTaskToolbar, TB_GETBUTTONSIZE, 0, 0);
+
+            /* Themed button covers Edge area as well */
+            StartSize.cy = HIWORD(size) + (m_Theme ? GetSystemMetrics(SM_CYEDGE) : 0);
         }
         if (m_StartButton.m_hWnd != NULL)