diff --git a/src/86box.c b/src/86box.c
index 89e619cde..ce9a3d96e 100644
--- a/src/86box.c
+++ b/src/86box.c
@@ -290,6 +290,11 @@ struct accelKey def_acc_keys[NUM_ACCELS] = {
.desc="Copy raw screenshot",
.seq=""
},
+ {
+ .name="fast_forward",
+ .desc="Fast forward",
+ .seq="Ctrl+Alt+F"
+ },
{
.name="release_mouse",
.desc="Release mouse pointer",
diff --git a/src/include/86box/86box.h b/src/include/86box/86box.h
index 8ec191f72..d32e13895 100644
--- a/src/include/86box/86box.h
+++ b/src/include/86box/86box.h
@@ -331,7 +331,7 @@ struct accelKey {
char desc[64];
char seq[64];
};
-#define NUM_ACCELS 13
+#define NUM_ACCELS 14
extern struct accelKey acc_keys[NUM_ACCELS];
extern struct accelKey def_acc_keys[NUM_ACCELS];
extern int FindAccelerator(const char *name);
diff --git a/src/qt/languages/86box.pot b/src/qt/languages/86box.pot
index c500d2c69..e1cec7005 100644
--- a/src/qt/languages/86box.pot
+++ b/src/qt/languages/86box.pot
@@ -3014,3 +3014,6 @@ msgstr ""
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/ca-ES.po b/src/qt/languages/ca-ES.po
index c9495b450..ddec0bc60 100644
--- a/src/qt/languages/ca-ES.po
+++ b/src/qt/languages/ca-ES.po
@@ -3020,3 +3020,6 @@ msgstr "&Permetre recompilació"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/cs-CZ.po b/src/qt/languages/cs-CZ.po
index 390aeaac1..fc78c76bd 100644
--- a/src/qt/languages/cs-CZ.po
+++ b/src/qt/languages/cs-CZ.po
@@ -3020,3 +3020,6 @@ msgstr "&Povolit rekompilaci"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/de-DE.po b/src/qt/languages/de-DE.po
index 565345fc4..4ed3a4fbf 100644
--- a/src/qt/languages/de-DE.po
+++ b/src/qt/languages/de-DE.po
@@ -3020,3 +3020,6 @@ msgstr "Recompilierung &zulassen"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/el-GR.po b/src/qt/languages/el-GR.po
index d7e887b82..b49a1411a 100644
--- a/src/qt/languages/el-GR.po
+++ b/src/qt/languages/el-GR.po
@@ -3077,3 +3077,6 @@ msgstr "&Να επιτρέπεται ανασύνταξη"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/es-ES.po b/src/qt/languages/es-ES.po
index c7db61a44..efa17fa4b 100644
--- a/src/qt/languages/es-ES.po
+++ b/src/qt/languages/es-ES.po
@@ -3020,3 +3020,6 @@ msgstr "&Permitir recompilación"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/fi-FI.po b/src/qt/languages/fi-FI.po
index 4a7128c45..1a4b65df4 100644
--- a/src/qt/languages/fi-FI.po
+++ b/src/qt/languages/fi-FI.po
@@ -3020,3 +3020,6 @@ msgstr "&Salli uudelleenkääntäminen"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/fr-FR.po b/src/qt/languages/fr-FR.po
index 99ae7b646..38f4672cb 100644
--- a/src/qt/languages/fr-FR.po
+++ b/src/qt/languages/fr-FR.po
@@ -3020,3 +3020,6 @@ msgstr "&Permettre la recompilation"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/hr-HR.po b/src/qt/languages/hr-HR.po
index 9709530db..c3d793f13 100644
--- a/src/qt/languages/hr-HR.po
+++ b/src/qt/languages/hr-HR.po
@@ -3022,3 +3022,6 @@ msgstr "&Omogući rekompilaciju"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/it-IT.po b/src/qt/languages/it-IT.po
index 6468d7f2f..a3c182f8e 100644
--- a/src/qt/languages/it-IT.po
+++ b/src/qt/languages/it-IT.po
@@ -3020,3 +3020,6 @@ msgstr "&Permetti ricompilazione"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/ja-JP.po b/src/qt/languages/ja-JP.po
index 6f5bbf5e2..cec605d90 100644
--- a/src/qt/languages/ja-JP.po
+++ b/src/qt/languages/ja-JP.po
@@ -3021,3 +3021,6 @@ msgstr "再コンパイルを許可する(&A)"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/ko-KR.po b/src/qt/languages/ko-KR.po
index 8d50003e3..690bc8491 100644
--- a/src/qt/languages/ko-KR.po
+++ b/src/qt/languages/ko-KR.po
@@ -3014,3 +3014,6 @@ msgstr "재컴파일 허용(&A)"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/nb-NO.po b/src/qt/languages/nb-NO.po
index c03f05bea..d35c292c6 100644
--- a/src/qt/languages/nb-NO.po
+++ b/src/qt/languages/nb-NO.po
@@ -3014,3 +3014,6 @@ msgstr "&Tillat rekompilering"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/nl-NL.po b/src/qt/languages/nl-NL.po
index 630e89bbc..c1ac985e5 100644
--- a/src/qt/languages/nl-NL.po
+++ b/src/qt/languages/nl-NL.po
@@ -3014,3 +3014,6 @@ msgstr "Recompilatie &toestaan"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/pl-PL.po b/src/qt/languages/pl-PL.po
index d1bb617fb..ec0cc9f87 100644
--- a/src/qt/languages/pl-PL.po
+++ b/src/qt/languages/pl-PL.po
@@ -3021,3 +3021,6 @@ msgstr "&Zezwól na rekompilację"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/pt-BR.po b/src/qt/languages/pt-BR.po
index 74cb58966..8a432d6ca 100644
--- a/src/qt/languages/pt-BR.po
+++ b/src/qt/languages/pt-BR.po
@@ -3014,3 +3014,6 @@ msgstr "&Permitir recompilação"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/pt-PT.po b/src/qt/languages/pt-PT.po
index 96aa31057..0cc722e84 100644
--- a/src/qt/languages/pt-PT.po
+++ b/src/qt/languages/pt-PT.po
@@ -3021,3 +3021,6 @@ msgstr "&Permitir recompilação"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/ru-RU.po b/src/qt/languages/ru-RU.po
index 7df2fb11b..e1d8816c8 100644
--- a/src/qt/languages/ru-RU.po
+++ b/src/qt/languages/ru-RU.po
@@ -3033,3 +3033,6 @@ msgstr "Разреш&ить рекомпиляцию"
msgid "&Fast forward"
msgstr "П&еремотка вперёд"
+
+msgid "Fast forward"
+msgstr "Перемотка вперёд"
diff --git a/src/qt/languages/sk-SK.po b/src/qt/languages/sk-SK.po
index c355636f5..b6172ee9c 100644
--- a/src/qt/languages/sk-SK.po
+++ b/src/qt/languages/sk-SK.po
@@ -3020,3 +3020,6 @@ msgstr "&Povoliť rekompiláciu"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/sl-SI.po b/src/qt/languages/sl-SI.po
index de269fff9..431685dec 100644
--- a/src/qt/languages/sl-SI.po
+++ b/src/qt/languages/sl-SI.po
@@ -3022,3 +3022,6 @@ msgstr "&Dovoli prevajanje"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/sv-SE.po b/src/qt/languages/sv-SE.po
index 38ed1191e..6005a49c6 100644
--- a/src/qt/languages/sv-SE.po
+++ b/src/qt/languages/sv-SE.po
@@ -3014,3 +3014,6 @@ msgstr "&Tillåt omkompilering"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/tr-TR.po b/src/qt/languages/tr-TR.po
index cacd7c41f..ede62240b 100644
--- a/src/qt/languages/tr-TR.po
+++ b/src/qt/languages/tr-TR.po
@@ -3020,3 +3020,6 @@ msgstr "&Derlenmesine izin ver"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/uk-UA.po b/src/qt/languages/uk-UA.po
index b9305f5a1..9644aa5fe 100644
--- a/src/qt/languages/uk-UA.po
+++ b/src/qt/languages/uk-UA.po
@@ -3022,3 +3022,6 @@ msgstr "&Дозволити рекомпіляцію"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/vi-VN.po b/src/qt/languages/vi-VN.po
index 0d7f0cb75..9c4f56d46 100644
--- a/src/qt/languages/vi-VN.po
+++ b/src/qt/languages/vi-VN.po
@@ -3014,3 +3014,6 @@ msgstr "&Cho phép biên dịch lại"
msgid "&Fast forward"
msgstr ""
+
+msgid "Fast forward"
+msgstr ""
diff --git a/src/qt/languages/zh-CN.po b/src/qt/languages/zh-CN.po
index 884540416..ea491586c 100644
--- a/src/qt/languages/zh-CN.po
+++ b/src/qt/languages/zh-CN.po
@@ -3014,3 +3014,6 @@ msgstr "允许重编译(&A)"
msgid "&Fast forward"
msgstr "快进(&F)"
+
+msgid "Fast forward"
+msgstr "快进"
diff --git a/src/qt/languages/zh-TW.po b/src/qt/languages/zh-TW.po
index b3300e378..a27bc13c2 100644
--- a/src/qt/languages/zh-TW.po
+++ b/src/qt/languages/zh-TW.po
@@ -3021,3 +3021,6 @@ msgstr "允許重編譯(&A)"
msgid "&Fast forward"
msgstr "快轉(&F)"
+
+msgid "Fast forward"
+msgstr "快轉"
diff --git a/src/qt/qt_mainwindow.cpp b/src/qt/qt_mainwindow.cpp
index 16e84cb8c..229e9f788 100644
--- a/src/qt/qt_mainwindow.cpp
+++ b/src/qt/qt_mainwindow.cpp
@@ -1042,6 +1042,10 @@ MainWindow::updateShortcuts()
seq = QKeySequence::fromString(acc_keys[accID].seq);
ui->actionHard_Reset->setShortcut(seq);
+ accID = FindAccelerator("fast_forward");
+ seq = QKeySequence::fromString(acc_keys[accID].seq);
+ ui->actionFast_forward->setShortcut(seq);
+
accID = FindAccelerator("fullscreen");
seq = QKeySequence::fromString(acc_keys[accID].seq);
ui->actionFullscreen->setShortcut(seq);
@@ -1582,6 +1586,10 @@ MainWindow::eventFilter(QObject *receiver, QEvent *event)
|| (QKeySequence) (ke->key() | ke->modifiers()) == FindAcceleratorSeq("hard_reset")) {
ui->actionHard_Reset->trigger();
}
+ if ((QKeySequence) (ke->key() | (ke->modifiers() & ~Qt::KeypadModifier)) == FindAcceleratorSeq("fast_forward")
+ || (QKeySequence) (ke->key() | ke->modifiers()) == FindAcceleratorSeq("fast_forward")) {
+ ui->actionFast_forward->trigger();
+ }
if ((QKeySequence) (ke->key() | (ke->modifiers() & ~Qt::KeypadModifier)) == FindAcceleratorSeq("send_ctrl_alt_del")
|| (QKeySequence) (ke->key() | ke->modifiers()) == FindAcceleratorSeq("send_ctrl_alt_del")) {
ui->actionCtrl_Alt_Del->trigger();
diff --git a/src/qt/qt_mainwindow.ui b/src/qt/qt_mainwindow.ui
index 1d8d0680c..2dead393b 100644
--- a/src/qt/qt_mainwindow.ui
+++ b/src/qt/qt_mainwindow.ui
@@ -1094,6 +1094,9 @@
&Fast forward
+
+ Fast forward
+