forked from 0x2620/pandora
preserve selection when switching from featured browser to featured folder and the selected list is not featured, but a favorite
This commit is contained in:
parent
0c37faa946
commit
6b438aa06a
2 changed files with 11 additions and 4 deletions
|
@ -126,7 +126,7 @@ pandora.ui.folderBrowserList = function(id) {
|
||||||
},
|
},
|
||||||
visible: true,
|
visible: true,
|
||||||
width: 16
|
width: 16
|
||||||
},
|
}
|
||||||
],
|
],
|
||||||
columnsVisible: true,
|
columnsVisible: true,
|
||||||
items: function(data, callback) {
|
items: function(data, callback) {
|
||||||
|
@ -140,6 +140,10 @@ pandora.ui.folderBrowserList = function(id) {
|
||||||
query: query
|
query: query
|
||||||
}), callback);
|
}), callback);
|
||||||
},
|
},
|
||||||
|
// needed in order to determine if, when switching back
|
||||||
|
// from featured browser to featured folder, the selected
|
||||||
|
// not-featured list may be in the user's favorites folder
|
||||||
|
keys: id == 'featured' ? ['subscribed'] : [],
|
||||||
pageLength: 1000,
|
pageLength: 1000,
|
||||||
selected: pandora.getListData().folder == id ? [pandora.user.ui.list] : [],
|
selected: pandora.getListData().folder == id ? [pandora.user.ui.list] : [],
|
||||||
sort: [
|
sort: [
|
||||||
|
|
|
@ -90,7 +90,7 @@ pandora.ui.folders = function() {
|
||||||
pandora.$ui.folderList.favorite.options('selected').length
|
pandora.$ui.folderList.favorite.options('selected').length
|
||||||
&& !listData.subscribed
|
&& !listData.subscribed
|
||||||
) {
|
) {
|
||||||
// the selected list in the favorite browser is not in the favorite folder
|
// the selected list in the favorites browser is not in the favorites folder
|
||||||
pandora.$ui.folderList.favorite.options({selected: []});
|
pandora.$ui.folderList.favorite.options({selected: []});
|
||||||
if (Ox.getObjectById(pandora.site.sectionFolders.items, 'featured').showBrowser) {
|
if (Ox.getObjectById(pandora.site.sectionFolders.items, 'featured').showBrowser) {
|
||||||
// but in the featured browser
|
// but in the featured browser
|
||||||
|
@ -140,8 +140,11 @@ pandora.ui.folders = function() {
|
||||||
if (listData.user == pandora.user.username) {
|
if (listData.user == pandora.user.username) {
|
||||||
// but in the personal folder
|
// but in the personal folder
|
||||||
pandora.$ui.folderList.personal.options({selected: [listData.id]});
|
pandora.$ui.folderList.personal.options({selected: [listData.id]});
|
||||||
} else if (Ox.getObjectById(pandora.site.sectionFolders.items, 'favorite').showBrowser) {
|
} else if (
|
||||||
// but in the favorite browser
|
listData.subscribed
|
||||||
|
|| Ox.getObjectById(pandora.site.sectionFolders.items, 'favorite').showBrowser
|
||||||
|
) {
|
||||||
|
// but in the favorites folder or browser
|
||||||
pandora.$ui.folderList.favorite.options({selected: [listData.id]});
|
pandora.$ui.folderList.favorite.options({selected: [listData.id]});
|
||||||
} else {
|
} else {
|
||||||
// and nowhere else
|
// and nowhere else
|
||||||
|
|
Loading…
Reference in a new issue