From c22580b55f959c8deaebf9aa3a7895c7795df75d Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 27 Feb 2013 22:48:43 +0400 Subject: implement classic next/prev article movement behavior, bind to ctrl-arrows --- js/tt-rss.js | 6 ++++++ js/viewfeed.js | 9 +++++---- 2 files changed, 11 insertions(+), 4 deletions(-) (limited to 'js') diff --git a/js/tt-rss.js b/js/tt-rss.js index 530cb2931..7462d933d 100644 --- a/js/tt-rss.js +++ b/js/tt-rss.js @@ -604,6 +604,12 @@ function hotkey_handler(e) { case "prev_article": moveToPost('prev'); return false; + case "next_article_noscroll": + moveToPost('next', true); + return false; + case "prev_article_noscroll": + moveToPost('prev', true); + return false; case "search_dialog": search(); return ; diff --git a/js/viewfeed.js b/js/viewfeed.js index 6f88f7eac..20a3e2b16 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -514,7 +514,7 @@ function togglePub(id, client_only, no_effects, note) { } } -function moveToPost(mode) { +function moveToPost(mode, noscroll) { try { @@ -555,7 +555,7 @@ function moveToPost(mode) { var article = $("RROW-" + active_post_id); var ctr = $("headlines-frame"); - if (article && article.offsetTop + article.offsetHeight > + if (!noscroll && article && article.offsetTop + article.offsetHeight > ctr.scrollTop + ctr.offsetHeight) { scrollArticle(ctr.offsetHeight/2); @@ -580,9 +580,10 @@ function moveToPost(mode) { var prev_article = $("RROW-" + prev_id); var ctr = $("headlines-frame"); - if (article && article.offsetTop < ctr.scrollTop) { + if (!noscroll && article && article.offsetTop < ctr.scrollTop) { scrollArticle(-ctr.offsetHeight/2); - } else if (prev_article && prev_article.offsetTop < ctr.scrollTop) { + } else if (!noscroll && prev_article && + prev_article.offsetTop < ctr.scrollTop) { cdmExpandArticle(prev_id); scrollArticle(-ctr.offsetHeight/2); } else if (prev_id) { -- cgit v1.2.3