fix: route back-button and map popup flicker (#1.13.5)

- Replace two fixed-destination back-buttons on the route page with a
  single arrow_back button using window.history.back(), so navigation
  always returns to the calling screen (Messages or Archive).

- Guard setIcon() and setPopupContent() in applyDevice/applyContacts
  behind isPopupOpen() to prevent popup flickering on the 500 ms
  update tick.

- Set fadeAnimation: false and markerZoomAnimation: false on both
  Leaflet map instances (main map and route map) to eliminate popup
  flash on first click, particularly noticeable on Raspberry Pi.
This commit is contained in:
pe1hvh
2026-03-14 05:25:07 +01:00
parent 4227f00e04
commit 71a5ebca74
4 changed files with 35 additions and 11 deletions
+2 -6
View File
@@ -143,12 +143,8 @@ class RoutePage:
with ui.header().classes('items-center px-4 py-2 shadow-md'):
ui.button(
icon='arrow_back',
on_click=lambda: ui.navigate.to('/'),
).props('flat round dense color=white').tooltip('Back to Dashboard')
ui.button(
icon='history',
on_click=lambda: ui.navigate.to('/archive'),
).props('flat round dense color=white').tooltip('Back to Archive')
on_click=lambda: ui.run_javascript('window.history.back()'),
).props('flat round dense color=white').tooltip('Back')
ui.label('🗺️ MeshCore Route').classes(
'text-lg font-bold domca-header-text'
).style("font-family: 'JetBrains Mono', monospace")