[SHELL32] CMenuDeskBar: Prevent destruction of the start menu when receiving a WM_CLOSE message. CORE-12028

svn path=/trunk/; revision=74764
This commit is contained in:
Mark Jansen 2017-06-03 15:35:21 +00:00
parent 70cd488931
commit 44616bacfb
2 changed files with 8 additions and 0 deletions

View file

@ -839,6 +839,12 @@ LRESULT CMenuDeskBar::_OnNcPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &
return 0; return 0;
} }
LRESULT CMenuDeskBar::_OnClose(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
{
/* Prevent the CMenuDeskBar from destroying on being sent a WM_CLOSE */
return 0;
}
HRESULT CMenuDeskBar::_AdjustForTheme(BOOL bFlatStyle) HRESULT CMenuDeskBar::_AdjustForTheme(BOOL bFlatStyle)
{ {
DWORD style = bFlatStyle ? WS_BORDER : WS_CLIPCHILDREN|WS_DLGFRAME; DWORD style = bFlatStyle ? WS_BORDER : WS_CLIPCHILDREN|WS_DLGFRAME;

View file

@ -74,6 +74,7 @@ public:
MESSAGE_HANDLER(WM_MOUSEACTIVATE, _OnMouseActivate) MESSAGE_HANDLER(WM_MOUSEACTIVATE, _OnMouseActivate)
MESSAGE_HANDLER(WM_WININICHANGE , _OnWinIniChange) MESSAGE_HANDLER(WM_WININICHANGE , _OnWinIniChange)
MESSAGE_HANDLER(WM_NCPAINT, _OnNcPaint) MESSAGE_HANDLER(WM_NCPAINT, _OnNcPaint)
MESSAGE_HANDLER(WM_CLOSE, _OnClose)
END_MSG_MAP() END_MSG_MAP()
BEGIN_COM_MAP(CMenuDeskBar) BEGIN_COM_MAP(CMenuDeskBar)
@ -142,6 +143,7 @@ private:
LRESULT _OnAppActivate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled); LRESULT _OnAppActivate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled);
LRESULT _OnWinIniChange(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled); LRESULT _OnWinIniChange(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled);
LRESULT _OnNcPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled); LRESULT _OnNcPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled);
LRESULT _OnClose(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled);
HRESULT _AdjustForTheme(BOOL bFlatStyle); HRESULT _AdjustForTheme(BOOL bFlatStyle);
BOOL _IsSubMenuParent(HWND hwnd); BOOL _IsSubMenuParent(HWND hwnd);