What's changed in 0.4.831
- Street View keeps its mini map; closing a place keeps the camera put
- Fleet tuning dials through the signed calibration bundle
- Three quality fixes: collapse snap, offline crying wolf, Vela voice reinstall
- Fix the locate-button rubber-band: GPS jitter gate + one browse zoom
- Search: paginate to 60 results and append nearby matches from the ambient pool (#178)
- Scope the Unisoc compatibility-rendering default to Android 14
- Auto-fallback to TextureView rendering when a GPU driver kills the map at init (#177)
- Durable POI store: browsed areas keep their places for weeks, online or offline (#176)
- Map performance batch: building zoom tiers, overlay density gate, lighter arrivals
- Bound the ambient POI fan-out so a fresh launch and fast panning stop stuttering
- Fix settings scroll stutter from the search position index
- Offline routing graphs now load on Android below 14 (#175)
- Change the destination right from the route picker
- Search the settings from a magnifier in the top bar
- Saved places show on the map while you browse
- Lists can use any emoji as their icon
- Tap a place name to read all of it, long-press or use the share menu to copy it
- Street View: keep the map puck on the pano you moved to, and cap the date list
- Give the voice library Use/Delete buttons a D-pad focus ring
- Dropped pins now center the map on the pin, not the last place you tapped
- Street View: the time-travel date list scrolls instead of spilling over
- Nav start: never block on the Overpass fetch; guard double-tap
- fdroid-repo: stop the double-run Pages race on a manual release promote
- Site: a proper support section with a Buy me a coffee button
- Site polish: voice demo player, store badges, quieter hero
- Website redesign and a full screenshot retake
- Nav banner: the refresh glyph spins while rerouting
- Trips record WHY each route swap happened; replay chimes only for wrong turns
- Replay: play the reroute chime at recorded route swaps
- Nav declutter: water names come back; neighbourhood titles stay stripped
- Car-mode declutter: water, park and neighbourhood titles join the strip
- Nav camera: split the follow time constants for a thick-liquid feel
- Trips become a flight recorder: speech, accuracy, frame pacing, battery
- Nav: de-hitch the cross-street pass; record the off-route flag per fix
- Voice: fix the take-exit mangle; trips record which build made them
- Nav voice: "half a mile"; labels hug the route and the turn target keeps its name
- Nav labels: only streets the route actually crosses; replays stop sensor jitter
- Street View: full D-pad operation (engage, look around, walk, control ring)
- Nav card: headline speaks the same words as the voice
- Nav: speak only the primary sign destination, thin the bubbles further
- Nav: fade the cross-street bubbles with zoom instead of popping
- Bake a baseline profile so nightlies install pre-warmed
- Nav: shield on the top card, state-ref chips, reroute chime, no self-labels
- Nav: persistent highway shield, trimmed voice repeats, deeper nav declutter
- Nav road labels: Google-style bubbles, cross streets back, no doubled names
- Nav: heading-up default, floating road labels, gas stations in nav, auto re-centre, ramp sides, earlier prompts
- Nav: wrong-way off-route detection, a real Rerouting banner, puck de-jitter
- Docs: sweep out stale claims
- Fix a previous stop's departure board lingering onto unrelated places
- Street View: fix black bands on old captures (per-pano tile pyramids)
- Street View: real fullscreen (SurfaceView hole fix) + tap the mini-map to jump
- Street View mini-map: centre the puck in the visible strip, real fullscreen
- Street View: half-screen over the live map, with a rotating view cone
- Street View: fix the compass frame - facing was skewed by heading+90 per pano
- Street View: open Google's own pano pick, exact id + yaw from the response
- Street View: derive the address street from name-or-address for the probe
- Street View: probe toward the street when the geocode is set-back from it
- Street View: open on the address's own street, not the alley behind it
- Street View: open looking across the street at the building
- Street View: fix mirrored imagery; donate button toasts when no browser
- Street View: open facing the chosen address; keep "© Google" on one line
- Nav: accuracy-scale the off-route corridor instead of fixed distances
- Street View: morph between panos, arrows in historical, chip clear of text
- Nav: tighter off-route corridor for walking and biking
- Street View: copyright year tracks the capture, not the current year
- Street View v2: walk around, go back in time, sharper picture, faster panning
- Update README.md
- Street View now opens inside Vela instead of bouncing you to Google's app
- Landscape gets Google's one-line header: half-width search bar with the chips beside it
- POI icons hold still when you open and close a place, and the compass is no longer under the layers button
- Steps list swipes down to close, and stray map taps can't add stops while the route picker or steps are open
- Vela has a website now: a one-page tour at pimpinpumpkin.github.io/Vela
- The turn banner now shrinks on short screens so it stops eating the map on landscape and car displays
- Places-on-the-map settings, POI icon size for car screens, fire stations are not bus stops
- Fix the nav compass toggle in release builds
- Fix the nav compass toggle in release builds
- Update README.md
- Perf audit batch 2: upload churn off the render thread
- Perf audit: fix the camera-seam hitches (batch 1) + publish the audit
- Draw traffic lights and stop signs above the route line
- Nav camera manners: compass toggles north-up, tilt gesture works, overview fits, locate zoom sticks
- Nav compass toggle, local house-number search, single arrival line, wider route stripe
- Free-drive follow now rotates heading-up like navigation
- Zoom in closer during navigation and grow the nav puck 30%
- Stop degraded routes from posing as faster routes
- Reroute faster after a wrong turn + swipe down to close the steps overview
- Copy Google's ambient label density + fix review counts zeroing out on cold starts
- Dense areas load with steady frames and the POI icons stop shuffling
- Slow deviations reroute, tunnels dead-reckon, and the nav map declutters
- Docs: the gl follow-up landed and the sort/tab literal split is recorded
- Results follow your region, and the last English-only labels localize
- Memory: half the heap under place churn (Coil cap, stream-parse, WebView reaping)
- README privacy section tells the truth about in-drive traffic checks
- Map taps pick the icon nearest your finger, not the renderer's first pick
- Tapping a POI in a dense strip mall opens that POI, not its popular neighbor
- The free-drive dot stops jolting every second, and north-up actually holds
- The translation check warns on gaps instead of failing the build
- Free-drive follow dead-reckons between fixes, so it glides like navigation
- Free-drive follow is north-up for real, and navigation gets a route overview button
- Nav camera shows the road ahead, step preview stops fighting the follow camera, and in-drive re-checks get a privacy toggle
- Nav reliability: traffic fetch retries, and abbreviated fallback routes heal themselves
- Attention cards are amber, not baseline pink
- Faster-route buttons stay readable under Material You
- The arrival ETA follows live traffic even when the route never changes
- Free-drive speed box sits down by the locate button
- Translations move to Weblate, and the docs stop miscounting languages
- Ending a drive clears the route line
- Stray taps during a drive can't add stops, and minimizing the route chooser zooms in on the route
- Buy Me a Coffee badge in the README
- Donate goes somewhere real now: Buy Me a Coffee
- Fresh README screenshot set on the merged build, plus two transit shots
- The Fastest tag follows the ETA, not the top row
- Merge cleanup: focus ring on the layers toggle row
- Merge cleanup: repair union-resolved regions
- Merge cleanup: dedupe imports and drop a superseded flock select line
- Avoid-cameras moves its pick to the top of the route list
- Route fit keeps both endpoints visible and stops zooming to space
- Docs: satellite view moves from roadmap to features
- The +N more stops line opens the stops editor too
- Along-route search panel pins to the top and dismisses on any map tap
- Nav aids: the compass stays up during nav, re-center works while stationary
- Update README.md
- Update README.md
- Update README.md
- D-pad cleanup: parking hub menu, focus rings, results handle key path
- Numbered stop pins on the map
- Multiple stops read as their own +N more stops line on the card
- Transit stop names on the map take the transit blue per theme
- Speed readout is one rounded rectangle that widens when the limit joins
- Nav search panel: closes when you grab the map, rides to the top while typing
- Stop picker polish: hint banner follows the theme, picker header slims to a mode label
- Starting nav clears the planning search's leftover results
- Nav search field: arrow keys escape to the chips below
- Layers panel is a VelaMenu so key-only devices can use it
- Nav search and volume float on the map, and the search takes free text
- Speed readout without a posted limit is a compact circle
- Satellite fixes: imagery year retries after a failed lookup, overlay house numbers go white too
- Docs: generalize a verification example in FEATURES
- Search along the route while navigating
- A coordinate deep link moves the camera to its pin
- Top card follow-ups: notifications sit under it, add-stop button with stops present, drop the reroute flash
- Satellite polish: white labels with black halos, white pin backings, yellow freeways, cleaner credit
- City names come back in suggestions: never demote Google's top match
- Directions header moves to a Google-style card at the top of the screen
- Offline routing: highway shields, sign destinations and exit numbers, no graph rebuild needed
- Satellite view: transit and traffic overlays draw above the imagery, capture year gets its own line
- Address suggestions get a real geocoder (Photon, OSM)
- Results: sort chip moves left of the rating filter
- Satellite: ghost roads, dimmed imagery year, toggle-time year fetch
- Route shields on the map: bigger, bolder, Google-like
- Layers button: satellite grows into a multi-layer panel
- Nearby suggestions rank above far matches while typing
- Docs deep pass: scrub personal info, fix stale claims, add LANGUAGES.md
- Satellite imagery layer with a map button
- Stream-parse the traffic-controls Overpass fetch
- Departure-board parse anchors are remotely repairable
- Review and stop counts use real plural forms
- Share to Vela from any app's share sheet
- Honor the zoom in geo links
- Mute turn guidance while off-route
- Update README.md
- House-number gate moves from invisible text to no text
- Board refresh stops polling while the app is backgrounded
- Quarterly cron rebakes the routing graphs and overlay data
- Departure boards stop listing every bus twice at double-fed stops
- Bus stop names hide until you're zoomed in close
- Street names dodge the camera badges
- Deep links fly the camera to the point
- Update README.md
- Update MAP-STYLE.md
- Update README.md
- README: reorder What you get by what matters most
- Cameras yield to POI icons and labels
- Flock cameras: draw at route-overview zoom for real
- Fix house numbers never rendering on a cold start
- Docs audit: trim the README and fix stale claims
- Merge paired curb stops into one map icon with a combined board (#130)
- Departure boards refresh while open (#128)
- Gas stations were showing bus departures; speed sign joins the speed box (#127)
- Stop timeline: show the stops already passed, and cross out moved times (#126)
- Speed limit badge was dead: opacity 0 hides features from queryRenderedFeatures (#125)
- Closing a far-away place no longer flies the camera back home (#124)
- Typed coordinates drop a pin instead of searching as text (#123)
- Stop taps work in every app language, with a direct Transitous board fallback (#71) (#122)
- Show house numbers only when zoomed to the 50 ft scale or closer (#121)
- Stop timeline: GTFS trip data with live/cancelled per stop, Google-style rows (#120)
- Canonical GTFS transit stops on the map with an offline area cache (#119)
- Docs: transit data sources - the Transitous/Google division of labour (#118)
- Feature-phone support: adaptive density + small-screen D-pad focus fixes (from vela-dpad) (#117)
- Stops expand full-screen again
- No photo shimmer on transit stops
- Transitous departure boards: open GTFS realtime as the primary source
- Board: pills for named lines, explicit Stops action on each route row
- Bus board polish, working diagnostics export, cameras in the README
- Bus polish: after-midnight day markers, proximity fallback for stop resolution
- Transit stop correlation: widen the junction-to-stop radius, keep OSM stop icons
- Hide OSM bus-stop icons; drop the blink-and-gone add-stop banner
- Cameras on by default; show departure boards for intersection-named stops
- Flock cameras: refresh the dataset from a hosted release, no app update needed
- Flock cameras: bundle the dataset on-device so the layer is instant and avoid is reliable
- Departure board: list every embedded time vertically, each with a countdown
- Flock: bound the per-endpoint camera-fetch timeout so failover can't hang
- Departure board: show up to 8 arrivals per line, not 4
- Flock cameras: fail over across Overpass mirrors so a 504 no longer blanks the layer
- Transit: only hide reviews/about for BARE stops, not rated transit buildings
- Transit stops: drop the Reviews and About tabs entirely
- Transit stops: skip the review scrape
- Fix the browse-map jank: arm the speed overlay by motion, not by follow
- Fix OOM crash + pan/zoom jank: largeHeap + stream-parse Overpass + revert flock z11
- Flock cameras: show them at route-overview zoom + record fetch outcome to diagnostics
- Unified Google-style speed box + smoother free-drive tracking
- Fix black overlay on roads + transit stop resolution + chevron hiding search bar
- CI: guard against missing translations (fail fast on a locale gap)
- i18n: backfill settings_version_copied into the CJK + Hebrew locales
- Terrain shading: translate the toggle + hint into all 14 locales
- Flock avoid: settings hint states the detour cap + the unavoidable case
- Reconcile #85/#101 speed-limit sign (free-drive guard + overlay fallback)
- Transit tap-through: pick the leg that boards at the tapped stop, not just the line
- Flock along-route count: tile the query + segment-distance the near test
- Flock avoid: stamp the route set by epoch so naming a route can't drop the badges
- Dictation audio focus: abandon before release so music can't stick paused
- Transit route detail: cancel the lookup on close, focus the sheet's back arrow
- Add Android Auto troubleshooting doc for sideloaded nav apps
- Nav: speedometer is a rounded rectangle, matched to the SPEED LIMIT sign
- Speed-B: device-verified on a simulated drive + log only on change
- Speed-B: use Log.i for the overlay-read diagnostic (visible in release)
- Speed limit: online 'Speed B' streamer - posted limit without a routing graph
- Flock: make the toggle AVOID, not just warn (auto-prefer low-camera route)
- Flock: opt-in 'cameras on route' warning on the route picker
- Directions: long-press the map to route through an arbitrary point
- Search: a no-result search no longer shows a blank screen
- Flock layer: fix the Overpass query (out body) + persist the toggle
- Voice: pause playing music while Vela dictation is listening
- Transit UI: drop the chevrons, go clean Google-style
- Transit tap-through: transit-biased headsign geocode + board-leg pick + docs
- Transit: tap-through route stop timeline off the departure board
- Departure board: show more routes per stop (cap 12 -> 24)
- Share menu: rename 'Google Maps link' to 'Copy link' and copy to clipboard
- Show Flock cameras from a neighbourhood zoom, not only street level
- Docs: bus route numbers + flat-vs-grouped board layouts
- Show route numbers on the departure board and group buses by route
- Tapping a bus stop opens the stop, not the road intersection
- Add "Open on the web" to the share menu
- Fix the cold-launch camera staying zoomed out instead of on your location
- Show the departure board when you tap a bus stop on the map (issue #71)
- Show a live departure board when you tap a transit stop
- Show a "departs in X min" countdown and live badge on transit options
- Add the reversible bake pipeline for a posted-speed-limit overlay
- Pin Hebrew dictation instead of falling back to auto-detect
- Show the speed-limit sign while free-driving, not only in navigation
- Redo the launch recenter in the view layer so it actually fires
- Draw mapped Flock and other ALPR cameras on the map
- Snap the map back to my location on launch after a crash
- Drop the 'like Google' aside from the terrain-shading hint
- Add a terrain-shading toggle (off by default) and fix the reviews search circle
- Recolor the overlay houses in classic mode and note it is dark-mode for now
- Translate the newest UI strings into every language
- Integrate Hebrew alongside Chinese and Japanese, and correct its notes
- Add Hebrew (עברית) localization + RTL — 12th language
- Give the classic night palette its own look and enlarge the location arrow
- Make the navigation arrow bigger, drop the white ring, and use a brighter navy
- Point the missing-voice pill at system voice settings for languages Piper cannot speak
- Make re-parking a clear choice instead of a two-step dance
- Track your location while free-driving and smooth the heading beam
- Update the language-set tests to expect Chinese and Japanese
- Escape the apostrophes in the map colors hint so the release build stops choking
- Fix the Chinese depart phrase so it compiles
- Add Chinese, Taiwanese Chinese and Japanese across the app, spoken directions and dictation
- Point offline routing at the rebuilt graphs so avoid tolls and avoid highways work everywhere
- Let the routing graph workflow publish a parallel graph generation beside the old one
- Keep map POIs around when you pan back or close a place instead of refetching from Google
- Add a map colors setting with the modern Google look and the classic Vela look, remote default included
- Tap the version number in Settings to copy it for bug reports
- Catch the feature list up on the nav puck, bold streets, bike teal, plurals and the ramp voice fix
- Say '1 result' not '1 results' by using proper plurals for the results count
- Fix the nav voice mispronouncing take by giving the sign destination its own beat
- Draw dedicated bike paths in Google's teal on the map
- Bold the street-name labels on the map, matching Google
- Make the navigation arrow match Google: a white arrow inside a filled blue circle
- Put the privacy comparison table back in the README and move the how-it-works breakdown to its own doc
- Record that menu photo dates cannot be recalibrated: the gallery request is unchanged and Google now returns no photos to any automated request
- Slim the README down to the essentials and move the deep dives into PRIVACY and SPEC
- Retake every README screenshot with the standard teal look after the last set accidentally used wallpaper theming
- Fresh screenshots for the 0.4 look, and the gallery shot retires
- Note the 0.4 line in the project guide
- The 0.4 line begins
- Fix a brace the merge dropped in the search parser tests
- Review fixes: cache write race, stale dot paints, avoid chips no longer degrade online routes
- Retire the throwaway GraphHopper probe module and give the lists menu its keypad focus
- Write the POI speed changes into the project guide
- Map places appear as they load, nearby areas preload, and your home area shows instantly on launch
- Avoid tolls and avoid highways arrive in the route chooser
- Routing learns avoid tolls and avoid highways under the hood
- The parking button and the results filter menus join the soft ink treatment
- Icons stop reading darker than their labels, and the light map gets its last sampled colors
- Map places that lose the label fight still show as small colored dots
- Light mode is pixel matched to the real Google Maps app
- Note how the sports-field tint actually lands in the map style guide
- Sports fields actually show their tint now
- Park and bike trails draw as green lines and sports fields get their Google tint in dark mode
- Update README.md
- Alleys and driveways draw a shade darker than streets in dark mode, like Google
- Zoomed-in buildings stop glowing brighter than the palette in dark mode
- The Android Auto map uses the Roboto style too, not just the phone screen
- Microsoft footprint buildings wear the sampled palette too, and the old map colors are archived
- Map labels now render in Roboto like Google, from our own font host
- Flick a minimized place card open from anywhere on it, not just the pull bar
- Dark mode is pixel matched to the real Google Maps app and flicks can no longer read as zero
- Sheets finally flick like the place card, the map wears your eyedropped Google colors, two finger tilt actually triggers, and photos zoom on double tap
- Correct the notes: the place page carries no photo dates, the photo listing recalibration is the only route
- Census the page payload strings while hunting photo dates
- Read the photo dates out of the page's embedded payload strings
- Loosen the photo date mining so it finds the page's real photo entries
- Restore the project notes wiped by a bad merge resolution and add the missing entries
- Menu and gallery photos get their dates back, flicks snap sheets a detent, and the map palette tracks the Google app
- The minimized route chooser reopens smoothly, pans away like the other sheets, and light mode roads pick up Google's grey
- Map greens match Google now and are actually visible in dark mode, the trip time stops wrapping, and the map style setting is gone
- Flat green forests and marshes like Google, an interface size setting for car screens, bigger nav buttons, and the search bar stops taking taps under an expanded place card
- Note that menu photo dates wait on recalibrating the photo listing call
- Menus show up much more reliably
- Vela tells you which side your destination is on, sheet buttons share one circle look, and the README slims down
- Drag the route chooser from anywhere, sticky travel mode, wider zoomed-out search, filters clear map pins too, bookmark save icon, circled directions close
- The minimized Start button waits for the chooser body to be nearly gone before growing in
- The route chooser now minimizes under your finger with real inertia
- Picking a time that already passed now says so instead of silently snapping to now
- Search along route chips look tappable and you cannot schedule a trip in the past
- The directions buttons match the rest of the app and estimated times drop the tilde
- Depart at and arrive by feel deliberate now, the reviews tab gets a real rating histogram, menu photos carry their dates again, and the minimized card no longer shows map under it
- Update the project notes for the sheet fold changes
- The place card lands its minimize without the last moment hop, the results list folds its filter chips away with the sheet, and menu photos show when they were uploaded
- Minimizing a scrolled place card scrolls it back to the top so the name is never stuck behind the handle
- The place card fold now moves with the card and the reviews page only closes when you really pull it
- Minimizing the place card now folds the extras away smoothly instead of swapping to a separate mini card
- The reviews pull-to-close waits for your finger and springs back
- A privacy comparison table joins the README
- The full reviews page can be pulled down from its top to close
- The parked car sheet is a single fixed height, no phantom minimize
- The parked car sheet no longer loads the last place's reviews and photos
- Update the viewer feature note for the activity-window fix
- Drop the dead full-screen helper and update the viewer notes
- Full-screen viewers move into the activity window, fixing edges and rotation
- Note the full-screen viewer chrome fix in the docs
- The viewers show the status bar over a gradient, Google's own treatment
- OSM icons blend with the Google dots, and junction signs wait for street zoom
- Full black behind the viewers, since the dialog window refuses the bars
- Note the true-fullscreen viewer fix in the feature list
- The viewer content demands the real display size, ending the inset strips
- The viewers finally reach the screen edges on modern Android
- A pushed notice can be a pop-up now, not just a map card
- The viewers paint their whole window, killing the last see-through strips
- The place card's extras slide away, and the viewers claim the whole screen
- The place card fades as it minimizes, and the header circles stop lying
- Note the menu photo fix in the feature list
- The Menu tab stops collecting photos that were never the menu
- The photo viewer goes properly full screen with Google's blurred backdrop
- Menus become a real tab, and the review search tucks behind a magnifier
- F-Droid setup leads with the one-line repo address, README mentions Material You
- Fix a build break in the nav-exit camera reset
- Ending navigation returns to a flat north-up map, and POI layers stop racing
- Star button becomes the save menu, gallery survives rotation, breathing room
- The place page catches up to the rest of Vela's look
- Filter chips open real menus, and results can filter to wheelchair accessible
- Picking a result opens full size again, and the bar stacks its two lines
- Every POI label can pick a clear side of its icon, not just the map results
- Result labels can sit beside the pin, not only under it
- The sheets glide down for real, and the results bar names your search
- Note the house-number dedup in the feature list
- House numbers stop repeating across apartment complexes
- Stop signs and traffic lights step aside during a search
- Sheets glide down softly when you grab the map, place card included
- Grabbing the map drops the results list out of the way
- The gas price gets its own bold line with a pump glyph in the results
- Result pins match the ambient marker shape, base POIs hide during a search
- Gas stations show their live fuel price on the map, the list and the place page
- Result pins keep the grey teardrop with a red circle, bubbles lose the star
- Dense search results collapse into red dots, rated restaurants get bubbles
- Navigation now buzzes when it reroutes, not just when a turn is coming
- The route chooser swipes down to a slim bar so the route is visible
- The results list rides its throws, and back exits the search in one press
- Search results draw as named POI icons instead of red pins
- A new place closes the route chooser, and the map buttons stay under it
- Switching languages back no longer leaves Russian behind
- Sweep the long dashes out of every translation
- The voice picker shows Android default as its own choice
- Release pruning that can actually see the whole list
- The sheet rides out the throw instead of springing to the detent
- Respect Android's default voice app when nothing is picked in Vela
- Choose which voice app the mic uses
- Smoother sheet animation and a less eager minimize
- The voice demo is a slim black strip so the player reads as a player
- The place card follows your finger and coasts to the nearest size
- Vela Voice warms up before the first dictation
- Transit lines start off by default
- Update README.md
- Write down how the README's inline voice player gets its URL
- The voice demo plays right inside the README
- Screenshots without transit lines, and the voice demo says the new line the way the app would
- Transit screenshot returns without the purple overlay, and the voice demo matches the app exactly
- Test and playground speech ignore the mute switch
- Screenshots lead with navigation, install moves below them, and the voice demo gets a real player
- README leads with what people care about, plus a listenable nav-voice demo
- Traffic conditions in words on route choices, and no surprise voice sample after installs
- Refresh the README screenshots on 0.3.472
- Bigger arrival time without the traffic note, and every nav card joins the stack
- Docs pass for the permission, voice and notification work
- One notification area on the map, a Get-a-voice shortcut, and a spoken directions toggle
- Warn when you would arrive close to closing time
- Update button on the update card is a filled pill
- Approximate location gets a real circle and an explainer, and setup asks about notifications
- Recents get a remove X and show addresses, Home and Work menus match their text
- Ask for precise location when navigation needs it, and explain a dead locate button
- Make the approximate-location blob actually visible, and polish the voice bits
- Show a soft accuracy circle when the location is only approximate
- Voice search: the mic now offers the Vela voice download, and installs are fast
- Voice search polish: call it Vela voice, livelier pulse, cleaner transcripts
- Document on-device voice search (privacy, features, architecture)
- On-device voice search: mic capture, tiers, and the Settings download
- On-device voice search: model hosting + Whisper recognizer engine
- Capitalize Vela Voice and quiet down the Voice library copy
- Tighten every Settings description and drop the leftover clutter
- Reframe the Offline maps section: local area vs whole states and countries
- Rename Offline to Offline maps, move it above Search, simplify the region filter
- Simplify the offline Map area and Routing regions descriptions
- Settings tweaks: clearer offline text, content filters back with place content
- Declutter Settings: Advanced and Developer groups, shorter language and voice sections
- Ask for location right at Get started, drop the extra rationale screen
- Trim onboarding to three steps and give dialog buttons a filled pill
- Voice search mic in the search bar
- Polish the onboarding prompts
- Ask for location in onboarding with a reason, and make the voice offer an honest choice
- Update straight from Settings
- Docs-only pushes stop cutting nightlies
- Docs: which surfaces follow Material You and which stay neutral
- Docs: how the F-Droid channels and triggers actually work
- F-Droid repo suggests the stable; nightlies become opt-in unstable
- F-Droid index actually refreshes on every nightly now
- Material You dynamic colours (issue #15)
- Document the infrastructure releases so nobody deletes the download backend again
- Nightly pruning only touches v0 tags
- Prune nightlies past the newest 14
- Fix crash on open on Android 10 and below when a location provider is disabled
- F-Droid badge next to the Obtainium one
- Recents mix places and searches in one timeline, saved rows readable in dark mode
- House numbers draw above buildings again
- List notes stick to chain stores, show inside the list, and the list shows its name
- Audit cleanup: dead code out, stale comments fixed, shared helpers deduplicated
- Audit fixes: version-skew data wipe, feature id padding, five smaller bugs
- Street names stay readable over routes, keypad focus ring stops clipping the first letter
- Map labels always win over stop signs, compass clears the search bar, demo dot stays blue
- F-Droid repo: install fdroidserver from pip, apt's is too old for modern APKs
- Fresh Davis screenshots and a plain-words guide to parking, lists and import
- Demo drive shows the real nav notification too
- Add a self-hosted F-Droid repository built and published by CI
- Nav notification shows the turn: arrow glyph, ETA clock, lock-screen detail
- Tone the lists ribbon down to chip grey in dark mode
- Move Your lists out of the search page into the ribbon button's own menu
- Fix crash when switching light/dark theme in the app
- Lists map ribbon + export/import, light-mode status bar icons, D-pad highlights, nightly update channel
- List import: preview + opt-in Save, not silent auto-save
- Local place lists (issue #1) + parking history
- Parking v2 (own button + map pin + car sheet), Google Maps list import, department-hours alignment
- Docs: tidy the department-hours entry; write up the proven list-import extraction
- Save my parking spot; department hours nest under the main Hours row
- Show in-store department hours on the place sheet
- Docs: location hygiene is a judgment call, not a blanket ban
- Docs: location hygiene rules for contributors and AI assistants
- Fix department hours mashing into store status; locate button back to the stock FAB
- Locate button matches the chip surfaces; arrive step drops the duplicate street line
- Locate button: back to full size with a lifted circle
- Google-style locate button, radio label spacing, Davis test coords, parking-spot roadmap
- Make every Settings toggle a visible D-pad focus stop
- Replace a few remaining local street names in comments with Davis examples
- Stops always open the editor + a full docs cleanup pass
- Post-merge tweaks for the Android Auto PR
- Dot outlines, teal you-pin, ink flag, no ghost route in walk mode
- Exact-constant walking dots, blue me-pin + flag grammar, tap to restore the card
- AA: fix NAVIGATE handler crash on geo: URIs (opaque — getQueryParameter throws)
- Update README.md
- Update README.md
- Google-style dots, stops editor sheet, swipe never closes the place sheet
- D-pad: pressing up at the top of Settings lands on Back, not lost focus
- Android Auto: full car-side nav (search/route/guide) + map-matching + smoothing
- Fix the add-stop banner rendering black in dark mode + walking dots that don't scale
- Search along route: picks add a stop, distances follow the trip, fix grey chips
- Arrive step names the destination + an X to close search results
- Route picker: only one route wears the Fastest tag
- D-pad polish: Settings focus trap, dialog scroll, hybrid-phone search tap
- CI: fall back to the upstream tts-runtime release so fork PRs don't 404
- Fix Settings jank/ANR from voice-engine enumeration in composition
- Fix the fastest route not always leading the route picker
- Add a "Hide website & external links" setting
- Add a "Hide adult categories" setting
- Nav: show the full trip ETA before the first GPS fix
- Make the directions chips match the rest of Vela
- Add a simulate-my-location demo toggle and refresh the screenshots
- Fix the search bar not opening on ordinary phones
- Search framing: stop the camera snapping back after fitting the results
- D-pad: focus rings on every place-sheet action, fix Choose-on-map, add exhaustive auditors
- Add dpad_test_suite: reproducible on-device D-pad checks
- D-pad: bare map opens on the search bar, not an engaged map
- D-pad: Welcome Get-started now auto-focuses on every screen size
- docs: record the menu/dialog auto-focus solution (VelaMenu/VelaDialog)
- D-pad: menus now auto-focus too (VelaMenu) -- secondary-window gap closed
- D-pad: dialogs now auto-focus (VelaDialog, raw-Dialog pattern)
- D-pad: finish proving the secondary-window focus limit (menus + dialogs)
- D-pad: document the Compose secondary-window focus limit (menus + dialogs)
- D-pad: add robust off-screen auto-focus + document menu/dialog limits
- D-pad: place focus on every screen so no keypress is wasted
- D-pad: make the full-screen reviews WebView scroll by D-pad
- D-pad: close the last touch-only gaps found in a full-app sweep
- Add full D-pad / no-touchscreen operation
- Results sheet: back never exits the app, camera frames the pin cluster
- Results sheet: back steps one size down, and the top stays visible
- Nightly and weekly release channels
- Search results now rise from the bottom, like Google
- Fix content falling off the bottom on short screens (scroll)
- Directions: scroll the travel-mode chips so Bike isn't clipped
- Transit: schedule a departure/arrival time (+ date, + Last available)
- Transit: step-by-step trip guidance (Moovit-style)
- Transit: turn-by-turn walking directions within a walk leg
- Transit: full stop detail in the leg drill-down
- Polish the search results panel: filled chips, no hide button, cleaner hiding
- Tap a house number or building to open its address
Full changelog: v0.4.830...v0.4.831