import QtQuick 2.12 import QtQuick.Layouts 1.12 import QtQuick.Controls 2.12 import QtQuick.Controls.Imagine 2.12 import QtQuick.Window 2.0 import Ikinuki.Client 1.0 import "./components" ApplicationWindow { id: window visible: true Database { id: database } Row { anchors.fill: parent focus: true default property int selectedView: 0 Sidebar { id: sidebar providers: database.Providers } ContentView { id: view providers: database.Providers } function mod(n, m) { return ((n % m) + m) % m; } Keys.onPressed: (event)=> { if (selectedView == 0) { if (event.key == Qt.Key_Right) { selectedView = 1; view.viewSelected = true } sidebar.Keys.pressed(event); if (event.key == Qt.Key_Down) { view.currentIndex = mod(view.currentIndex + 1, view.providers.length) } else if (event.key == Qt.Key_Up) { view.currentIndex = mod(view.currentIndex - 1, view.providers.length) } event.accepted = true; } else { view.Keys.pressed(event); } event.accepted = true; } } }