diff --git a/LICENSE b/LICENSE index 9340c2d23..a43d74f86 100644 --- a/LICENSE +++ b/LICENSE @@ -1,5 +1,5 @@ /* -* 4chan X - Version 1.2.4 - 2013-05-14 +* 4chan X - Version 1.2.4 - 2013-05-15 * * Licensed under the MIT license. * https://github.com/seaweedchan/4chan-x/blob/master/LICENSE diff --git a/builds/4chan-X.js b/builds/4chan-X.js index fd177fa7c..5059e6745 100644 --- a/builds/4chan-X.js +++ b/builds/4chan-X.js @@ -19,7 +19,7 @@ // @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAACVBMVEUAAGcAAABmzDNZt9VtAAAAAXRSTlMAQObYZgAAAHFJREFUKFOt0LENACEIBdBv4Qju4wgWanEj3D6OcIVMKaitYHEU/jwTCQj8W75kiVCSBvdQ5/AvfVHBin11BgdRq3ysBgfwBDRrj3MCIA+oAQaku/Q1cNctrAmyDl577tOThYt/Y1RBM4DgOHzM0HFTAyLukH/cmRnqAAAAAElFTkSuQmCC // ==/UserScript== /* -* 4chan X - Version 1.2.4 - 2013-05-14 +* 4chan X - Version 1.2.4 - 2013-05-15 * * Licensed under the MIT license. * https://github.com/seaweedchan/4chan-x/blob/master/LICENSE @@ -7574,13 +7574,12 @@ } } Unread.addPosts(posts); - if (!Conf['Scroll to Last Read Post']) { - return; + if (Conf['Scroll to Last Read Post']) { + return Unread.scroll(); } - return Unread.scroll(); }, scroll: function() { - var hash, onload, post, posts, prevID, root; + var hash, post, posts, prevID, root; if ((hash = location.hash.match(/\d+/)) && hash[0] in Unread.thread.posts) { return; @@ -7597,17 +7596,11 @@ break; } } - onload = function() { - return root.scrollIntoView(false); - }; - } else { - posts = Object.keys(Unread.thread.posts); - post = Unread.thread.posts[posts[posts.length - 1]]; - onload = function() { - return Header.scrollToPost(post.nodes.root); - }; + root.scrollIntoView(false); + return; } - return $.on(window, 'load', onload); + posts = Object.keys(Unread.thread.posts); + return Header.scrollToPost(Unread.thread.posts[posts[posts.length - 1]].nodes.root); }, sync: function() { var lastReadPost; diff --git a/builds/4chan-X.user.js b/builds/4chan-X.user.js index 8ffbe54b5..b7eb1cb40 100644 --- a/builds/4chan-X.user.js +++ b/builds/4chan-X.user.js @@ -19,7 +19,7 @@ // @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAACVBMVEUAAGcAAABmzDNZt9VtAAAAAXRSTlMAQObYZgAAAHFJREFUKFOt0LENACEIBdBv4Qju4wgWanEj3D6OcIVMKaitYHEU/jwTCQj8W75kiVCSBvdQ5/AvfVHBin11BgdRq3ysBgfwBDRrj3MCIA+oAQaku/Q1cNctrAmyDl577tOThYt/Y1RBM4DgOHzM0HFTAyLukH/cmRnqAAAAAElFTkSuQmCC // ==/UserScript== /* -* 4chan X - Version 1.2.4 - 2013-05-14 +* 4chan X - Version 1.2.4 - 2013-05-15 * * Licensed under the MIT license. * https://github.com/seaweedchan/4chan-x/blob/master/LICENSE @@ -7583,13 +7583,12 @@ } } Unread.addPosts(posts); - if (!Conf['Scroll to Last Read Post']) { - return; + if (Conf['Scroll to Last Read Post']) { + return Unread.scroll(); } - return Unread.scroll(); }, scroll: function() { - var hash, onload, post, posts, prevID, root; + var hash, post, posts, prevID, root; if ((hash = location.hash.match(/\d+/)) && hash[0] in Unread.thread.posts) { return; @@ -7606,17 +7605,11 @@ break; } } - onload = function() { - return root.scrollIntoView(false); - }; - } else { - posts = Object.keys(Unread.thread.posts); - post = Unread.thread.posts[posts[posts.length - 1]]; - onload = function() { - return Header.scrollToPost(post.nodes.root); - }; + root.scrollIntoView(false); + return; } - return $.on(window, 'load', onload); + posts = Object.keys(Unread.thread.posts); + return Header.scrollToPost(Unread.thread.posts[posts[posts.length - 1]].nodes.root); }, sync: function() { var lastReadPost; diff --git a/builds/crx/script.js b/builds/crx/script.js index fc3f3ee30..fec231d16 100644 --- a/builds/crx/script.js +++ b/builds/crx/script.js @@ -1,6 +1,6 @@ // Generated by CoffeeScript /* -* 4chan X - Version 1.2.4 - 2013-05-14 +* 4chan X - Version 1.2.4 - 2013-05-15 * * Licensed under the MIT license. * https://github.com/seaweedchan/4chan-x/blob/master/LICENSE @@ -7561,13 +7561,12 @@ } } Unread.addPosts(posts); - if (!Conf['Scroll to Last Read Post']) { - return; + if (Conf['Scroll to Last Read Post']) { + return Unread.scroll(); } - return Unread.scroll(); }, scroll: function() { - var hash, onload, post, posts, prevID, root; + var hash, post, posts, prevID, root; if ((hash = location.hash.match(/\d+/)) && hash[0] in Unread.thread.posts) { return; @@ -7584,17 +7583,11 @@ break; } } - onload = function() { - return root.scrollIntoView(false); - }; - } else { - posts = Object.keys(Unread.thread.posts); - post = Unread.thread.posts[posts[posts.length - 1]]; - onload = function() { - return Header.scrollToPost(post.nodes.root); - }; + root.scrollIntoView(false); + return; } - return $.on(window, 'load', onload); + posts = Object.keys(Unread.thread.posts); + return Header.scrollToPost(Unread.thread.posts[posts[posts.length - 1]].nodes.root); }, sync: function() { var lastReadPost; diff --git a/src/Monitoring/Unread.coffee b/src/Monitoring/Unread.coffee index 286656056..9dae14212 100644 --- a/src/Monitoring/Unread.coffee +++ b/src/Monitoring/Unread.coffee @@ -30,8 +30,7 @@ Unread = for ID, post of Unread.thread.posts posts.push post if post.isReply Unread.addPosts posts - return unless Conf['Scroll to Last Read Post'] - Unread.scroll() + Unread.scroll() if Conf['Scroll to Last Read Post'] scroll: -> # Let the header's onload callback handle it. @@ -44,15 +43,11 @@ Unread = break if prevID is post.ID prevID = post.ID break unless post.isHidden - onload = -> root.scrollIntoView false - else - # Scroll to the last read post. - posts = Object.keys Unread.thread.posts - post = Unread.thread.posts[posts[posts.length - 1]] - onload = -> Header.scrollToPost post.nodes.root - # Prevent the browser to scroll back to - # the previous scroll location on page load. - $.on window, 'load', onload + root.scrollIntoView false + return + # Scroll to the last read post. + posts = Object.keys Unread.thread.posts + Header.scrollToPost Unread.thread.posts[posts[posts.length - 1]].nodes.root sync: -> lastReadPost = Unread.db.get