From 89e5fe661261ca5394585333d3a9d7a2dacc7d6f Mon Sep 17 00:00:00 2001 From: Julie Blanc Date: Thu, 5 Mar 2026 19:06:27 +0100 Subject: [PATCH 1/2] correction sans-serif default --- public/assets/css/style.css | 1 - src/components/editor/TextSettings.vue | 6 ++++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/public/assets/css/style.css b/public/assets/css/style.css index a042ac7..6435e6e 100644 --- a/public/assets/css/style.css +++ b/public/assets/css/style.css @@ -481,7 +481,6 @@ input[type=number] { .settings-subsection { padding: var(--space-xs) 0; - padding-left: 30px; } .settings-subsection h3 { margin-top: calc(var(--space-xs) * 1.5); diff --git a/src/components/editor/TextSettings.vue b/src/components/editor/TextSettings.vue index 06c26b2..5048bde 100644 --- a/src/components/editor/TextSettings.vue +++ b/src/components/editor/TextSettings.vue @@ -88,7 +88,7 @@ const textDefaults = useTextDefaults(); const { fonts: projectFonts, loadFont, loadAllFontPreviews } = useProjectFonts(); // State — initial values match stylesheet.print.css (overwritten by syncFromStore) -const font = ref('DM Sans'); +const font = ref('sans-serif'); const fontSize = ref({ value: 14, unit: 'px' }); const lineHeight = ref({ value: 18, unit: 'px' }); const color = ref('rgb(0, 0, 0)'); @@ -141,10 +141,12 @@ const syncFromStore = () => { color.value = textDefaults.color; } else { // First mount — read from CSS store + // For font-family, only accept known project fonts (ignore baseCss fonts like "DM Sans") const fontVal = extractValue('body', 'font-family'); if (fontVal) { const cleaned = fontVal.replace(/['"]/g, '').trim(); - font.value = cleaned || 'sans-serif'; + const isKnownFont = cleaned === 'sans-serif' || projectFonts.some(f => f.name === cleaned); + font.value = isKnownFont ? cleaned : 'sans-serif'; } const colorVal = extractValue('body', 'color'); From 564de8aba85edc3d22d5ff9178f219c2826b1836 Mon Sep 17 00:00:00 2001 From: Julie Blanc Date: Fri, 6 Mar 2026 17:18:04 +0100 Subject: [PATCH 2/2] repair panel CSS --- src/App.vue | 24 +++----- src/components/ElementPopup.vue | 105 ++++++++++++++++++++++++++++++++ src/components/PrintButton.vue | 28 +++++++++ 3 files changed, 141 insertions(+), 16 deletions(-) create mode 100644 src/components/PrintButton.vue diff --git a/src/App.vue b/src/App.vue index ca080d6..6e51525 100644 --- a/src/App.vue +++ b/src/App.vue @@ -5,6 +5,7 @@ import ElementPopup from './components/ElementPopup.vue'; // import PagePopup from './components/PagePopup.vue'; // DISABLED: page template styling feature import PreviewLoader from './components/PreviewLoader.vue'; import SaveButton from './components/SaveButton.vue'; +import PrintButton from './components/PrintButton.vue'; import { onMounted, ref, computed, provide } from 'vue'; import { useStylesheetStore } from './stores/stylesheet'; import { useNarrativeStore } from './stores/narrative'; @@ -107,7 +108,7 @@ onMounted(async () => { - + { /> --> - + +
+ + +
+