summaryrefslogtreecommitdiff
path: root/viewfeed.js
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2009-10-07 14:22:44 +0400
committerAndrew Dolgov <[email protected]>2009-10-07 14:22:44 +0400
commit6e35a862dd7c2f292ab805cf5a0d5bf8770a6525 (patch)
tree6017125f1d3bdf5e2c0dbe2391df068a63040f42 /viewfeed.js
parent449cba7c38acd2abefaf127c7ce40ebda8b07c13 (diff)
fix view() being called twice on every headline click, experimental progress indicators for feedlist/headlines
Diffstat (limited to 'viewfeed.js')
-rw-r--r--viewfeed.js42
1 files changed, 33 insertions, 9 deletions
diff --git a/viewfeed.js b/viewfeed.js
index 227aa87a5..7a614f783 100644
--- a/viewfeed.js
+++ b/viewfeed.js
@@ -106,18 +106,23 @@ function headlines_callback2(transport, feed_cur_page) {
}
}
+ var ll = $('FLL-' + feed_id);
+
if (!is_cat) {
var feedr = $("FEEDR-" + feed_id);
if (feedr && !feedr.className.match("Selected")) {
feedr.className = feedr.className + "Selected";
}
+ if (feedr && ll) feedr.removeChild(ll);
} else {
var feedr = $("FCAT-" + feed_id);
if (feedr && !feedr.className.match("Selected")) {
feedr.className = feedr.className + "Selected";
}
+ if (feedr && ll) feedr.removeChild(ll);
+
}
-
+
var f = $("headlines-frame");
try {
if (feed_cur_page == 0) {
@@ -363,6 +368,19 @@ function article_callback2(transport, id, feed_id) {
if (!transport_error_check(transport)) return;
+ var ll = $('LL-' + id);
+ var content = $('HLC-' + id);
+
+ if (ll && content) content.removeChild(ll);
+
+ if (id != last_requested_article) {
+ debug("requested article id is out of sequence, aborting");
+ return;
+ }
+
+ active_real_feed_id = feed_id;
+ active_post_id = id;
+
debug("looking for articles to cache...");
var articles = transport.responseXML.getElementsByTagName("article");
@@ -380,13 +398,6 @@ function article_callback2(transport, id, feed_id) {
cache_inject(a_id, articles[i].firstChild.nodeValue);
}
- if (id != last_requested_article) {
- debug("requested article id is out of sequence, aborting");
- return;
- }
-
- active_real_feed_id = feed_id;
- active_post_id = id;
showArticleInHeadlines(id);
@@ -491,7 +502,20 @@ function view(id, feed_id, skip_history) {
if (!cached_article) {
- notify_progress("Loading, please wait...", true);
+// notify_progress("Loading, please wait...", true);
+
+ var content = $('HLC-' + id);
+
+ if (content && !$('LL-' + id)) {
+ var ll = document.createElement('img');
+
+ ll.src = 'images/indicator_tiny.gif';
+ ll.className = 'hlLoading';
+ ll.id = 'LL-' + id;
+
+ content.appendChild(ll);
+
+ }
} else if (cached_article && article_is_unread) {