prevent cyclical scrolling in headlines if next offset requested by infscroll is zero
a bunch of other related fixes
This commit is contained in:
parent
95b493d68d
commit
eaec06f950
|
@ -72,12 +72,12 @@ function viewfeed(feed, method, is_cat, offset, background, infscroll_req, can_w
|
||||||
if (!background) {
|
if (!background) {
|
||||||
_viewfeed_last = get_timestamp();
|
_viewfeed_last = get_timestamp();
|
||||||
|
|
||||||
if (getActiveFeedId() != feed || offset == 0) {
|
if (getActiveFeedId() != feed || !infscroll_req) {
|
||||||
setActiveArticleId(0);
|
setActiveArticleId(0);
|
||||||
_infscroll_disable = 0;
|
_infscroll_disable = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (offset != 0 && !method) {
|
if (infscroll_req && !method) {
|
||||||
var timestamp = get_timestamp();
|
var timestamp = get_timestamp();
|
||||||
|
|
||||||
if (_infscroll_request_sent && _infscroll_request_sent + 30 > timestamp) {
|
if (_infscroll_request_sent && _infscroll_request_sent + 30 > timestamp) {
|
||||||
|
|
|
@ -565,8 +565,10 @@ function moveToPost(mode, noscroll, noexpand) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
console.log("cur: " + getActiveArticleId() + " next: " + next_id);
|
||||||
|
|
||||||
if (mode == "next") {
|
if (mode == "next") {
|
||||||
if (next_id || getActiveArticleId()) {
|
if (next_id /*|| getActiveArticleId()*/) {
|
||||||
if (isCdmMode()) {
|
if (isCdmMode()) {
|
||||||
|
|
||||||
var article = $("RROW-" + getActiveArticleId());
|
var article = $("RROW-" + getActiveArticleId());
|
||||||
|
@ -690,6 +692,8 @@ function toggleUnread(id, cmode, effect) {
|
||||||
|
|
||||||
var row = $("RROW-" + id);
|
var row = $("RROW-" + id);
|
||||||
if (row) {
|
if (row) {
|
||||||
|
var tmpClassName = row.className;
|
||||||
|
|
||||||
if (cmode == undefined || cmode == 2) {
|
if (cmode == undefined || cmode == 2) {
|
||||||
if (row.hasClassName("Unread")) {
|
if (row.hasClassName("Unread")) {
|
||||||
row.removeClassName("Unread");
|
row.removeClassName("Unread");
|
||||||
|
@ -713,11 +717,14 @@ function toggleUnread(id, cmode, effect) {
|
||||||
|
|
||||||
// notify_progress("Loading, please wait...");
|
// notify_progress("Loading, please wait...");
|
||||||
|
|
||||||
|
if (tmpClassName != row.className) {
|
||||||
new Ajax.Request("backend.php", {
|
new Ajax.Request("backend.php", {
|
||||||
parameters: query,
|
parameters: query,
|
||||||
onComplete: function(transport) {
|
onComplete: function (transport) {
|
||||||
handle_rpc_json(transport);
|
handle_rpc_json(transport);
|
||||||
} });
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1204,6 +1211,8 @@ function cdmScrollToArticleId(id, force) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function setActiveArticleId(id) {
|
function setActiveArticleId(id) {
|
||||||
|
console.log("setActiveArticleId:" + id);
|
||||||
|
|
||||||
_active_article_id = id;
|
_active_article_id = id;
|
||||||
PluginHost.run(PluginHost.HOOK_ARTICLE_SET_ACTIVE, _active_article_id);
|
PluginHost.run(PluginHost.HOOK_ARTICLE_SET_ACTIVE, _active_article_id);
|
||||||
}
|
}
|
||||||
|
@ -1281,7 +1290,7 @@ function headlines_scroll_handler(e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!_infscroll_disable) {
|
if (!_infscroll_disable) {
|
||||||
if (hsp && hsp.offsetTop - 100 <= e.scrollTop + e.offsetHeight) {
|
if (hsp && hsp.offsetTop - 250 <= e.scrollTop + e.offsetHeight) {
|
||||||
|
|
||||||
hsp.innerHTML = "<span class='loading'><img src='images/indicator_tiny.gif'> " +
|
hsp.innerHTML = "<span class='loading'><img src='images/indicator_tiny.gif'> " +
|
||||||
__("Loading, please wait...") + "</span>";
|
__("Loading, please wait...") + "</span>";
|
||||||
|
|
Loading…
Reference in New Issue