From 5aa208c279fa8e571ab27179f20ed59f1e14568f Mon Sep 17 00:00:00 2001 From: Nicolas Stepien Date: Sun, 24 Jul 2011 04:08:03 +0200 Subject: [PATCH] Move IRC updating to the updater's settings. Scroll only on new posts. --- 4chan_x.user.js | 11 ++++++----- script.coffee | 13 +++++++------ 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/4chan_x.user.js b/4chan_x.user.js index 4a708bb10..23077f498 100644 --- a/4chan_x.user.js +++ b/4chan_x.user.js @@ -89,7 +89,6 @@ }, Monitoring: { 'Thread Updater': [true, 'Update threads'], - 'IRC Updating': [false, 'Scroll updated posts into view'], 'Unread Count': [true, 'Show unread post count in tab title'], 'Post in Title': [true, 'Show the op\'s post in the tab title'], 'Thread Stats': [true, 'Display reply and image count'], @@ -139,6 +138,7 @@ updater: { checkbox: { 'Verbose': [true, 'Show countdown timer, new post count'], + 'IRC Updating': [false, 'Scroll updated posts into view'], 'Auto Update': [true, 'Automatically fetch new posts'] }, 'Interval': 30 @@ -1622,7 +1622,7 @@ return updater.interval = this.value = this.value.match(/\d+/)[0]; }, update: function() { - var arr, body, br, id, input, replies, reply, _i, _len, _ref, _ref2; + var arr, body, br, id, input, length, replies, reply, _i, _len, _ref, _ref2; if (this.status === 404) { updater.timer.textContent = ''; updater.count.textContent = 404; @@ -1649,10 +1649,11 @@ while ((reply = replies.pop()) && (reply.id > id)) { arr.push(reply.parentNode.parentNode.parentNode); } + length = arr.length; updater.timer.textContent = '-' + updater.interval; if (updater.verbose) { - updater.count.textContent = '+' + arr.length; - if (arr.length === 0) { + updater.count.textContent = '+' + length; + if (length === 0) { updater.count.className = ''; } else { updater.count.className = 'new'; @@ -1661,7 +1662,7 @@ while (reply = arr.pop()) { $.before(br, reply); } - if (updater.ircUpd) { + if (updater.ircUpd && length) { return scrollTo(0, d.body.scrollHeight); } } diff --git a/script.coffee b/script.coffee index f8fb9492d..1006ef8c0 100644 --- a/script.coffee +++ b/script.coffee @@ -23,7 +23,6 @@ config = 'Reveal Spoilers': [false, 'Replace spoiler thumbnails by the original thumbnail'] Monitoring: 'Thread Updater': [true, 'Update threads'] - 'IRC Updating': [false, 'Scroll updated posts into view'] 'Unread Count': [true, 'Show unread post count in tab title'] 'Post in Title': [true, 'Show the op\'s post in the tab title'] 'Thread Stats': [true, 'Display reply and image count'] @@ -73,8 +72,9 @@ config = update: 'u' updater: checkbox: - 'Verbose': [true, 'Show countdown timer, new post count'] - 'Auto Update': [true, 'Automatically fetch new posts'] + 'Verbose': [true, 'Show countdown timer, new post count'] + 'IRC Updating': [false, 'Scroll updated posts into view'] + 'Auto Update': [true, 'Automatically fetch new posts'] 'Interval': 30 # flatten the config @@ -1346,11 +1346,12 @@ updater = replies = $$ 'td[id]', body while (reply = replies.pop()) and (reply.id > id) arr.push reply.parentNode.parentNode.parentNode #table + length = arr.length updater.timer.textContent = '-' + updater.interval if updater.verbose - updater.count.textContent = '+' + arr.length - if arr.length is 0 + updater.count.textContent = '+' + length + if length is 0 updater.count.className = '' else updater.count.className = 'new' @@ -1358,7 +1359,7 @@ updater = #XXX add replies in correct order so backlinks resolve while reply = arr.pop() $.before br, reply - if updater.ircUpd + if updater.ircUpd && length scrollTo 0, d.body.scrollHeight timeout: ->