@@ -1686,7 +1686,7 @@ class CinnamonMenuApplet extends Applet.TextIconApplet {
16861686 }
16871687
16881688 let minIndex = 0 ;
1689- let goUp = symbol === Clutter . KEY_Up ;
1689+ let goUp = symbol === Clutter . KEY_Up || symbol === Clutter . KEY_KP_Up ;
16901690 let nextActive = null ;
16911691 let menuItems = this . contextMenu . _getMenuItems ( ) ; // The context menu items
16921692
@@ -1757,11 +1757,20 @@ class CinnamonMenuApplet extends Applet.TextIconApplet {
17571757 /* Accounts for mirrored RTL layout.
17581758 Switches between left/right key presses */
17591759 if ( St . Widget . get_default_direction ( ) === St . TextDirection . RTL ) {
1760- if ( symbol === Clutter . KEY_Right ) {
1761- symbol = Clutter . KEY_Left ;
1762- } else if ( symbol === Clutter . KEY_Left ) {
1763- symbol = Clutter . KEY_Right ;
1764- }
1760+ switch ( symbol ) {
1761+ case Clutter . KEY_Right :
1762+ symbol = Clutter . KEY_Left ;
1763+ break ;
1764+ case Clutter . KEY_KP_Right :
1765+ symbol = Clutter . KEY_RP_Left ;
1766+ break ;
1767+ case Clutter . KEY_Left :
1768+ symbol = Clutter . KEY_Right ;
1769+ break ;
1770+ case Clutter . KEY_KP_Left :
1771+ symbol = Clutter . KEY_KP_Right ;
1772+ break ;
1773+ }
17651774 }
17661775
17671776 /* check for a keybinding and quit early, otherwise we get a double hit
@@ -1780,7 +1789,9 @@ class CinnamonMenuApplet extends Applet.TextIconApplet {
17801789 let continueNavigation = false ;
17811790 switch ( symbol ) {
17821791 case Clutter . KEY_Up :
1792+ case Clutter . KEY_KP_Up :
17831793 case Clutter . KEY_Down :
1794+ case Clutter . KEY_KP_Down :
17841795 case Clutter . KEY_Return :
17851796 case Clutter . KEY_KP_Enter :
17861797 case Clutter . KEY_Menu :
@@ -1790,7 +1801,9 @@ class CinnamonMenuApplet extends Applet.TextIconApplet {
17901801 this . _navigateContextMenu ( this . _activeContextMenuParent , symbol , ctrlKey ) ;
17911802 break ;
17921803 case Clutter . KEY_Right :
1804+ case Clutter . KEY_KP_Right :
17931805 case Clutter . KEY_Left :
1806+ case Clutter . KEY_KP_Left :
17941807 case Clutter . KEY_Tab :
17951808 case Clutter . KEY_ISO_Left_Tab :
17961809 continueNavigation = true ;
@@ -1808,12 +1821,14 @@ class CinnamonMenuApplet extends Applet.TextIconApplet {
18081821
18091822 switch ( symbol ) {
18101823 case Clutter . KEY_Up :
1824+ case Clutter . KEY_KP_Up :
18111825 whichWay = "up" ;
18121826 if ( this . _activeContainer === this . favoritesBox && ctrlKey &&
18131827 this . _activeActor . _delegate instanceof FavoritesButton )
18141828 navigationKey = false ;
18151829 break ;
18161830 case Clutter . KEY_Down :
1831+ case Clutter . KEY_KP_Down :
18171832 whichWay = "down" ;
18181833 if ( this . _activeContainer === this . favoritesBox && ctrlKey &&
18191834 this . _activeActor . _delegate instanceof FavoritesButton )
@@ -1824,6 +1839,7 @@ class CinnamonMenuApplet extends Applet.TextIconApplet {
18241839 case Clutter . KEY_Page_Down :
18251840 whichWay = "bottom" ; break ;
18261841 case Clutter . KEY_Right :
1842+ case Clutter . KEY_KP_Right :
18271843 if ( ! this . searchActive )
18281844 whichWay = "right" ;
18291845 if ( this . _activeContainer === this . applicationsBox )
@@ -1833,6 +1849,7 @@ class CinnamonMenuApplet extends Applet.TextIconApplet {
18331849 whichWay = "none" ;
18341850 break ;
18351851 case Clutter . KEY_Left :
1852+ case Clutter . KEY_KP_Left :
18361853 if ( ! this . searchActive )
18371854 whichWay = "left" ;
18381855 if ( this . _activeContainer === this . favoritesBox || this . _activeContainer === this . systemButtonsBox )
@@ -2036,20 +2053,21 @@ class CinnamonMenuApplet extends Applet.TextIconApplet {
20362053 item_actor = this . favoritesBox . get_child_at_index ( selectedItemIndex ) ;
20372054 }
20382055 } else if ( this . _activeContainer === this . favoritesBox &&
2039- ( symbol === Clutter . KEY_Down || symbol === Clutter . KEY_Up ) && ctrlKey &&
2040- this . _activeActor . _delegate instanceof FavoritesButton ) {
2056+ ( symbol === Clutter . KEY_Down || symbol === Clutter . KEY_KP_Down ||
2057+ symbol === Clutter . KEY_Up || symbol === Clutter . KEY_KP_Up ) &&
2058+ ctrlKey && this . _activeActor . _delegate instanceof FavoritesButton ) {
20412059 const selectedItemIndex = this . _activeContainer . _vis_iter . getAbsoluteIndexOfChild ( this . _activeActor ) ;
20422060 item_actor = this . _activeActor ;
20432061 let id = item_actor . _delegate . app . get_id ( ) ;
20442062 let appFavorites = AppFavorites . getAppFavorites ( ) ;
20452063 let favorites = appFavorites . getFavorites ( ) ;
20462064 let numFavorites = favorites . length ;
20472065 let favPos = 0 ;
2048- if ( selectedItemIndex == ( numFavorites - 1 ) && symbol === Clutter . KEY_Down )
2066+ if ( selectedItemIndex == ( numFavorites - 1 ) && ( symbol === Clutter . KEY_Down || symbol === Clutter . KEY_KP_Down ) )
20492067 favPos = 0 ;
2050- else if ( selectedItemIndex == 0 && symbol === Clutter . KEY_Up )
2068+ else if ( selectedItemIndex == 0 && ( symbol === Clutter . KEY_Up || symbol === Clutter . KEY_KP_Up ) )
20512069 favPos = numFavorites - 1 ;
2052- else if ( symbol === Clutter . KEY_Down )
2070+ else if ( symbol === Clutter . KEY_Down || symbol === Clutter . KEY_KP_Down )
20532071 favPos = selectedItemIndex + 1 ;
20542072 else
20552073 favPos = selectedItemIndex - 1 ;
0 commit comments