mirror of
https://github.com/reactos/reactos.git
synced 2025-06-22 13:00:16 +00:00
[RSHELL]
* CFocusManager: Try to fix some weird behaviour. * CMergedFolder: Downgrade some prints to TRACEs, and implement a couple methods needed by some debugging code. * Activate merged folders by default. TODO: implement the filtering of the "Programs" submenu, and use it for the real Programs menu item. [SHELL32] * defcontextmenu.cpp: Make a copy of the apidl array before storing it for later, since it may be a pointer to the stack which may not be available later. Fixes the merged folders not working on clicks and context menu. * shlmenu.cpp: While debugging, I made Shell_MergeMenus closer to WINE's. svn path=/branches/shell-experiments/; revision=63702
This commit is contained in:
parent
2ac4637056
commit
0ffe346179
8 changed files with 95 additions and 37 deletions
|
@ -319,7 +319,7 @@ LRESULT CMenuFocusManager::ProcessMouseMove(MSG* msg)
|
|||
}
|
||||
|
||||
BOOL isTracking = FALSE;
|
||||
if (entry)
|
||||
if (entry && (entry->type == MenuBarEntry || m_current->type != TrackedMenuEntry))
|
||||
{
|
||||
ScreenToClient(child, &pt);
|
||||
iHitTestResult = SendMessageW(child, TB_HITTEST, 0, (LPARAM) &pt);
|
||||
|
@ -485,9 +485,23 @@ LRESULT CMenuFocusManager::MsgFilterHook(INT nCode, WPARAM hookWParam, LPARAM ho
|
|||
if (hoveringMenuBar)
|
||||
{
|
||||
m_menuBar->mb->_DisableMouseTrack(TRUE);
|
||||
if (m_current->type == TrackedMenuEntry)
|
||||
{
|
||||
SendMessage(m_parent->hwnd, WM_CANCELMODE, 0, 0);
|
||||
msg->message = WM_NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case WM_NCLBUTTONUP:
|
||||
case WM_LBUTTONUP:
|
||||
case WM_NCRBUTTONUP:
|
||||
case WM_RBUTTONUP:
|
||||
if (m_current && m_current->type != TrackedMenuEntry)
|
||||
{
|
||||
msg->message = WM_NULL;
|
||||
}
|
||||
break;
|
||||
case WM_MOUSEMOVE:
|
||||
callNext = ProcessMouseMove(msg);
|
||||
break;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue