diff --git a/src/gui/src/settings/options-window.cpp b/src/gui/src/settings/options-window.cpp
index 6df92cef5..470668506 100644
--- a/src/gui/src/settings/options-window.cpp
+++ b/src/gui/src/settings/options-window.cpp
@@ -329,6 +329,10 @@ OptionsWindow::OptionsWindow(Profile *profile, ThemeLoader *themeLoader, QWidget
ui->keyMainNewTab->setKeySequence(getKeySequence(settings, "keyNewTab", QKeySequence::AddTab, Qt::CTRL + Qt::Key_T));
ui->keyMainPrevTab->setKeySequence(getKeySequence(settings, "keyPrevTab", Qt::CTRL + Qt::Key_PageDown));
ui->keyMainNextTab->setKeySequence(getKeySequence(settings, "keyNextTab", Qt::CTRL + Qt::Key_PageUp));
+ ui->keyMainFirstPage->setKeySequence(getKeySequence(settings, "keyFirstPage", Qt::CTRL + Qt::Key_Home));
+ ui->keyMainPreviousPage->setKeySequence(getKeySequence(settings, "keyPreviousPage", Qt::CTRL + Qt::Key_Left));
+ ui->keyMainNextPage->setKeySequence(getKeySequence(settings, "keyNextPage", Qt::CTRL + Qt::Key_Right));
+ ui->keyMainLastPage->setKeySequence(getKeySequence(settings, "keyLastPage", Qt::CTRL + Qt::Key_End));
ui->keyMainBrowseSave->setKeySequence(getKeySequence(settings, "keyBrowseSave", QKeySequence::Open, Qt::CTRL + Qt::Key_O));
ui->keyMainFavoritesBack->setKeySequence(getKeySequence(settings, "keyFavoritesBack", Qt::Key_Escape));
settings->endGroup();
@@ -1296,6 +1300,10 @@ void OptionsWindow::save()
settings->setValue("keyNewTab", ui->keyMainNewTab->keySequence().toString());
settings->setValue("keyPrevTab", ui->keyMainPrevTab->keySequence().toString());
settings->setValue("keyNextTab", ui->keyMainNextTab->keySequence().toString());
+ settings->setValue("keyFirstPage", ui->keyMainFirstPage->keySequence().toString());
+ settings->setValue("keyPreviousPage", ui->keyMainPreviousPage->keySequence().toString());
+ settings->setValue("keyNextPage", ui->keyMainNextPage->keySequence().toString());
+ settings->setValue("keyLastPage", ui->keyMainLastPage->keySequence().toString());
settings->setValue("keyBrowseSave", ui->keyMainBrowseSave->keySequence().toString());
settings->setValue("keyFavoritesBack", ui->keyMainFavoritesBack->keySequence().toString());
settings->endGroup();
diff --git a/src/gui/src/settings/options-window.ui b/src/gui/src/settings/options-window.ui
index 029984049..d0acc2d34 100644
--- a/src/gui/src/settings/options-window.ui
+++ b/src/gui/src/settings/options-window.ui
@@ -1983,6 +1983,78 @@
+ -
+
+
+ Go to first page
+
+
+
+ 3
+
+
+ 3
+
+
-
+
+
+
+
+
+ -
+
+
+ Go to previous page
+
+
+
+ 3
+
+
+ 3
+
+
-
+
+
+
+
+
+ -
+
+
+ Go to next page
+
+
+
+ 3
+
+
+ 3
+
+
-
+
+
+
+
+
+ -
+
+
+ Go to last page
+
+
+
+ 3
+
+
+ 3
+
+
-
+
+
+
+
+
-
diff --git a/src/gui/src/tabs/search-tab.cpp b/src/gui/src/tabs/search-tab.cpp
index 27a828b2d..a08e7e70d 100644
--- a/src/gui/src/tabs/search-tab.cpp
+++ b/src/gui/src/tabs/search-tab.cpp
@@ -5,6 +5,7 @@
#include
#include
#include
+#include
#include
#include
#include "downloader/download-query-image.h"
@@ -80,6 +81,20 @@ void SearchTab::init()
QString globalPostFilter = m_settings->value("globalPostFilter").toString();
m_postFiltering->setText(globalPostFilter);
}
+
+ // Navigation keyboard shortcuts
+ if (ui_buttonFirstPage != nullptr) {
+ ui_buttonFirstPage->setShortcut(getKeySequence(m_settings, "Main/Shortcuts/keyFirstPage", Qt::CTRL + Qt::Key_Home));
+ }
+ if (ui_buttonPreviousPage != nullptr) {
+ ui_buttonPreviousPage->setShortcut(getKeySequence(m_settings, "Main/Shortcuts/keyPreviousPage", Qt::CTRL + Qt::Key_Left));
+ }
+ if (ui_buttonNextPage != nullptr) {
+ ui_buttonNextPage->setShortcut(getKeySequence(m_settings, "Main/Shortcuts/keyNextPage", Qt::CTRL + Qt::Key_Right));
+ }
+ if (ui_buttonLastPage != nullptr) {
+ ui_buttonLastPage->setShortcut(getKeySequence(m_settings, "Main/Shortcuts/keyLastPage", Qt::CTRL + Qt::Key_End));
+ }
}
SearchTab::~SearchTab()