diff --git a/src/Monitoring/Favicon.coffee b/src/Monitoring/Favicon.coffee index 84418213d..be88d2599 100644 --- a/src/Monitoring/Favicon.coffee +++ b/src/Monitoring/Favicon.coffee @@ -1,13 +1,22 @@ Favicon = init: -> $.asap (-> d.head and (Favicon.el = $ 'link[rel="shortcut icon"]', d.head)), Favicon.initAsap - + + set: (status) -> + Favicon.status = status + if Favicon.el + Favicon.el.href = Favicon[status] + # `favicon.href = href` doesn't work on Firefox. + $.add d.head, Favicon.el + initAsap: -> Favicon.el.type = 'image/x-icon' {href} = Favicon.el Favicon.isSFW = /ws\.ico$/.test href Favicon.default = href Favicon.switch() + if Favicon.status + Favicon.set Favicon.status switch: -> items = { diff --git a/src/Monitoring/Unread.coffee b/src/Monitoring/Unread.coffee index 08f6f8b81..d71174eaf 100644 --- a/src/Monitoring/Unread.coffee +++ b/src/Monitoring/Unread.coffee @@ -236,15 +236,14 @@ Unread = if Conf['Unread Favicon'] and g.SITE.software is 'yotsuba' {isDead} = Unread.thread - Favicon.el.href = + Favicon.set ( if countQuotingYou - Favicon[if isDead then 'unreadDeadY' else 'unreadY'] + (if isDead then 'unreadDeadY' else 'unreadY') else if count - Favicon[if isDead then 'unreadDead' else 'unread'] + (if isDead then 'unreadDead' else 'unread') else - Favicon[if isDead then 'dead' else 'default'] - # `favicon.href = href` doesn't work on Firefox. - $.add d.head, Favicon.el + (if isDead then 'dead' else 'default') + ) saveThreadWatcherCount: $.debounce 2 * $.SECOND, -> $.forceSync 'Remember Last Read Post'