Country Posters: Export poster is a toolbar button every reader sees, not a drawer item behind a hidden opener

This commit is contained in:
Doxa Maps 2026-09-28 15:05:12 +00:00
parent 2b164954e4
commit 736c418284

View file

@ -140,6 +140,7 @@ import HamburgerButton from '@map/components/map-controls/HamburgerButton.vue'
import GeocoderComponent from '@map/components/map-controls/GeocoderComponent.vue'
import { resolveMapProvider, setProjectionOn } from '@map/composables/useMapProvider.js'
import ShareButton from '@map/components/map-controls/ShareButton.vue'
import MapControlButton from '@map/components/map-controls/MapControlButton.vue'
// PERF: SideMenuDrawer is unused in the current research-map template (the
// ResearchMapSideMenu sibling renders the actual menu). Removed entirely from
@ -2297,6 +2298,17 @@ onBeforeUnmount(() => {
<LocationButton :map="map" :is-dark="isDark" />
<FullscreenButton :map-container="mapContainer" :is-dark="isDark" />
<ThemeToggleButton :is-dark="isDark" @toggle="handleToggleTheme" />
<!-- EXPORT, ALWAYS VISIBLE (KNOWN-BUGS NE-17). "Export poster…" lived only in the side drawer,
whose opener is off by default (hamburgerMenu:false), so no reader could reach it; the
legend's Export menu needs a row selected first. This is the same one-click toolbar control
Simple Research uses, opening the same poster dialog. -->
<MapControlButton :is-dark="isDark" :title="t('controls.export_poster')" class="export-poster-btn"
@click="openPoster">
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"
stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
<path d="M12 3v12M7 10l5 5 5-5M5 21h14" />
</svg>
</MapControlButton>
<!-- ShareButton intentionally OMITTED; country-posters-mfe.vue's header owns
sharing for this bundle, exactly as upg-100-mfe does for the 100-list.
Rendering both gave the bundle TWO share affordances on one surface — the