Update mode toggle.

This commit is contained in:
Lars Jung 2015-05-14 18:04:39 +02:00
parent a61dea8c40
commit 89d56b3ae4
3 changed files with 10 additions and 6 deletions

View file

@ -30,6 +30,7 @@ Options
is given the view mode is fixed and the selector buttons are hidden.
The user selected view mode is also stored local in modern browsers
so that it will be persistent.
- modeToggle: boolean, show a view mode toggle in the toolbar, or "next"
- setParentFolderLabels: boolean, set parent folder labels to real folder names
- sizes: array of numbers
the first value indicates the default view size. If only one value
@ -39,7 +40,6 @@ Options
- theme: string, name of one of the folders in "_{{pkg.name}}/images/themes", defaults to "default"
- unmanaged: array of strings, don't manage folders containing one of those files
- unmanagedInNewWindow: boolean, open unmanaged links in new window/tab
- viewmodeToggle: boolean, show a view mode toggle in the toolbar
*/
"view": {
"binaryPrefix": false,
@ -49,12 +49,12 @@ Options
"hideIf403": true,
"hideParentFolder": false,
"modes": ["details", "grid", "icons"],
"modeToggle": false,
"setParentFolderLabels": true,
"sizes": [20, 40, 60, 80, 100, 150, 200, 250, 300, 350, 400],
"theme": "",
"unmanaged": ["index.html", "index.htm", "index.php"],
"unmanagedInNewWindow": false,
"viewmodeToggle": false
"unmanagedInNewWindow": false
},

View file

@ -1,7 +1,7 @@
modulejs.define('view/viewmode', ['_', '$', 'core/event', 'core/resource', 'core/settings', 'view/sidebar', 'view/topbar', 'view/view'], function (_, $, event, resource, allsettings, sidebar, topbar, view) {
var settings = _.extend({
viewmodeToggle: false
modeToggle: false
}, allsettings.view);
var tplSettings =
'<div id="viewmode-settings" class="block"><h1 class="l10n-view">View</h1></div>';
@ -24,6 +24,10 @@ modulejs.define('view/viewmode', ['_', '$', 'core/event', 'core/resource', 'core
$('#viewmode-settings .mode').removeClass('active');
$('#viewmode-' + mode).addClass('active');
$('#viewmode-size').val(_.indexOf(sizes, size));
if (settings.modeToggle === 'next') {
mode = modes[(modes.indexOf(mode) + 1) % modes.length];
}
$('#viewmode-toggle img').attr('src', resource.image('view-' + mode));
}
@ -71,7 +75,7 @@ modulejs.define('view/viewmode', ['_', '$', 'core/event', 'core/resource', 'core
function addToggle() {
if (settings.viewmodeToggle && modes.length > 1) {
if (settings.modeToggle && modes.length > 1) {
$(tplToggle)
.on('click', onToggle)
.appendTo(topbar.$toolbar);