From 28ba985ef936bfffcb83025b2a093e048c761938 Mon Sep 17 00:00:00 2001 From: Robert Schilling Date: Sun, 21 Sep 2014 21:06:38 +0200 Subject: Save last scrollposition and scroll back when leaving ZEN mode --- app/assets/javascripts/zen_mode.js.coffee | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/assets/javascripts/zen_mode.js.coffee b/app/assets/javascripts/zen_mode.js.coffee index d28b635355e..21ac212df0e 100644 --- a/app/assets/javascripts/zen_mode.js.coffee +++ b/app/assets/javascripts/zen_mode.js.coffee @@ -4,10 +4,16 @@ class @ZenMode constructor: -> @active_zen_area = null @active_checkbox = null + @scroll_position = 0 + + $(window).scroll => + if not @active_checkbox + @scroll_position = window.pageYOffset $('body').on 'change', '.zennable input[type=checkbox]', (e) => checkbox = e.currentTarget if checkbox.checked + # Disable other keyboard shortcuts in ZEN mode Mousetrap.pause() @udpateActiveZenArea(checkbox) else @@ -34,6 +40,7 @@ class @ZenMode @active_zen_area = null @active_checkbox = null window.location.hash = '' + window.scrollTo(window.pageXOffset, @scroll_position) checkboxFromLocationHash: (e) -> id = $.trim(window.location.hash.replace('#' + ZenMode.fullscreen_prefix, '')) -- cgit v1.2.1