headlines scroll handler: add a rate limit

This commit is contained in:
Andrew Dolgov 2016-03-22 12:43:18 +03:00
parent 7c0d68f207
commit 63c7446a79
2 changed files with 11 additions and 0 deletions

View file

@ -102,6 +102,7 @@ function viewfeed(params) {
_infscroll_disable = 0;
cleanup_memory("headlines-frame");
_headlines_scroll_offset = 0;
}
if (infscroll_req) {

View file

@ -13,6 +13,7 @@ var catchup_timeout_id = false;
var cids_requested = [];
var loaded_article_ids = [];
var _last_headlines_update = 0;
var _headlines_scroll_offset = 0;
var current_first_id = 0;
var _catchup_request_sent = false;
@ -1265,6 +1266,14 @@ function unpackVisibleHeadlines() {
function headlines_scroll_handler(e) {
try {
// rate-limit in case of smooth scrolling and similar abominations
if (e.scrollTop - _headlines_scroll_offset < 10) {
return;
}
_headlines_scroll_offset = e.scrollTop;
var hsp = $("headlines-spacer");
unpackVisibleHeadlines();
@ -1273,6 +1282,7 @@ function headlines_scroll_handler(e) {
if (isCdmMode() && getInitParam("cdm_auto_catchup") == 1 &&
getSelectedArticleIds2().length <= 1 &&
getInitParam("cdm_expanded")) {
var rows = $$("#headlines-frame > div[id*=RROW]");
for (var i = 0; i < rows.length; i++) {