diff --git a/src/components/FontChange.vue b/src/components/FontChange.vue index 8d8fabe..36e09d3 100644 --- a/src/components/FontChange.vue +++ b/src/components/FontChange.vue @@ -22,10 +22,28 @@ const DEFAULT_FONT_FAMILIES = [ const fontFamilies = computed( () => store.userSettings?.fontFamilies ?? DEFAULT_FONT_FAMILIES ) -const sortedFontFamilies = computed(() => - [...fontFamilies.value].sort((a, b) => a.localeCompare(b)) -) +const sortedFontFamilies = computed(() => { + const base = fontFamilies.value + const extras = [ + store.userSettings?.chosenTitleFont, + store.userSettings?.chosenBodyFont + ].filter((f): f is string => !!f && !base.includes(f)) + return [...base, ...extras].sort((a, b) => a.localeCompare(b)) +}) const fontSizes = Array.from({ length: 7 }, (_, i) => `${9 + i * 2}pt`) + +const titleFont = computed({ + get: () => store.userSettings?.chosenTitleFont, + set: (value) => store.setTitleFont(value!) +}) +const bodyFont = computed({ + get: () => store.userSettings?.chosenBodyFont, + set: (value) => store.setBodyFont(value!) +}) +const fontSize = computed({ + get: () => store.userSettings?.chosenFontSize, + set: (value) => store.setFontSize(value!) +})