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) =>