diff --git a/resources/i18n/pt.json b/resources/i18n/pt.json
index a934b2741..b42113a8f 100644
--- a/resources/i18n/pt.json
+++ b/resources/i18n/pt.json
@@ -263,7 +263,8 @@
"name": "Pessoal",
"options": {
"theme": "Tema",
- "language": "Língua"
+ "language": "Língua",
+ "defaultView": "Tela inicial"
}
}
},
diff --git a/ui/src/album/AlbumList.js b/ui/src/album/AlbumList.js
index a816c783d..65b557e9b 100644
--- a/ui/src/album/AlbumList.js
+++ b/ui/src/album/AlbumList.js
@@ -19,7 +19,7 @@ import AlbumListView from './AlbumListView'
import AlbumGridView from './AlbumGridView'
import { ALBUM_MODE_LIST } from './albumState'
import AddToPlaylistDialog from '../dialogs/AddToPlaylistDialog'
-import albumLists from './albumLists'
+import albumLists, { defaultAlbumList } from './albumLists'
const AlbumFilter = (props) => {
const translate = useTranslate()
@@ -73,7 +73,8 @@ const AlbumList = (props) => {
// If it does not have filter/sort params (usually coming from Menu),
// reload with correct filter/sort params
if (!location.search) {
- const type = albumListType || 'all'
+ const type =
+ albumListType || localStorage.getItem('defaultView') || defaultAlbumList
const listParams = albumLists[type]
if (listParams) {
return
diff --git a/ui/src/album/albumLists.js b/ui/src/album/albumLists.js
index 49ec4674d..7dc1b0ef1 100644
--- a/ui/src/album/albumLists.js
+++ b/ui/src/album/albumLists.js
@@ -23,3 +23,5 @@ export default {
params: 'sort=play_count&order=DESC&filter={"recently_played":true}',
},
}
+
+export const defaultAlbumList = 'recentlyAdded'
diff --git a/ui/src/i18n/en.json b/ui/src/i18n/en.json
index cbfd26abb..c1a288c66 100644
--- a/ui/src/i18n/en.json
+++ b/ui/src/i18n/en.json
@@ -264,7 +264,8 @@
"name": "Personal",
"options": {
"theme": "Theme",
- "language": "Language"
+ "language": "Language",
+ "defaultView": "Default View"
}
}
},
diff --git a/ui/src/personal/Personal.js b/ui/src/personal/Personal.js
index 18a39b666..ab7f9bae4 100644
--- a/ui/src/personal/Personal.js
+++ b/ui/src/personal/Personal.js
@@ -15,6 +15,7 @@ import { changeTheme } from './actions'
import themes from '../themes'
import { docsUrl } from '../utils/docsUrl'
import { useGetLanguageChoices } from '../i18n'
+import albumLists, { defaultAlbumList } from '../album/albumLists'
const useStyles = makeStyles({
root: { marginTop: '1em' },
@@ -95,6 +96,29 @@ const SelectTheme = (props) => {
)
}
+const SelectDefaultView = (props) => {
+ const translate = useTranslate()
+ const current = localStorage.getItem('defaultView') || defaultAlbumList
+ const choices = Object.keys(albumLists).map((type) => ({
+ id: type,
+ name: translate(`resources.album.lists.${type}`),
+ }))
+
+ return (
+ {
+ localStorage.setItem('defaultView', event.target.value)
+ }}
+ />
+ )
+}
+
const Personal = () => {
const translate = useTranslate()
const classes = useStyles()
@@ -105,6 +129,7 @@ const Personal = () => {
+
)