diff --git a/assets/javascripts/app/settings.coffee b/assets/javascripts/app/settings.coffee index ec651b32..b9a9e1c3 100644 --- a/assets/javascripts/app/settings.coffee +++ b/assets/javascripts/app/settings.coffee @@ -40,13 +40,6 @@ class app.Settings @store.set TIPS_KEY, tips.join('/') return - setDark: (value) -> - @store.set DARK_KEY, !!value - return - - getDark: -> - @store.get DARK_KEY - setLayout: (name, enable) -> layout = (@store.get(LAYOUT_KEY) || '').split(' ') $.arrayDelete(layout, '') diff --git a/assets/javascripts/templates/pages/settings_tmpl.coffee b/assets/javascripts/templates/pages/settings_tmpl.coffee index 31cc0e72..10e3761b 100644 --- a/assets/javascripts/templates/pages/settings_tmpl.coffee +++ b/assets/javascripts/templates/pages/settings_tmpl.coffee @@ -17,6 +17,16 @@ app.templates.settingsPage = (settings) -> """ +
+

Scrolling:

+ +
+ +
+
+

Advanced:

diff --git a/assets/javascripts/views/content/content.coffee b/assets/javascripts/views/content/content.coffee index 404938b4..ecbd8f15 100644 --- a/assets/javascripts/views/content/content.coffee +++ b/assets/javascripts/views/content/content.coffee @@ -64,7 +64,10 @@ class app.views.Content extends app.View return smoothScrollTo: (value) -> - $.smoothScroll @scrollEl, value or 0 + if app.settings.get('fastScroll') + @scrollTo value + else + $.smoothScroll @scrollEl, value or 0 return scrollBy: (n) -> diff --git a/assets/javascripts/views/content/settings_page.coffee b/assets/javascripts/views/content/settings_page.coffee index 7b74e6bf..b4be96e0 100644 --- a/assets/javascripts/views/content/settings_page.coffee +++ b/assets/javascripts/views/content/settings_page.coffee @@ -13,7 +13,8 @@ class app.views.SettingsPage extends app.View currentSettings: -> settings = {} - settings.dark = app.settings.getDark() + settings.dark = app.settings.get('dark') + settings.smoothScroll = !app.settings.get('fastScroll') settings[layout] = app.settings.hasLayout(layout) for layout in LAYOUTS settings @@ -25,7 +26,7 @@ class app.views.SettingsPage extends app.View alt = css.getAttribute('data-alt') css.setAttribute('data-alt', css.getAttribute('href')) css.setAttribute('href', alt) - app.settings.setDark(enable) + app.settings.set('dark', !!enable) app.appCache?.updateInBackground() return @@ -35,6 +36,10 @@ class app.views.SettingsPage extends app.View app.appCache?.updateInBackground() return + toggleSmoothScroll: (enable) -> + app.settings.set('fastScroll', !enable) + return + onChange: (event) => input = event.target switch input.name @@ -42,6 +47,8 @@ class app.views.SettingsPage extends app.View @toggleDark input.checked when 'layout' @toggleLayout input.value, input.checked + when 'smoothScroll' + @toggleSmoothScroll input.checked return onRoute: (route) =>