From f1c15e12c7f9661bfbbc947866e7d49430c13699 Mon Sep 17 00:00:00 2001 From: ccd0 Date: Sat, 29 Oct 2016 21:46:20 -0700 Subject: [PATCH] Limit rate at which scrolling causes thread watcher unread count to be saved. #1168 --- src/Monitoring/Unread.coffee | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/Monitoring/Unread.coffee b/src/Monitoring/Unread.coffee index d2b801cc8..230fb7a7a 100644 --- a/src/Monitoring/Unread.coffee +++ b/src/Monitoring/Unread.coffee @@ -231,12 +231,7 @@ Unread = Unread.title d.title = "#{titleQuotingYou}#{titleCount}#{titleDead}" - $.forceSync 'Remember Last Read Post' - if Conf['Remember Last Read Post'] and (!Unread.thread.isDead or Unread.thread.isArchived) - ThreadWatcher.update Unread.thread.board.ID, Unread.thread.ID, - isDead: Unread.thread.isDead - unread: count - quotingYou: countQuotingYou + Unread.saveThreadWatcherCount() if Conf['Unread Favicon'] {isDead} = Unread.thread @@ -249,3 +244,11 @@ Unread = Favicon[if isDead then 'dead' else 'default'] # `favicon.href = href` doesn't work on Firefox. $.add d.head, Favicon.el + + saveThreadWatcherCount: $.debounce 2 * $.SECOND, -> + $.forceSync 'Remember Last Read Post' + if Conf['Remember Last Read Post'] and (!Unread.thread.isDead or Unread.thread.isArchived) + ThreadWatcher.update Unread.thread.board.ID, Unread.thread.ID, + isDead: Unread.thread.isDead + unread: Unread.posts.size + quotingYou: Unread.postsQuotingYou.size