aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Olexandr Shaposhnyk <118913884+oshaposhnyk@users.noreply.github.com> 2024-11-13 14:00:39 +0200
committerGravatar GitHub <noreply@github.com> 2024-11-13 13:00:39 +0100
commit846e19afde7583bd8f3b873577211cc8cb9e83f1 (patch)
tree2a56d14ae6944a01812fe1f9c1935b9ac3747363
parente9ce099277bd5cb0257b9535cfaed42d87670b88 (diff)
[Feature] 6975: Redirect to shortcut page on pressing '?' (#6981)
* [Feature] 6975: Redirect to shortcut page on pressing '?' * [Feature] 6975: Redirect to shortcut page on pressing '?' * Simplify code * Re-order for performance * Remove shift key --------- Co-authored-by: Olexandr Shaposhnyk <oshaposhnyk@intelliboard.net> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
-rw-r--r--app/views/helpers/javascript_vars.phtml1
-rw-r--r--p/scripts/main.js7
2 files changed, 6 insertions, 2 deletions
diff --git a/app/views/helpers/javascript_vars.phtml b/app/views/helpers/javascript_vars.phtml
index 5be818935..54ba2917f 100644
--- a/app/views/helpers/javascript_vars.phtml
+++ b/app/views/helpers/javascript_vars.phtml
@@ -61,6 +61,7 @@ echo htmlspecialchars(json_encode(array(
'login' => Minz_Url::display(array('c' => 'auth', 'a' => 'login'), 'php'),
'logout' => Minz_Url::display(array('c' => 'auth', 'a' => 'logout'), 'php'),
'help' => FRESHRSS_WIKI,
+ 'shortcuts' => Minz_Url::display(array('c' => 'configure', 'a' => 'shortcut'), 'php'),
),
'i18n' => array(
'confirmation_default' => _t('gen.js.confirm_action'),
diff --git a/p/scripts/main.js b/p/scripts/main.js
index f35fa35df..3d1022872 100644
--- a/p/scripts/main.js
+++ b/p/scripts/main.js
@@ -973,8 +973,7 @@ function init_shortcuts() {
});
document.addEventListener('keydown', ev => {
- if (ev.target.closest('input, textarea') ||
- ev.ctrlKey || ev.metaKey || (ev.altKey && ev.shiftKey)) {
+ if (ev.ctrlKey || ev.metaKey || (ev.altKey && ev.shiftKey) || ev.target.closest('input, select, textarea')) {
return;
}
@@ -1080,6 +1079,10 @@ function init_shortcuts() {
ev.preventDefault();
return;
}
+ if (ev.key === '?') {
+ window.location.href = context.urls.shortcuts.replace(/&amp;/g, '&');
+ return;
+ }
if (ev.altKey || ev.shiftKey) {
return;