forked from Archives/Athou_commafeed
customizable scrolling speed
This commit is contained in:
@@ -68,4 +68,7 @@ public class UserSettings extends AbstractModel {
|
||||
@Column(length = Integer.MAX_VALUE)
|
||||
private String customCss;
|
||||
|
||||
@Column(name = "scroll_speed")
|
||||
private int scrollSpeed;
|
||||
|
||||
}
|
||||
|
||||
@@ -38,5 +38,8 @@ public class Settings implements Serializable {
|
||||
|
||||
@ApiProperty(value = "user's custom css for the website")
|
||||
private String customCss;
|
||||
|
||||
@ApiProperty(value = "user's preferred scroll speed when navigating between entries")
|
||||
private int scrollSpeed;
|
||||
|
||||
}
|
||||
|
||||
@@ -79,6 +79,7 @@ public class UserREST extends AbstractREST {
|
||||
s.setTheme(settings.getTheme());
|
||||
s.setCustomCss(settings.getCustomCss());
|
||||
s.setLanguage(settings.getLanguage());
|
||||
s.setScrollSpeed(settings.getScrollSpeed());
|
||||
} else {
|
||||
s.setReadingMode(ReadingMode.unread.name());
|
||||
s.setReadingOrder(ReadingOrder.desc.name());
|
||||
@@ -88,6 +89,7 @@ public class UserREST extends AbstractREST {
|
||||
s.setSocialButtons(true);
|
||||
s.setScrollMarks(true);
|
||||
s.setLanguage("en");
|
||||
s.setScrollSpeed(400);
|
||||
}
|
||||
return Response.ok(s).build();
|
||||
}
|
||||
@@ -116,6 +118,7 @@ public class UserREST extends AbstractREST {
|
||||
s.setCustomCss(settings.getCustomCss());
|
||||
s.setSocialButtons(settings.isSocialButtons());
|
||||
s.setLanguage(settings.getLanguage());
|
||||
s.setScrollSpeed(settings.getScrollSpeed());
|
||||
userSettingsDAO.saveOrUpdate(s);
|
||||
return Response.ok().build();
|
||||
|
||||
|
||||
16
src/main/resources/changelogs/db.changelog-1.4.xml
Normal file
16
src/main/resources/changelogs/db.changelog-1.4.xml
Normal file
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.0.xsd">
|
||||
|
||||
<changeSet author="athou" id="scroll-speed">
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="scroll_speed" type="BIGINT" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
<changeSet author="athou" id="set-default-scroll-speed">
|
||||
<update tableName="USERSETTINGS">
|
||||
<column name="scroll_speed" valueNumeric="400" />
|
||||
</update>
|
||||
</changeSet>
|
||||
|
||||
</databaseChangeLog>
|
||||
@@ -7,5 +7,6 @@
|
||||
<include file="changelogs/db.changelog-1.1.xml" />
|
||||
<include file="changelogs/db.changelog-1.2.xml" />
|
||||
<include file="changelogs/db.changelog-1.3.xml" />
|
||||
<include file="changelogs/db.changelog-1.4.xml" />
|
||||
|
||||
</databaseChangeLog>
|
||||
@@ -67,6 +67,8 @@ settings.general.show_unread=Show feeds and categories with no unread entries
|
||||
settings.general.social_buttons=Show social sharing buttons
|
||||
settings.general.scroll_marks=In expanded view, scrolling through entries mark them as read
|
||||
settings.appearance=Appearance
|
||||
settings.scroll_speed=Scrolling speed when navigating between entries (in milliseconds)
|
||||
settings.scroll_speed.help=set to 0 to disable
|
||||
settings.theme=Theme
|
||||
settings.submit_your_theme=Submit your theme
|
||||
settings.custom_css=Custom CSS
|
||||
|
||||
@@ -785,10 +785,11 @@ module.controller('FeedListCtrl', [
|
||||
return;
|
||||
} else {
|
||||
var scrollTop = elemTop - $('#toolbar').outerHeight();
|
||||
var speed = SettingsService.settings.scrollSpeed;
|
||||
watch_scrolling = false;
|
||||
$('html, body').animate({
|
||||
scrollTop : scrollTop
|
||||
}, 400, 'swing', function() {
|
||||
}, speed, 'swing', function() {
|
||||
watch_scrolling = true;
|
||||
});
|
||||
}
|
||||
|
||||
@@ -55,6 +55,11 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab-pane" ng-class="{active: tab == 'css'}">
|
||||
<div>
|
||||
<label>${settings.scroll_speed}</label>
|
||||
<input type="number" ng-model="settings.scrollSpeed" min="0" max="1000" />
|
||||
<span class="help-inline">${settings.scroll_speed.help}</span>
|
||||
</div>
|
||||
<div>
|
||||
<label>${settings.theme}</label>
|
||||
<select ng-model="settings.theme" ng-options="theme for theme in themes"></select>
|
||||
|
||||
Reference in New Issue
Block a user