mirror of https://github.com/PCSX2/pcsx2.git
Qt: Set focus to Game Library for improved keyboard navigation (#11719)
Improved keyboard navigation. Users can navigate the Library and play/exit games with just the arrow keys and Enter/Esc.
This commit is contained in:
parent
517fba3686
commit
1131db784f
|
@ -241,6 +241,8 @@ void GameListWidget::initialize()
|
||||||
else
|
else
|
||||||
m_ui.stack->setCurrentIndex(0);
|
m_ui.stack->setCurrentIndex(0);
|
||||||
|
|
||||||
|
setFocusProxy(m_ui.stack->currentWidget());
|
||||||
|
|
||||||
updateToolbar();
|
updateToolbar();
|
||||||
resizeTableViewColumnsToFit();
|
resizeTableViewColumnsToFit();
|
||||||
}
|
}
|
||||||
|
@ -294,7 +296,10 @@ void GameListWidget::onRefreshProgress(const QString& status, int current, int t
|
||||||
{
|
{
|
||||||
// switch away from the placeholder while we scan, in case we find anything
|
// switch away from the placeholder while we scan, in case we find anything
|
||||||
if (m_ui.stack->currentIndex() == 2)
|
if (m_ui.stack->currentIndex() == 2)
|
||||||
|
{
|
||||||
m_ui.stack->setCurrentIndex(Host::GetBaseBoolSettingValue("UI", "GameListGridView", false) ? 1 : 0);
|
m_ui.stack->setCurrentIndex(Host::GetBaseBoolSettingValue("UI", "GameListGridView", false) ? 1 : 0);
|
||||||
|
setFocusProxy(m_ui.stack->currentWidget());
|
||||||
|
}
|
||||||
|
|
||||||
m_model->refresh();
|
m_model->refresh();
|
||||||
emit refreshProgress(status, current, total);
|
emit refreshProgress(status, current, total);
|
||||||
|
@ -312,7 +317,10 @@ void GameListWidget::onRefreshComplete()
|
||||||
|
|
||||||
// if we still had no games, switch to the helper widget
|
// if we still had no games, switch to the helper widget
|
||||||
if (m_model->rowCount() == 0)
|
if (m_model->rowCount() == 0)
|
||||||
|
{
|
||||||
m_ui.stack->setCurrentIndex(2);
|
m_ui.stack->setCurrentIndex(2);
|
||||||
|
setFocusProxy(nullptr);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void GameListWidget::onSelectionModelCurrentChanged(const QModelIndex& current, const QModelIndex& previous)
|
void GameListWidget::onSelectionModelCurrentChanged(const QModelIndex& current, const QModelIndex& previous)
|
||||||
|
@ -436,6 +444,7 @@ void GameListWidget::showGameList()
|
||||||
Host::SetBaseBoolSettingValue("UI", "GameListGridView", false);
|
Host::SetBaseBoolSettingValue("UI", "GameListGridView", false);
|
||||||
Host::CommitBaseSettingChanges();
|
Host::CommitBaseSettingChanges();
|
||||||
m_ui.stack->setCurrentIndex(0);
|
m_ui.stack->setCurrentIndex(0);
|
||||||
|
setFocusProxy(m_ui.stack->currentWidget());
|
||||||
resizeTableViewColumnsToFit();
|
resizeTableViewColumnsToFit();
|
||||||
updateToolbar();
|
updateToolbar();
|
||||||
emit layoutChange();
|
emit layoutChange();
|
||||||
|
@ -453,6 +462,7 @@ void GameListWidget::showGameGrid()
|
||||||
Host::SetBaseBoolSettingValue("UI", "GameListGridView", true);
|
Host::SetBaseBoolSettingValue("UI", "GameListGridView", true);
|
||||||
Host::CommitBaseSettingChanges();
|
Host::CommitBaseSettingChanges();
|
||||||
m_ui.stack->setCurrentIndex(1);
|
m_ui.stack->setCurrentIndex(1);
|
||||||
|
setFocusProxy(m_ui.stack->currentWidget());
|
||||||
updateToolbar();
|
updateToolbar();
|
||||||
emit layoutChange();
|
emit layoutChange();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue