diff --git a/lib/polyfill.coffee b/lib/polyfill.coffee index 0c098b212..5d9ddc124 100644 --- a/lib/polyfill.coffee +++ b/lib/polyfill.coffee @@ -3,20 +3,10 @@ Polyfill = Polyfill.visibility() visibility: -> # page visibility API - return if 'visibilityState' of document - if 'webkitVisibilityState' of document - prefix = 'webkit' - else if 'mozVisibilityState' of document - prefix = 'moz' - else - return - - property = prefix + 'VisibilityState' - event = prefix + 'visibilitychange' - - d.visibilityState = d[property] - d.hidden = d.visibilityState is 'hidden' - $.on d, event, -> - d.visibilityState = d[property] - d.hidden = d.visibilityState is 'hidden' - $.event 'visibilitychange' + return unless 'webkitHidden' of document + Object.defineProperties HTMLDocument.prototype, + visibilityState: + get: -> @webkitVisibilityState + hidden: + get: -> @webkitHidden + $.on d, 'webkitvisibilitychange', -> $.event 'visibilitychange'