Author: dquintana
Date: Tue Apr 15 15:53:17 2014
New Revision: 62753

URL: http://svn.reactos.org/svn/reactos?rev=62753&view=rev
Log:
[RSHELL]
* Fix keyboard navigation on vertical popup menus. Navigating through the 
menubar does not work yet.
CORE-7586

Modified:
    branches/shell-experiments/base/shell/rshell/CMenuBand.cpp
    branches/shell-experiments/base/shell/rshell/CMenuToolbars.cpp

Modified: branches/shell-experiments/base/shell/rshell/CMenuBand.cpp
URL: 
http://svn.reactos.org/svn/reactos/branches/shell-experiments/base/shell/rshell/CMenuBand.cpp?rev=62753&r1=62752&r2=62753&view=diff
==============================================================================
--- branches/shell-experiments/base/shell/rshell/CMenuBand.cpp  [iso-8859-1] 
(original)
+++ branches/shell-experiments/base/shell/rshell/CMenuBand.cpp  [iso-8859-1] 
Tue Apr 15 15:53:17 2014
@@ -809,16 +809,16 @@
         return hr;
 
     // Select the second toolbar based on the first
-    if (tb == m_SFToolbar)
+    if (tb == m_SFToolbar && m_staticToolbar)
         tb = m_staticToolbar;
-    else
+    else if (m_SFToolbar)
         tb = m_SFToolbar;
 
     if (!tb)
         return hr;
 
     // Ask the second toolbar to change
-    return tb->KeyboardItemChange(change == VK_DOWN ? VK_END : VK_HOME);
+    return tb->KeyboardItemChange(change == VK_DOWN ? VK_HOME : VK_END);
 }
 
 HRESULT CMenuBand::_MenuItemHotTrack(DWORD changeType)

Modified: branches/shell-experiments/base/shell/rshell/CMenuToolbars.cpp
URL: 
http://svn.reactos.org/svn/reactos/branches/shell-experiments/base/shell/rshell/CMenuToolbars.cpp?rev=62753&r1=62752&r2=62753&view=diff
==============================================================================
--- branches/shell-experiments/base/shell/rshell/CMenuToolbars.cpp      
[iso-8859-1] (original)
+++ branches/shell-experiments/base/shell/rshell/CMenuToolbars.cpp      
[iso-8859-1] Tue Apr 15 15:53:17 2014
@@ -913,7 +913,7 @@
                 if (prev != btn.idCommand)
                 {
                     TRACE("Setting Hot item to %d\n", index);
-                    m_menuBand->_ChangeHotItem(this, index, 0);
+                    m_menuBand->_ChangeHotItem(this, btn.idCommand, 0);
                 }
                 return S_OK;
             }
@@ -927,6 +927,8 @@
                 index++;
             }
         }
+
+        return S_FALSE;
     }
 
     if (prev != -1)


Reply via email to