forked from Boria138/PortProtonQt
		
	fix(input_manager): restore keyboard navigation with Up/Down keys
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
This commit is contained in:
		@@ -390,6 +390,23 @@ class InputManager(QObject):
 | 
			
		||||
                focused._show_context_menu(pos)
 | 
			
		||||
                return True
 | 
			
		||||
 | 
			
		||||
        # Handle Up/Down keys for non-GameCard tabs
 | 
			
		||||
        if key in (Qt.Key.Key_Up, Qt.Key.Key_Down) and not isinstance(focused, GameCard):
 | 
			
		||||
            page = self._parent.stackedWidget.currentWidget()
 | 
			
		||||
            if key == Qt.Key.Key_Down:
 | 
			
		||||
                if isinstance(focused, NavLabel):
 | 
			
		||||
                    focusables = page.findChildren(QWidget, options=Qt.FindChildOption.FindChildrenRecursively)
 | 
			
		||||
                    focusables = [w for w in focusables if w.focusPolicy() & Qt.FocusPolicy.StrongFocus]
 | 
			
		||||
                    if focusables:
 | 
			
		||||
                        focusables[0].setFocus()
 | 
			
		||||
                        return True
 | 
			
		||||
                elif focused:
 | 
			
		||||
                    focused.focusNextChild()
 | 
			
		||||
                    return True
 | 
			
		||||
            elif key == Qt.Key.Key_Up and focused:
 | 
			
		||||
                focused.focusPreviousChild()
 | 
			
		||||
                return True
 | 
			
		||||
 | 
			
		||||
        # Tab switching with Left/Right keys (non-GameCard focus or no focus)
 | 
			
		||||
        idx = self._parent.stackedWidget.currentIndex()
 | 
			
		||||
        total = len(self._parent.tabButtons)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user