set N/P hotkeys to scroll active article (or headlines pane in CDM)

This commit is contained in:
Andrew Dolgov 2008-09-09 08:08:47 +01:00
parent 45c8c7a68f
commit a411875be5
3 changed files with 46 additions and 3 deletions

View File

@ -18,7 +18,9 @@
<tr><td class='n'>u</td><td><?php echo __("Toggle unread") ?></td></tr>
<tr><td class='n'>T</td><td><?php echo __("Edit tags") ?></td></tr>
<tr><td class='n'>o</td><td><?php echo __("Open article in new window") ?></td></tr>
<tr><td class='n'>N/P</td><td><?php echo __("Mark articles below/above active one as read") ?></td></tr>
<tr><td class='n'>c n/c p</td><td><?php echo __("Mark articles below/above active one as read") ?></td></tr>
<tr><td class='n'>N/P</td><td><?php echo __("Scroll article content") ?></td></tr>
</table>
<h2><?php echo __("Other actions") ?></h2>

View File

@ -1134,16 +1134,27 @@ function hotkey_handler(e) {
return;
}
if (shift_key && (keycode == 78 || keycode == 40)) { // shift - n, down
if (shift_key && keycode == 40) { // shift-down
catchupRelativeToArticle(1);
return;
}
if (shift_key && (keycode == 80 || keycode == 38)) { // shift - p, up
if (shift_key && keycode == 38) { // shift-up
catchupRelativeToArticle(0);
return;
}
if (shift_key && keycode == 78) { // N
scrollArticle(50);
return;
}
if (shift_key && keycode == 80) { // P
scrollArticle(-50);
return;
}
if (keycode == 78 || keycode == 40) { // n, down
if (typeof moveToPost != 'undefined') {
moveToPost('next');
@ -1332,6 +1343,17 @@ function hotkey_handler(e) {
}
}
if (keycode == 78) { // n
catchupRelativeToArticle(1);
return;
}
if (keycode == 80) { // p
catchupRelativeToArticle(0);
return;
}
}
/* Prefix g */

View File

@ -1903,3 +1903,22 @@ function zoomToArticle(id) {
exception_error("zoomToArticle", e);
}
}
function scrollArticle(offset) {
try {
if (!isCdmMode()) {
var ci = document.getElementById("content-insert");
if (ci) {
ci.scrollTop += offset;
}
} else {
var hi = document.getElementById("headlinesInnerContainer");
if (hi) {
hi.scrollTop += offset;
}
}
} catch (e) {
exception_error("scrollArticle", e);
}
}