From 71e66c69c1fe53c9cec35e5fbf62b64a67f73f3a Mon Sep 17 00:00:00 2001 From: Giannis Adamopoulos Date: Tue, 16 Jan 2018 11:43:28 +0200 Subject: [PATCH] [EXPLORER] CTrayBandSite: Call DBID_SETWINDOWTHEME on new bands to make them use the theme of the taskbar. CORE-14176 --- base/shell/explorer/tbsite.cpp | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/base/shell/explorer/tbsite.cpp b/base/shell/explorer/tbsite.cpp index 1cb3ab5a663..aa2f4e69850 100644 --- a/base/shell/explorer/tbsite.cpp +++ b/base/shell/explorer/tbsite.cpp @@ -355,7 +355,23 @@ public: /* FIXME: Should be delayed */ IUnknown_Exec(punk, IID_IDeskBand, DBID_DELAYINIT, 0, NULL, NULL); - return m_BandSite->AddBand(punk); + HRESULT hr = m_BandSite->AddBand(punk); + if (FAILED_UNEXPECTEDLY(hr)) + return hr; + + VARIANT vThemeName; + V_VT(&vThemeName) = VT_BSTR; + V_BSTR(&vThemeName) = SysAllocString(L"TaskBar"); + IUnknown_Exec(punk, + IID_IDeskBand, + DBID_SETWINDOWTHEME, + 0, + &vThemeName, + NULL); + + SysFreeString(V_BSTR(&vThemeName)); + + return S_OK; } virtual HRESULT STDMETHODCALLTYPE EnumBands(