forked from 0x2620/pandora
fix bugs with setting list selection and video points on load
This commit is contained in:
parent
fc81d9de47
commit
c836392051
4 changed files with 19 additions and 30 deletions
|
@ -73,22 +73,12 @@ pandora.UI = (function() {
|
||||||
}
|
}
|
||||||
if (key == 'item' && val) {
|
if (key == 'item' && val) {
|
||||||
// when switching to an item, update list selection
|
// when switching to an item, update list selection
|
||||||
|
var list = pandora.user.ui._list || '';
|
||||||
add['listSelection'] = [val];
|
add['listSelection'] = [val];
|
||||||
add['lists.' + that.encode(pandora.user.ui._list || '') + '.selection'] = [val];
|
if (!pandora.user.ui.lists[list]) {
|
||||||
}
|
add['lists.' + that.encode(list)] = {};
|
||||||
if ((
|
}
|
||||||
key == 'item'
|
add['lists.' + that.encode(list) + '.selection'] = [val];
|
||||||
&& ['video', 'timeline'].indexOf(pandora.user.ui.itemView) > -1
|
|
||||||
&& !pandora.user.ui.videoPoints[val]
|
|
||||||
) || (
|
|
||||||
key == 'itemView'
|
|
||||||
&& ['video', 'timeline'].indexOf(val) > -1
|
|
||||||
&& !pandora.user.ui.videoPoints[pandora.user.ui.item]
|
|
||||||
)) {
|
|
||||||
// when switching to a video view, add default videoPoints
|
|
||||||
add['videoPoints.' + (
|
|
||||||
key == 'item' ? val : pandora.user.ui.item
|
|
||||||
)] = {'in': 0, out: 0, position: 0};
|
|
||||||
}
|
}
|
||||||
if (key == 'itemView' && ['video', 'timeline'].indexOf(val) > -1) {
|
if (key == 'itemView' && ['video', 'timeline'].indexOf(val) > -1) {
|
||||||
// when switching to a video view, add it as default video view
|
// when switching to a video view, add it as default video view
|
||||||
|
@ -97,6 +87,7 @@ pandora.UI = (function() {
|
||||||
});
|
});
|
||||||
[args, add].forEach(function(obj, isAdd) {
|
[args, add].forEach(function(obj, isAdd) {
|
||||||
Ox.forEach(obj, function(val, key) {
|
Ox.forEach(obj, function(val, key) {
|
||||||
|
Ox.print('key/val', key, val)
|
||||||
// make sure to not split at escaped dots ('\.')
|
// make sure to not split at escaped dots ('\.')
|
||||||
var keys = key.replace(/\\\./g, '\n').split('.').map(function(key) {
|
var keys = key.replace(/\\\./g, '\n').split('.').map(function(key) {
|
||||||
return key.replace(/\n/g, '.')
|
return key.replace(/\n/g, '.')
|
||||||
|
@ -105,6 +96,7 @@ pandora.UI = (function() {
|
||||||
while (keys.length > 1) {
|
while (keys.length > 1) {
|
||||||
ui = ui[keys.shift()];
|
ui = ui[keys.shift()];
|
||||||
}
|
}
|
||||||
|
Ox.print(keys[0])
|
||||||
if (!Ox.isEqual(ui[keys[0]], val)) {
|
if (!Ox.isEqual(ui[keys[0]], val)) {
|
||||||
if (val === null) {
|
if (val === null) {
|
||||||
delete ui[keys[0]]
|
delete ui[keys[0]]
|
||||||
|
|
|
@ -124,10 +124,13 @@ pandora.ui.item = function() {
|
||||||
return '/' + pandora.user.ui.item + '/timeline64p' + i + '.png';
|
return '/' + pandora.user.ui.item + '/timeline64p' + i + '.png';
|
||||||
},
|
},
|
||||||
height: pandora.$ui.contentPanel.size(1),
|
height: pandora.$ui.contentPanel.size(1),
|
||||||
'in': pandora.user.ui.videoPoints[pandora.user.ui.item]['in'],
|
'in': pandora.user.ui.videoPoints[pandora.user.ui.item]
|
||||||
|
? pandora.user.ui.videoPoints[pandora.user.ui.item]['in'] : 0,
|
||||||
muted: pandora.user.ui.videoMuted,
|
muted: pandora.user.ui.videoMuted,
|
||||||
out: pandora.user.ui.videoPoints[pandora.user.ui.item].out,
|
out: pandora.user.ui.videoPoints[pandora.user.ui.item]
|
||||||
position: pandora.user.ui.videoPoints[pandora.user.ui.item].position,
|
? pandora.user.ui.videoPoints[pandora.user.ui.item].out : 0,
|
||||||
|
position: pandora.user.ui.videoPoints[pandora.user.ui.item]
|
||||||
|
? pandora.user.ui.videoPoints[pandora.user.ui.item].position : 0,
|
||||||
scaleToFill: pandora.user.ui.videoScale == 'fill',
|
scaleToFill: pandora.user.ui.videoScale == 'fill',
|
||||||
showAnnotations: pandora.user.ui.showAnnotations,
|
showAnnotations: pandora.user.ui.showAnnotations,
|
||||||
showControls: pandora.user.ui.showControls,
|
showControls: pandora.user.ui.showControls,
|
||||||
|
@ -197,11 +200,14 @@ pandora.ui.item = function() {
|
||||||
},
|
},
|
||||||
height: pandora.$ui.contentPanel.size(1),
|
height: pandora.$ui.contentPanel.size(1),
|
||||||
id: 'editor',
|
id: 'editor',
|
||||||
'in': pandora.user.ui.videoPoints[pandora.user.ui.item]['in'],
|
'in': pandora.user.ui.videoPoints[pandora.user.ui.item]
|
||||||
|
? pandora.user.ui.videoPoints[pandora.user.ui.item]['in'] : 0,
|
||||||
layers: layers,
|
layers: layers,
|
||||||
muted: pandora.user.ui.videoMuted,
|
muted: pandora.user.ui.videoMuted,
|
||||||
out: pandora.user.ui.videoPoints[pandora.user.ui.item].out,
|
out: pandora.user.ui.videoPoints[pandora.user.ui.item]
|
||||||
position: pandora.user.ui.videoPoints[pandora.user.ui.item].position,
|
? pandora.user.ui.videoPoints[pandora.user.ui.item].out : 0,
|
||||||
|
position: pandora.user.ui.videoPoints[pandora.user.ui.item]
|
||||||
|
? pandora.user.ui.videoPoints[pandora.user.ui.item].position : 0,
|
||||||
posterFrame: parseInt(video.duration / 2),
|
posterFrame: parseInt(video.duration / 2),
|
||||||
showAnnotations: pandora.user.ui.showAnnotations,
|
showAnnotations: pandora.user.ui.showAnnotations,
|
||||||
showLargeTimeline: true,
|
showLargeTimeline: true,
|
||||||
|
|
|
@ -207,7 +207,6 @@ pandora.ui.list = function() {
|
||||||
.apply(this, Ox.merge([data[sortKey]], format.args || []))
|
.apply(this, Ox.merge([data[sortKey]], format.args || []))
|
||||||
: data[sortKey];
|
: data[sortKey];
|
||||||
}
|
}
|
||||||
Ox.print('CLIPS::', data.clips)
|
|
||||||
return {
|
return {
|
||||||
icon: {
|
icon: {
|
||||||
height: Math.round(ratio <= 1 ? size : size / ratio),
|
height: Math.round(ratio <= 1 ? size : size / ratio),
|
||||||
|
|
|
@ -416,14 +416,6 @@ pandora.exitFullscreen = function() {
|
||||||
pandora.user.ui.showBrowser && pandora.$ui.contentPanel.size(0, 112 + Ox.UI.SCROLLBAR_SIZE);
|
pandora.user.ui.showBrowser && pandora.$ui.contentPanel.size(0, 112 + Ox.UI.SCROLLBAR_SIZE);
|
||||||
};
|
};
|
||||||
|
|
||||||
pandora.getClipPoints = function(duration, number) {
|
|
||||||
var step = Math.max(Math.floor((duration - 5) / 60 / (number + 1)), 1) * 60;
|
|
||||||
Ox.print('STEP', step)
|
|
||||||
return Ox.range(step, duration - 4.999, step).map(function(position) {
|
|
||||||
return {'in': position, 'out': position + 5};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
pandora.getFoldersHeight = function() {
|
pandora.getFoldersHeight = function() {
|
||||||
var height = 0;
|
var height = 0;
|
||||||
pandora.site.sectionFolders[pandora.user.ui.section].forEach(function(folder, i) {
|
pandora.site.sectionFolders[pandora.user.ui.section].forEach(function(folder, i) {
|
||||||
|
|
Loading…
Reference in a new issue