diff --git a/builds/4chan-X.user.js b/builds/4chan-X.user.js index 8c9c9c83f..cd02418bd 100644 --- a/builds/4chan-X.user.js +++ b/builds/4chan-X.user.js @@ -2141,6 +2141,10 @@ el: $.el('label', { innerHTML: ' Paged' }) + }, { + el: $.el('label', { + innerHTML: ' Infinite scrolling' + }) }, { el: $.el('label', { innerHTML: ' All threads' @@ -2276,7 +2280,7 @@ }, scroll: $.debounce(100, function() { var nodes, nodesPerPage, pageNum; - if (Conf['Index Mode'] !== 'paged' || ((d.body.scrollTop || doc.scrollTop) <= doc.scrollHeight - (300 + window.innerHeight))) { + if (Index.req || Conf['Index Mode'] !== 'infinite' || ((d.body.scrollTop || doc.scrollTop) <= doc.scrollHeight - (300 + window.innerHeight))) { return; } pageNum = Index.getCurrentPage() + 1; @@ -2365,7 +2369,7 @@ return +window.location.pathname.split('/')[2]; }, userPageNav: function(pageNum) { - if (Conf['Refreshed Navigation'] && Conf['Index Mode'] === 'paged') { + if (Conf['Refreshed Navigation'] && Conf['Index Mode'] !== 'all pages') { return Index.update(pageNum); } else { return Index.pageNav(pageNum); @@ -2380,7 +2384,7 @@ }, pageLoad: function(pageNum) { Index.currentPage = pageNum; - if (Conf['Index Mode'] !== 'paged') { + if (Conf['Index Mode'] === 'all pages') { return; } Index.buildIndex(); @@ -2398,7 +2402,7 @@ return Math.max(0, Index.getPagesNum() - 1); }, togglePagelist: function() { - return Index.pagelist.hidden = Conf['Index Mode'] !== 'paged'; + return Index.pagelist.hidden = Conf['Index Mode'] === 'all pages'; }, buildPagelist: function() { var a, i, maxPageNum, nodes, pagesRoot, _i; @@ -2686,7 +2690,7 @@ }, buildIndex: function() { var nodes, nodesPerPage, pageNum; - if (Conf['Index Mode'] === 'paged') { + if (Conf['Index Mode'] !== 'all pages') { pageNum = Index.getCurrentPage(); nodesPerPage = Index.threadsNumPerPage * 2; nodes = Index.sortedNodes.slice(nodesPerPage * pageNum, nodesPerPage * (pageNum + 1)); @@ -2723,7 +2727,7 @@ Index.searchInput.removeAttribute('data-searching'); } Index.sort(); - if (Conf['Index Mode'] === 'paged') { + if (Conf['Index Mode'] !== 'all pages') { pageNum = Math.min(pageNum, Index.getMaxPageNum()); } Index.buildPagelist(); @@ -11150,13 +11154,13 @@ $.open("/" + g.BOARD + "/"); break; case Conf['Next page']: - if (!(g.VIEW === 'index' && Conf['Index Mode'] === 'paged')) { + if (!(g.VIEW === 'index' && Conf['Index Mode'] !== 'all pages')) { return; } $('.next button', Index.pagelist).click(); break; case Conf['Previous page']: - if (!(g.VIEW === 'index' && Conf['Index Mode'] === 'paged')) { + if (!(g.VIEW === 'index' && Conf['Index Mode'] !== 'all pages')) { return; } $('.prev button', Index.pagelist).click(); diff --git a/builds/crx/script.js b/builds/crx/script.js index 77441fa14..8cd95b2f9 100644 --- a/builds/crx/script.js +++ b/builds/crx/script.js @@ -2151,6 +2151,10 @@ el: $.el('label', { innerHTML: ' Paged' }) + }, { + el: $.el('label', { + innerHTML: ' Infinite scrolling' + }) }, { el: $.el('label', { innerHTML: ' All threads' @@ -2286,7 +2290,7 @@ }, scroll: $.debounce(100, function() { var nodes, nodesPerPage, pageNum; - if (Conf['Index Mode'] !== 'paged' || ((d.body.scrollTop || doc.scrollTop) <= doc.scrollHeight - (300 + window.innerHeight))) { + if (Index.req || Conf['Index Mode'] !== 'infinite' || ((d.body.scrollTop || doc.scrollTop) <= doc.scrollHeight - (300 + window.innerHeight))) { return; } pageNum = Index.getCurrentPage() + 1; @@ -2375,7 +2379,7 @@ return +window.location.pathname.split('/')[2]; }, userPageNav: function(pageNum) { - if (Conf['Refreshed Navigation'] && Conf['Index Mode'] === 'paged') { + if (Conf['Refreshed Navigation'] && Conf['Index Mode'] !== 'all pages') { return Index.update(pageNum); } else { return Index.pageNav(pageNum); @@ -2390,7 +2394,7 @@ }, pageLoad: function(pageNum) { Index.currentPage = pageNum; - if (Conf['Index Mode'] !== 'paged') { + if (Conf['Index Mode'] === 'all pages') { return; } Index.buildIndex(); @@ -2408,7 +2412,7 @@ return Math.max(0, Index.getPagesNum() - 1); }, togglePagelist: function() { - return Index.pagelist.hidden = Conf['Index Mode'] !== 'paged'; + return Index.pagelist.hidden = Conf['Index Mode'] === 'all pages'; }, buildPagelist: function() { var a, i, maxPageNum, nodes, pagesRoot, _i; @@ -2696,7 +2700,7 @@ }, buildIndex: function() { var nodes, nodesPerPage, pageNum; - if (Conf['Index Mode'] === 'paged') { + if (Conf['Index Mode'] !== 'all pages') { pageNum = Index.getCurrentPage(); nodesPerPage = Index.threadsNumPerPage * 2; nodes = Index.sortedNodes.slice(nodesPerPage * pageNum, nodesPerPage * (pageNum + 1)); @@ -2733,7 +2737,7 @@ delete Index.searchInput.dataset.searching; } Index.sort(); - if (Conf['Index Mode'] === 'paged') { + if (Conf['Index Mode'] !== 'all pages') { pageNum = Math.min(pageNum, Index.getMaxPageNum()); } Index.buildPagelist(); @@ -11139,13 +11143,13 @@ $.open("/" + g.BOARD + "/"); break; case Conf['Next page']: - if (!(g.VIEW === 'index' && Conf['Index Mode'] === 'paged')) { + if (!(g.VIEW === 'index' && Conf['Index Mode'] !== 'all pages')) { return; } $('.next button', Index.pagelist).click(); break; case Conf['Previous page']: - if (!(g.VIEW === 'index' && Conf['Index Mode'] === 'paged')) { + if (!(g.VIEW === 'index' && Conf['Index Mode'] !== 'all pages')) { return; } $('.prev button', Index.pagelist).click();