]> git.wh0rd.org - tt-rss.git/commitdiff
fix infinite scrolling for search results
authorAndrew Dolgov <fox@madoka.volgo-balt.ru>
Wed, 10 Oct 2012 12:30:26 +0000 (16:30 +0400)
committerAndrew Dolgov <fox@madoka.volgo-balt.ru>
Wed, 10 Oct 2012 12:30:26 +0000 (16:30 +0400)
js/feedlist.js
js/viewfeed.js

index e838562a5484365d159a40c0fdcd8fe4f1b6776e..b737ba84a1ad899090bcd3fed3bc42912d8c73de 100644 (file)
@@ -33,6 +33,8 @@ function loadMoreHeadlines() {
                        offset = num_all;
                } else if (view_mode == "unread") {
                        offset = unread_in_buffer;
+               } else if (_search_query) {
+                       offset = num_all;
                } else if (view_mode == "adaptive") {
                        if (num_unread > 0)
                                offset = unread_in_buffer;
@@ -42,6 +44,8 @@ function loadMoreHeadlines() {
                        offset = num_all;
                }
 
+               console.log("offset: " + offset);
+
                viewfeed(getActiveFeedId(), '', activeFeedIsCat(), offset, false, true);
 
        } catch (e) {
@@ -71,6 +75,8 @@ function viewfeed(feed, method, is_cat, offset, background, infscroll_req) {
                } else {
                        cached_headlines = cache_get("feed:" + feed + ":" + is_cat);
 
+                       if (_search_query) _search_query = false;
+
                        // switching to a different feed, we might as well catchup stuff visible
                        // in headlines buffer (if any)
                        // disabled for now because this behavior is considered confusing -fox
@@ -149,7 +155,7 @@ function viewfeed(feed, method, is_cat, offset, background, infscroll_req) {
                        if (_search_query) {
                                force_nocache = true;
                                query = query + "&" + _search_query;
-                               _search_query = false;
+                               //_search_query = false;
                        }
 
                        if (offset != 0) {
index 2419988ff6ca88e643c57c8772640d77e74a9e03..cb0a759603c15a393f2bb502d45df408e94f87ff 100644 (file)
@@ -130,6 +130,9 @@ function headlines_callback2(transport, offset, background, infscroll_req) {
 
                                        console.log("added " + num_added + " headlines");
 
+                                       if (num_added == 0)
+                                               _infscroll_disable = true;
+
                                        console.log("restore selected ids: " + ids);
 
                                        for (var i = 0; i < ids.length; i++) {