Give the map the whole screen and move the credits into settings

Drops the app bar, moves settings onto the map with the other controls, and
takes the attribution bar off the main screen.

The app bar held only the app name — which the launcher already shows — and one
action, so removing it hands its height to the map rather than leaving an empty
strip. The settings button joins search and recentre in the column over the
map, where the rest of the controls that act on the map already live.

The attribution needed checking before it could move, because it is a licence
obligation rather than a layout choice. The OSMF guidelines settle it: for a
browsable map the credit does not have to be permanently visible, provided
"the user must still be able to find the licence information if they look for
it, for example from an '(i)' button in the corner of the map or an 'About'
option in a menu". Map to settings to "Fonti e licenze" is exactly that, and
MapLibre's own (i) control now sits in the map's top-right corner as a second
route — it had been landing underneath the new button column.

Two things had to follow the bar rather than disappear with it. The radar
manifest carries its own credit for the frames on screen, set by whoever
published them and absent from the region config, so the Sources screen now
shows it alongside the configured attributions. And the settings entry that
leads there carries a subtitle saying what it holds, because "Fonti e licenze"
alone does not tell a reader that this is where the licence information went.

settings_screen_test asserts that entry exists and opens the screen. Removing
it would be a licence breach, so it should fail the build rather than ship
quietly.

Verified on the emulator: no title bar, the map runs to the top with the demo
notice above it, the three controls stack bottom-right without colliding with
the (i), and settings shows the sources entry with its subtitle.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-10 22:21:50 +02:00
co-authored by Claude Opus 5
parent b4b8d089e6
commit aa91b457ed
11 changed files with 227 additions and 213 deletions
+20 -7
View File
@@ -49,17 +49,30 @@ The credit string ARPA asks for is the full *"Fonte: Arpa Piemonte -
www.arpa.piemonte.it"*, not the bare name currently in the region config. Adopt the full
form the moment any ARPA-sourced data is actually displayed.
## Base map credits are not automatic
## Where the credits live, and why that is enough
The OpenFreeMap style JSON has no `attribution` field, so MapLibre displays nothing on
its own. The app renders the credits itself:
its own. The app therefore renders the credits itself, on the **Sources screen**, reached
from the settings button on the map.
- the always-visible attribution bar carries the two **mandatory** credits;
- the Sources screen lists all three with their licences and links.
There is deliberately no permanent credit line over the map. The
[OSMF attribution guidelines](https://osmfoundation.org/wiki/Licence/Attribution_Guidelines)
allow this for a browsable map: attribution may be collapsed or dismissed provided that
*"the user must still be able to find the licence information if they look for it, for
example from an '(i)' button in the corner of the map or an 'About' option in a menu"*.
The bar lists only what is actually on screen. With the offline fallback style there is
no OpenStreetMap data being displayed, so crediting OpenStreetMap there would be a false
attribution — the bar says "Mappa base non configurata" instead.
The route is map → settings → **Fonti e licenze**, two taps and clearly labelled, and
MapLibre's own `(i)` control sits in the map's top-right corner as well.
**This is a licence obligation, not a layout preference.** Do not bury the Sources entry
deeper, and do not remove its subtitle saying what it contains. A test in
`settings_screen_test.dart` asserts the entry exists and opens the screen, so removing it
fails the build rather than shipping quietly.
The Sources screen lists every credit the region config declares, **plus** the credit the
radar manifest carries for the frames currently on screen — that one is set by whoever
published the frames and is not in the config, so it would otherwise have been lost when
the on-map bar was removed.
## Advertising, and why it still matters here