diff --git a/.github/workflows/native.yml b/.github/workflows/native.yml index 2bccc3c5a..8c2cf6fbe 100644 --- a/.github/workflows/native.yml +++ b/.github/workflows/native.yml @@ -151,7 +151,10 @@ jobs: # The widgets drawn to PNGs (client/ios/WidgetPreviews): every size, light and # dark, for a trip ahead, a trip under way and none, plus a home screen and # a lock screen of them. Nobody has to install a build to see a widget change. + # Started by hand only (Run workflow): the apps are on TestFlight and Play now, + # where a change is looked at on a device; on every PR it only held the queue. widget-previews: + if: github.event_name == 'workflow_dispatch' runs-on: macos-15 timeout-minutes: 20 steps: @@ -208,7 +211,9 @@ jobs: # The watch app on watchOS simulators in its screenshot mode (DemoMode.swift): # every screen on the largest and the smallest watch, the main ones in every # language, and the complications, as PNGs to look at without a watch. + # Started by hand only, like the widget previews: up to 90 minutes of macOS. watch-screens: + if: github.event_name == 'workflow_dispatch' runs-on: macos-15 timeout-minutes: 90 steps: diff --git a/client/scripts/rtl-baseline.json b/client/scripts/rtl-baseline.json index 35e465910..b692cfc21 100644 --- a/client/scripts/rtl-baseline.json +++ b/client/scripts/rtl-baseline.json @@ -24,8 +24,8 @@ "components/Map/DawarichTrailPill.tsx": 1, "components/Map/LocationButton.tsx": 1, "components/Map/MapTogglePill.tsx": 1, - "components/Map/MapView.tsx": 6, - "components/Map/MapViewGL.tsx": 8, + "components/Map/MapView.tsx": 5, + "components/Map/MapViewGL.tsx": 7, "components/Map/NightPauseTooltip.tsx": 1, "components/Map/PlaceHoverCard.tsx": 1, "components/Map/PoiCategoryPill.tsx": 1, @@ -34,6 +34,7 @@ "components/Map/locationMarkerMapbox.ts": 2, "components/Map/nightPauseMarker.ts": 4, "components/Map/ratingBadge.ts": 1, + "components/Map/switcherRow.ts": 1, "components/PDF/TripPDF.tsx": 7, "components/PDF/tripMapImage.ts": 1, "components/Packing/PackingListPanelBagCard.tsx": 1, diff --git a/client/scripts/size-baseline.json b/client/scripts/size-baseline.json index 69b0dc228..b3e2b7b14 100644 --- a/client/scripts/size-baseline.json +++ b/client/scripts/size-baseline.json @@ -5,9 +5,9 @@ "src/components/Admin/AdminPluginsPanel.tsx": 1266, "src/components/Budget/CostsPanel.test.tsx": 2730, "src/components/Budget/CostsPanel.tsx": 1798, - "src/components/Map/MapView.tsx": 1201, + "src/components/Map/MapView.tsx": 1200, "src/components/Map/MapViewGL.test.tsx": 2919, - "src/components/Map/MapViewGL.tsx": 2127, + "src/components/Map/MapViewGL.tsx": 2126, "src/components/Planner/DayDetailPanel.test.tsx": 2333, "src/components/Planner/DayPlanSidebar.test.tsx": 5349, "src/components/Planner/DayPlanSidebar.tsx": 2929, diff --git a/client/scripts/theme-baseline.json b/client/scripts/theme-baseline.json index 97e40bebc..1312003fb 100644 --- a/client/scripts/theme-baseline.json +++ b/client/scripts/theme-baseline.json @@ -60,8 +60,8 @@ "components/Map/LocationButton.tsx": 1, "components/Map/MapPluginMarkers.tsx": 2, "components/Map/MapTogglePill.tsx": 1, - "components/Map/MapView.tsx": 8, - "components/Map/MapViewGL.tsx": 11, + "components/Map/MapView.tsx": 7, + "components/Map/MapViewGL.tsx": 10, "components/Map/NightPauseTooltip.tsx": 1, "components/Map/PlaceHoverCard.tsx": 1, "components/Map/ReservationOverlay.tsx": 5, @@ -71,6 +71,7 @@ "components/Map/poiCategories.ts": 7, "components/Map/ratingBadge.ts": 2, "components/Map/reservationsMapbox.ts": 1, + "components/Map/switcherRow.ts": 1, "components/PDF/TripPDF.tsx": 51, "components/Packing/PackingListPanelBagModal.tsx": 2, "components/Packing/PackingListPanelCategoryGroup.tsx": 5, diff --git a/client/src/components/Map/MapLayerSwitcher.tsx b/client/src/components/Map/MapLayerSwitcher.tsx index 560277702..55ace706f 100644 --- a/client/src/components/Map/MapLayerSwitcher.tsx +++ b/client/src/components/Map/MapLayerSwitcher.tsx @@ -33,8 +33,6 @@ export interface TourLayerOffer { /** Distance from the map's left edge (plus any side panel) to the switcher. */ export const MAP_LAYER_SWITCHER_INSET = 20 -/** What the switcher row leaves free at the map's trailing edge: the locate button (20px off the edge, 44px wide) and a gap. */ -export const LOCATE_BUTTON_ROOM = 76 /** * Outer size of the round shell: a 34px button in 4px of padding, the same shell as * MapCompassPill. The markup below keeps its literals, and FE-COMP-MAPLAYER-006 holds diff --git a/client/src/components/Map/MapView.tsx b/client/src/components/Map/MapView.tsx index 3a1792e45..3b46e0c26 100644 --- a/client/src/components/Map/MapView.tsx +++ b/client/src/components/Map/MapView.tsx @@ -73,7 +73,8 @@ import VectorBasemap from './VectorBasemap' import { nativeRasterTemplate } from '../../native/tileCache' import { useSettingsStore } from '../../store/settingsStore' import { TourMapLayersLeaflet } from './RasterOverlayLeaflet' -import { MapLayerSwitcher, TourMapLayerSwitcher, MAP_LAYER_SWITCHER_INSET, LOCATE_BUTTON_ROOM, type TourBaseLayer } from './MapLayerSwitcher' +import { MapLayerSwitcher, TourMapLayerSwitcher, type TourBaseLayer } from './MapLayerSwitcher' +import { switcherRowStyle } from './switcherRow' import { MapLockPill } from './MapLockPill' import type { ViewportPadding } from '../../utils/mapViewport' import { parseRenderableRouteGeometry } from '../../utils/routeGeometry' @@ -1126,7 +1127,7 @@ export const MapView = memo(function MapView({ {/* 20px off the sidebar, not 12: the pill is round and frosted, so at the smaller gap its shadow ran into the sidebar edge and the two read as one surface. */} -
+
{onToggleFollow && } {hasViewBaseLayer ?