diff --git a/selfdrive/ui/qt/maps/map.cc b/selfdrive/ui/qt/maps/map.cc index 3662f4bbf8..c61cb35345 100644 --- a/selfdrive/ui/qt/maps/map.cc +++ b/selfdrive/ui/qt/maps/map.cc @@ -278,7 +278,12 @@ void MapWindow::recomputeRoute() { if (*new_destination != nav_destination) { qWarning() << "Got new destination from NavDestination param" << *new_destination; - setVisible(true); // Show map on destination set/change + // Only open the map on setting destination the first time + if (allow_open) { + setVisible(true); // Show map on destination set/change + allow_open = false; + } + // TODO: close sidebar should_recompute = true; @@ -375,6 +380,7 @@ void MapWindow::clearRoute() { map_instructions->hideIfNoError(); map_eta->setVisible(false); + allow_open = true; } diff --git a/selfdrive/ui/qt/maps/map.h b/selfdrive/ui/qt/maps/map.h index 7da1024485..a796872b32 100644 --- a/selfdrive/ui/qt/maps/map.h +++ b/selfdrive/ui/qt/maps/map.h @@ -111,6 +111,7 @@ private: bool localizer_valid = false; // Route + bool allow_open = true; bool gps_ok = false; QGeoServiceProvider *geoservice_provider; QGeoRoutingManager *routing_manager;