fix: theme sorting in quick settings menu (#882)

This commit is contained in:
Aman Harwara
2022-02-18 19:12:11 +05:30
committed by GitHub
parent d27916fc28
commit a47556b840

View File

@@ -58,9 +58,9 @@ const toggleFocusMode = (enabled: boolean) => {
} }
}; };
export const sortThemes = (a: SNTheme, b: SNTheme) => { export const sortThemes = (a: ThemeItem, b: ThemeItem) => {
const aIsLayerable = a.isLayerable(); const aIsLayerable = a.component?.isLayerable();
const bIsLayerable = b.isLayerable(); const bIsLayerable = b.component?.isLayerable();
if (aIsLayerable && !bIsLayerable) { if (aIsLayerable && !bIsLayerable) {
return 1; return 1;
@@ -105,9 +105,7 @@ export const QuickSettingsMenu: FunctionComponent<MenuProps> = observer(
const reloadThemes = useCallback(() => { const reloadThemes = useCallback(() => {
const themes = ( const themes = (
application.getDisplayableItems(ContentType.Theme) as SNTheme[] application.getDisplayableItems(ContentType.Theme) as SNTheme[]
) ).map((item) => {
.sort(sortThemes)
.map((item) => {
return { return {
name: item.name, name: item.name,
identifier: item.identifier, identifier: item.identifier,
@@ -132,7 +130,7 @@ export const QuickSettingsMenu: FunctionComponent<MenuProps> = observer(
} }
}); });
setThemes(themes); setThemes(themes.sort(sortThemes));
setDefaultThemeOn( setDefaultThemeOn(
!themes !themes