Commit graph

1611 commits

Author SHA1 Message Date
Doxa Maps
2361997393 UPG-100 header: the info and share buttons as Big Picture's rounded squares
The header rollout of Big Picture's header-button form. UPG-100's header
now carries a rounded-square info button to the left of a rounded-square
Share (MapInfoButton + ShareButton with shape="rounded-square", the
vertical tabs' radius, Big Picture's .rd-header-btns metrics), replacing
the round Share and the floating round info button. The tab's MapInfo
takes the header button as its trigger (tabInfo 'upg-100'
trigger:'control'), so the floating one stays off while the header one
shows, and a tap on it opens the panel.

On a phone the centred view switcher and two buttons do not share the
row, so below 481px the switcher moves to the start and the buttons keep
the end. Desktop keeps the switcher centred. Rebuilt: my-upg-100-list,
doxa-maps-spa; the tree and SRI regenerated.
2026-09-30 10:45:40 +00:00
Doxa Maps
1b7b70101c Merge remote-tracking branch 'origin/development' into simpleresearch-plugin/dxl-style
# Conflicts:
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid/default/index.html
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/manifest.json
2026-09-30 10:14:23 +00:00
Doxa Maps
3548c73c09 On a phone the grid's pill search keeps its own 15.2px text, so the placeholder fits beside the round ☰
With the ☰ resting in its corner the row pads its footprint on both sides, leaving the field about
230px wide at 390, where the live list's 19.5px text doesn't fit the placeholder. Above 576px the field
keeps the live list's size.
2026-09-30 10:10:00 +00:00
Doxa Maps
8e6664539f Merge origin/development into studio/rudder-circle 2026-09-30 10:08:20 +00:00
Doxa Maps
56c6eacca5 The grid's search row keeps clear of the round ☰ only while the ☰ rests on it, and spans the row once the ☰ rides above the legend
The ☰ rests at the bottom of a phone's first screen until the map's legend sheet announces itself, so
while the map loads, or for good if it fails, it covered the start of the full-width field. The row now
pads by the ☰'s footprint on both sides while the layout's --vtl-fab-lift is 0, and not at all once the
☰ lifts, easing with the ☰'s own .2s move (none under reduced motion).
2026-09-30 09:50:10 +00:00
Doxa Maps
bd1239a496 The credit's fold clock starts once the basemap credit has joined geoBoundaries 2026-09-30 09:43:08 +00:00
Doxa Maps
a66b120185 The grid's search and filters look like the live DX Life list: a pill search field, Show filters as an uppercase link, and 37px dropdowns
The values are the live /research list's own computed styles, measured at 390 and 1440. The search
field spans its row (up to 600px), since the round ☰ now rides above the map's legend sheet and no
longer rests on it. Every new rule is under .pgg-root, so Big Picture's header, which shares SearchBar
and FilterDropdown, is untouched; there the grid's search and filters are off. The filters still open
by default.
2026-09-30 09:36:45 +00:00
Doxa Maps
0f5f991dae Gospel Resources and Cities with Internet: one compact licence credit at the bottom end corner, folded after 3 s 2026-09-30 09:32:08 +00:00
Doxa Maps
414a1929ae Plugin Studio: Rudder is a small mic circle in its corner, with no label
The corner widget's bubble was a pill that read "Rudder · voice to text" and
widened to 300 px to show the words while recording. It is now a 44 px circle
with the mic (a chevron while its panel is open): the label stays its
accessible name and tooltip, and the words show in the panel. Recording still
shows on the collapsed circle: a red ring that pulses, a red dot, and the mic
lit while speech is heard.
2026-09-30 09:31:27 +00:00
Doxa Maps
f065ee504e Merge origin/development into gospel/legend-expand
# Conflicts:
#	public/dx-maps/cities-internet/cities-internet.js
#	public/dx-maps/cities-internet/connectivity-list/index.html
#	public/dx-maps/cities-internet/connectivity-map/index.html
#	public/dx-maps/cities-internet/data-tables/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/gospel-resources/charts/index.html
#	public/dx-maps/gospel-resources/data-tables/index.html
#	public/dx-maps/gospel-resources/gospel-dashboard/index.html
#	public/dx-maps/gospel-resources/gospel-resources.js
#	public/dx-maps/gospel-resources/resources-list/index.html
#	public/dx-maps/gospel-resources/resources-map/index.html
#	public/dx-maps/manifest.json
2026-09-30 09:15:03 +00:00
Doxa Maps
e61bebe75d Merge remote-tracking branch 'origin/development' into regions/pins-phone-poster 2026-09-30 09:08:02 +00:00
Doxa Maps
1cf5276724 Merge remote-tracking branch 'origin/upg100/perrow-deselect' into regions/pins-phone-poster
# Conflicts:
#	public/dx-maps/country-posters/countries-map/index.html
#	public/dx-maps/country-posters/country-poster-wall/index.html
#	public/dx-maps/country-posters/country-posters-mfe/index.html
#	public/dx-maps/country-posters/country-posters.js
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/manifest.json
#	public/dx-maps/my-upg-100-list/my-upg-100-list.js
#	public/dx-maps/my-upg-100-list/poster-wall/index.html
#	public/dx-maps/my-upg-100-list/upg-100-list/index.html
#	public/dx-maps/my-upg-100-list/upg-100-mfe/index.html
#	public/dx-maps/regions-dashboard/region-dashboards/index.html
#	public/dx-maps/regions-dashboard/regions-dashboard.js
#	public/dx-maps/regions-dashboard/regions-list/index.html
#	public/dx-maps/regions-dashboard/regions-mfe/index.html
2026-09-30 09:08:01 +00:00
Doxa Maps
49726ca785 Merge origin/development (a80f4fd6e, the pair) into upg100/perrow-deselect, and rebuild country-posters, my-upg-100-list and regions-dashboard from the merged source 2026-09-30 09:06:49 +00:00
Doxa Maps
ce8d67e1e6 Gospel Resources: a comment no longer names another map's translator area, which shipped that whole catalogue 2026-09-30 09:03:58 +00:00
Doxa Maps
32564194e8 Merge remote-tracking branch 'origin/development' into HEAD
# Conflicts:
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid.js
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid/default/index.html
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/manifest.json
2026-09-30 08:52:09 +00:00
Doxa Maps
5b90a07fbc Gospel Resources and Cities with Internet: Expand legend / Collapse legend in each map's own keys, in all 11 locales 2026-09-30 08:50:31 +00:00
Doxa Maps
042ff1aaa9 Poster walls offer only the per-row counts that fit; UPG-100's shown zone gets a clear chip
"Posters per row" offered 2-5 at every width, and the grid clamps a count
to what the viewport holds, so on a phone "3" and "4" still showed two.
The choices are now Auto plus every count up to what fits, capped at 5:
Auto / 1 / 2 on a 390px phone, up to 5 on a desktop. A stored preference
above the fit is shown as what is rendered and stays stored, so the
desktop keeps its choice. 1 joins the counts for the phone.

After "Show on map" isolated a zone, the only way back was re-tapping the
same legend row, inside a collapsed sheet on a phone. While a zone is
isolated (batch mode off), a chip above the map's floor names it with an
x that shows every zone again, through the wall's own deselect path
(applySelectZone(null)). Its label is the existing buttons.clearSelection.

Rebuilt: my-upg-100-list, country-posters, regions-dashboard; the tree and
SRI regenerated.
2026-09-30 08:48:24 +00:00
Doxa Maps
46d5d74ec4 Regions maps on phones: a pin tap opens its popup, a country tap opens its dashboard, and the maps are taller
On the all-regions map a pin tap jumped to the country's dashboard; a pin tap now opens the people
group's popup everywhere, and a tap on a country with no pin under it picks that country. The
invisible tap target is at least 7 px at every zoom, so pins answer a finger. On phones the maps are
half again as tall as they are wide (the square was too small for a popup), the left scroll-past
strip is off, and the popup is compact and lets a pinch through to the map. Desktop is unchanged.
2026-09-30 08:46:42 +00:00
Doxa Maps
113cdc26c7 Gospel Resources and Cities with Internet: the phone legend button reads Expand legend / Collapse legend 2026-09-30 08:41:50 +00:00
Doxa Maps
ec9a8a8dae Merge remote-tracking branch 'origin/development' into simpleresearch-plugin/phone-0820
# Conflicts:
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/manifest.json
2026-09-30 08:37:56 +00:00
Doxa Maps
538f505996 Merge remote-tracking branch 'origin/development' into HEAD
# Conflicts:
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/doxa-research-map.js
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/manifest.json
2026-09-30 08:33:36 +00:00
Doxa Maps
d3a1a00a82 check:export-poster-prints accepts the landscape poster: the image and its sheet must turn together
The paper turns landscape when the map is wider than it is tall (11in x 8.5in, a 2200x1700 image),
and the gate still asserted portrait only, so it failed a correct print. It now accepts either
orientation of US Letter, at least 1600 px on the short side and 2100 on the long one, and fails an
image whose shape is not its sheet's. The shape test is a negated <=, so a missing image fails.
2026-09-30 08:26:09 +00:00
Doxa Maps
448bbb4c57 Simple Research's engine badge stays off phones, where the legend sheet covered it
The phone sheet spans the map's bottom edge and covered the end of the bottom-left badge, which read
"MapLibr". The map's credit already names the engine. Desktop is unchanged.
2026-09-30 08:26:09 +00:00
Doxa Maps
3b12fec79a The grid's search field is centred on a phone, clear of the round ☰ on both sides, and the unclear Exact chip is hidden
The ☰ clearance padded only the circle's side, which pushed the field off centre. It now pads both
sides, and the row centres the field. Exact is hidden with display:none; the search stays fuzzy and
the filter code behind the chip is unchanged. Big Picture and dashboard-plus-grid run the grid with
its search off, so neither renders differently.
2026-09-30 08:26:09 +00:00
Doxa Maps
ad8765d9eb Merge remote-tracking branch 'origin/development' into regions/print-rollout
# Conflicts:
#	public/dx-maps/country-posters/countries-map/index.html
#	public/dx-maps/country-posters/country-poster-wall/index.html
#	public/dx-maps/country-posters/country-posters-mfe/index.html
#	public/dx-maps/country-posters/country-posters.js
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/doxa-research-map.js
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/manifest.json
#	public/dx-maps/my-upg-100-list/my-upg-100-list.js
#	public/dx-maps/my-upg-100-list/poster-wall/index.html
#	public/dx-maps/my-upg-100-list/upg-100-list/index.html
#	public/dx-maps/my-upg-100-list/upg-100-mfe/index.html
#	public/dx-maps/regions-dashboard/region-dashboards/index.html
#	public/dx-maps/regions-dashboard/regions-dashboard.js
#	public/dx-maps/regions-dashboard/regions-list/index.html
#	public/dx-maps/regions-dashboard/regions-mfe/index.html
2026-09-30 08:20:54 +00:00
Doxa Maps
2b2f2a728a Merge commit 'refs/ppp/strat' into HEAD 2026-09-30 08:17:23 +00:00
Doxa Maps
756053fecf Map info: the strategy copy in its own catalogue area, shipped only where it renders
The strategy (bottom line + points, 41 keys per locale) moves out of the
mapInfo area into a new mapStrategy area (library/i18n/locales/<lc>/
mapStrategy.json, keyed mapStrategy.tab.<id>), and tabInfo's strategyKey
rows name it. The two tab labels stay in mapInfo.

The build ships an area only to bundles whose code names it, and only
the gallery shell names mapStrategy. mapInfo ships to every map bundle
for its standalone info button, so before this change each map bundle
carried every map's strategy in eleven languages without rendering it.
Measured on the rebuilt bundles against development 63a64d1bf, gzip:
doxa-research-map +3.7 KB (was +47.9), cities-internet +4.0 (was +47.9),
gospel-resources +6.7, research-dashboard +3.8, dashboard-plus-grid
+3.7, doxa-simple-map +3.5; the gallery shell +33.9 KB, where the
strategy renders. check:i18n-treeshake PASS (26 bundles); the strategy
text is in the shell and in none of the six map bundles.

The moved values are identical to the ones they replace (a parsed-JSON
comparison per locale). Rebuilt the seven mapInfo carriers, then the
tree and SRI; pages and manifests change only their integrity.
2026-09-30 08:16:49 +00:00
Doxa Maps
450b21c941 Prayer Progress's standalone ⓘ does not name a strategy yet
Naming it would ship every map's strategy text inside this bundle (the text shares one catalogue
area). Embeds show the intro and the note; the strategy follows once the catalogue loads per locale.
2026-09-30 08:14:37 +00:00
Doxa Maps
7d5d7a62d8 Print on phones: the shared Print bar is labelled in the reader's language from the wall and the poster prints too 2026-09-30 08:04:52 +00:00
Doxa Maps
9b39577830 The ⓘ panel shows each map's strategy: an intro, then the strategy, with Examples | Strategy tabs where a map has examples
MapInfo gains a `strategyKey` prop: a catalogue key prefix whose .bottom is the bottom line and .p1, .p2 … the
points, read in order until the first missing one (the catalogue decides how many). The popup shows the intro
(the lead), then:
- a map with examples AND a strategy gets two tabs, Examples first, then Strategy (44px targets, reset to
  Examples on every open);
- a map with only a strategy goes straight to it, under a Strategy heading;
- a map with neither is unchanged.
The takeaway is not shown beside a strategy, which supersedes it. Labels come from mapInfo.tabExamples and
mapInfo.tabStrategy. Prayer Progress's own info (for embeds) names its strategy key too.
2026-09-30 08:04:11 +00:00
Doxa Maps
c596a82233 Research Gallery: every tab's info names its strategy
Each tabInfo row names its strategy literally (strategyKey), for the
area scan, and MapInfo reads the bottom line and points from it. The
rebuild of the consumers follows at landing, on the landed train.
2026-09-30 08:04:09 +00:00
Doxa Maps
63a64d1bf9 Merge remote-tracking branch 'origin/development' into HEAD
# Conflicts:
#	public/dx-maps/cities-internet/cities-internet.js
#	public/dx-maps/cities-internet/connectivity-list/index.html
#	public/dx-maps/cities-internet/connectivity-map/index.html
#	public/dx-maps/cities-internet/data-tables/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/doxa-research-map.js
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map.js
#	public/dx-maps/doxa-simple-map/doxa-simple-map/adoption/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/engagement/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/prayer/index.html
#	public/dx-maps/gospel-resources/charts/index.html
#	public/dx-maps/gospel-resources/data-tables/index.html
#	public/dx-maps/gospel-resources/gospel-dashboard/index.html
#	public/dx-maps/gospel-resources/gospel-resources.js
#	public/dx-maps/gospel-resources/resources-list/index.html
#	public/dx-maps/gospel-resources/resources-map/index.html
#	public/dx-maps/manifest.json
2026-09-30 07:58:25 +00:00
Doxa Maps
ce442e58b8 Merge origin/development into gospel/phone-legend
# Conflicts:
#	public/dx-maps/cities-internet/cities-internet.js
#	public/dx-maps/cities-internet/connectivity-list/index.html
#	public/dx-maps/cities-internet/connectivity-map/index.html
#	public/dx-maps/cities-internet/data-tables/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/manifest.json
2026-09-30 07:46:51 +00:00
Doxa Maps
dd592841db Merge remote-tracking branch 'origin/development' into upg100/land-s9-floor
# Conflicts:
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/manifest.json
#	public/dx-maps/my-upg-100-list/my-upg-100-list.js
#	public/dx-maps/my-upg-100-list/poster-wall/index.html
#	public/dx-maps/my-upg-100-list/upg-100-list/index.html
#	public/dx-maps/my-upg-100-list/upg-100-mfe/index.html
2026-09-30 07:41:21 +00:00
Doxa Maps
9a03de6c99 Merge remote-tracking branch 'origin/deep-research-plugin/gal1' into HEAD
# Conflicts:
#	public/dx-maps/cities-internet/cities-internet.js
#	public/dx-maps/cities-internet/connectivity-list/index.html
#	public/dx-maps/cities-internet/connectivity-map/index.html
#	public/dx-maps/cities-internet/data-tables/index.html
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid.js
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid/default/index.html
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/doxa-research-map.js
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map.js
#	public/dx-maps/doxa-simple-map/doxa-simple-map/adoption/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/engagement/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/prayer/index.html
#	public/dx-maps/gospel-resources/charts/index.html
#	public/dx-maps/gospel-resources/data-tables/index.html
#	public/dx-maps/gospel-resources/gospel-dashboard/index.html
#	public/dx-maps/gospel-resources/gospel-resources.js
#	public/dx-maps/gospel-resources/resources-list/index.html
#	public/dx-maps/gospel-resources/resources-map/index.html
#	public/dx-maps/manifest.json
#	public/dx-maps/research-dashboard/research-dashboard.js
#	public/dx-maps/research-dashboard/research-dashboard/index.html
2026-09-30 07:34:58 +00:00
Doxa Maps
5973e5dcd5 Merge remote-tracking branch 'origin/development' into HEAD
# Conflicts:
#	public/dx-maps/cities-internet/cities-internet.js
#	public/dx-maps/cities-internet/connectivity-list/index.html
#	public/dx-maps/cities-internet/connectivity-map/index.html
#	public/dx-maps/cities-internet/data-tables/index.html
#	public/dx-maps/doxa-maps-spa/doxa-maps-spa.js
#	public/dx-maps/doxa-maps-spa/doxa-maps-spa/app/index.html
#	public/dx-maps/doxa-maps-spa/doxa-maps-spa/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/doxa-research-map.js
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map.js
#	public/dx-maps/doxa-simple-map/doxa-simple-map/adoption/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/engagement/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/prayer/index.html
#	public/dx-maps/gospel-resources/charts/index.html
#	public/dx-maps/gospel-resources/data-tables/index.html
#	public/dx-maps/gospel-resources/gospel-dashboard/index.html
#	public/dx-maps/gospel-resources/gospel-resources.js
#	public/dx-maps/gospel-resources/resources-list/index.html
#	public/dx-maps/gospel-resources/resources-map/index.html
#	public/dx-maps/manifest.json
#	public/dx-maps/research-dashboard/research-dashboard.js
#	public/dx-maps/research-dashboard/research-dashboard/index.html
2026-09-30 07:34:53 +00:00
Doxa Maps
f544ca6334 Print on phones, everywhere: the map's poster dialog, research-map, the gospel tree, the planner and the wall
Every other caller of the in-place print moves onto the phone path the poster wall already uses:
printImageBlob (the map's poster/download dialog and research-map) prints the page itself on a phone,
and the gospel tree, the prayer-walk planner and the wall of people groups call printDocument. A caller
without its own progress dialog gets a shared Print bar when the tap has expired, labelled through the
caller's own translator. Desktop keeps the in-place frame unchanged. Source only; the bundles are rebuilt
when it lands.
2026-09-30 07:34:19 +00:00
Doxa Maps
6add0b1c22 Merge upg100/pin-radius (S9 v2) into upg100/credit-floor-lb, and rebuild my-upg-100-list from the merged source 2026-09-30 07:30:24 +00:00
Doxa Maps
bdf10ef7f9 UPG-100 on a phone: the batch HUD's floor drops the credit band
LegendMobile now moves both engines' bottom corners to the top of the
map below 768px, so the 30px credit band no longer sits under UPG-100's
bottom controls on a phone. --upg-credit-floor keeps the sheet and the
round menu button there and drops the band, so the batch HUD sits 30px
lower, over the sheet and the button. Desktop is unchanged.
2026-09-30 07:22:58 +00:00
Doxa Maps
0bdbd3536b Merge remote-tracking branch 'origin/development' into regions/s5-p8-land
# Conflicts:
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/manifest.json
#	public/dx-maps/regions-dashboard/region-dashboards/index.html
#	public/dx-maps/regions-dashboard/regions-dashboard.js
#	public/dx-maps/regions-dashboard/regions-list/index.html
#	public/dx-maps/regions-dashboard/regions-mfe/index.html
2026-09-30 07:19:55 +00:00
Doxa Maps
fcb92ba555 Merge origin/development into gospel/phone-legend
# Conflicts:
#	public/dx-maps/cities-internet/cities-internet.js
#	public/dx-maps/cities-internet/connectivity-list/index.html
#	public/dx-maps/cities-internet/connectivity-map/index.html
#	public/dx-maps/cities-internet/data-tables/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/gospel-resources/charts/index.html
#	public/dx-maps/gospel-resources/data-tables/index.html
#	public/dx-maps/gospel-resources/gospel-dashboard/index.html
#	public/dx-maps/gospel-resources/gospel-resources.js
#	public/dx-maps/gospel-resources/resources-list/index.html
#	public/dx-maps/gospel-resources/resources-map/index.html
#	public/dx-maps/manifest.json
2026-09-30 07:11:18 +00:00
Doxa Maps
916c200797 Gospel Resources' folded phone legend is slimmer, and keeps Arabic on two lines 2026-09-30 07:09:38 +00:00
Doxa Maps
ba3aded063 Merge origin/development into gospel/fab-clearance 2026-09-30 07:04:59 +00:00
Doxa Maps
d080a50aeb Research Gallery: each map's info says only what that map does
- Simple Research drops the example packet (a UPG-100 zone's, not
  something its own view makes) and its takeaway line, which promised a
  poster and a prayer packet a reader cannot reach from this map.
- Every tab whose map draws people-group pins (UPG-100, Simple Research,
  Prayer Progress, Cities with Internet, Gospel Resources) carries the
  approximate-location caveat as its info note (pins.approximate), so
  it stays findable where a phone legend no longer states it.
- The Regions comment no longer says China is withheld: China prints.

The gallery bundle grows by about 3.6 KB raw (1.1 KB gzipped) for the pins
catalogue area; the rebuild is in the commit that closes this series.
2026-09-30 07:03:51 +00:00
Doxa Maps
293f33d64f Merge remote-tracking branch 'origin/development' into upg100/no-speaker 2026-09-30 07:02:22 +00:00
Doxa Maps
8af13da855 UPG-100 pins: the tap target keeps its size while the dot shrinks
The smaller world-zoom dots also shrank what a tap hits. The pin click
was bound to the drawn layer, and both engines hit-test a circle at
radius + stroke (about 7 to 4 px at world zoom). An invisible twin,
'upg-pins-hit', now carries the drawn layer's previous ramps, and the
click and cursor handlers bind to it, so a tap selects what it selected
before and only the drawing changes. Both of its opacities are 0; the
stroke's default would otherwise draw an opaque black ring.

The visual gate's "is a pin here?" checks ask the twin, the layer a
tap actually hits. The comment that quoted the size report now
describes it instead.
2026-09-30 06:59:37 +00:00
Doxa Maps
575fb2a461 Merge origin/development into studio/revert-pure 2026-09-30 06:57:41 +00:00
Doxa Maps
52cab2408e Plugin Studio on a phone: a button to collapse the header
The layout hides the header's meta slot at phone width (its 56px bar has no
room for it), and the "Hide header" button lived there, so on a phone the
header could not be collapsed at all. A phone-only copy of the button now sits
in the header's end corner (44px, the tabs' corner radius, the same localised
label). The floating "Show header" button brings the header back, as on a
desktop. Wider screens are unchanged.
2026-09-30 06:55:44 +00:00
Doxa Maps
e9c635eb33 Prayer Progress's ⓘ note comment: true whether or not the pin note shows
Comment only; the built bundle is byte-identical.
2026-09-30 06:54:41 +00:00
Doxa Maps
f85f4f8a66 Merge remote-tracking branch 'origin/development' into regions/ar-print-english 2026-09-30 06:53:16 +00:00