diff --git a/selfdrive/ui/qt/maps/map_panel.cc b/selfdrive/ui/qt/maps/map_panel.cc index d2681868ae..0e547ef4ad 100644 --- a/selfdrive/ui/qt/maps/map_panel.cc +++ b/selfdrive/ui/qt/maps/map_panel.cc @@ -17,16 +17,16 @@ MapPanel::MapPanel(const QMapboxGLSettings &mapboxSettings, QWidget *parent) : Q QObject::connect(device(), &Device::interactiveTimeout, [=]() { content_stack->setCurrentIndex(0); }); - QObject::connect(map, &MapWindow::requestVisible, this, &MapPanel::requestVisible); -// QObject::connect(map, &MapWindow::requestVisible, [=](bool visible) { -// // when we show the map for a new route, signal HomeWindow to hide the sidebar -// if (visible) { emit mapPanelRequested(); } -// setVisible(visible); -// }); - QObject::connect(map, &MapWindow::requestSettings, this, &MapPanel::requestMapSettings); -// QObject::connect(map, &MapWindow::requestSettings, [=](bool settings) { -// content_stack->setCurrentIndex(settings ? 1 : 0); -// }); +// QObject::connect(map, &MapWindow::requestVisible, this, &MapPanel::requestVisible); + QObject::connect(map, &MapWindow::requestVisible, [=](bool visible) { + // when we show the map for a new route, signal HomeWindow to hide the sidebar + if (visible) { emit mapPanelRequested(); } + setVisible(visible); + }); +// QObject::connect(map, &MapWindow::requestSettings, this, &MapPanel::requestMapSettings); + QObject::connect(map, &MapWindow::requestSettings, [=](bool settings) { + content_stack->setCurrentIndex(settings ? 1 : 0); + }); content_stack->addWidget(map); auto settings = new MapSettings(true, parent); @@ -37,26 +37,38 @@ MapPanel::MapPanel(const QMapboxGLSettings &mapboxSettings, QWidget *parent) : Q } void MapPanel::requestVisible(bool visible) { - // signal HomeWindow to hide the sidebar and switch to map window if showing - if (visible) { + if (visible && !isVisible()) { + qDebug() << "emit mapPanelRequested()"; emit mapPanelRequested(); - content_stack->setCurrentIndex(0); } - setVisible(visible); + +// if (visible != isVisible()) { +// // signal HomeWindow to hide the sidebar and switch to map window if showing +// if (visible) { +// emit mapPanelRequested(); +// content_stack->setCurrentIndex(0); +// } +// setVisible(visible); +// } + setVisible(visible); } void MapPanel::toggleMapSettings() { +// emit mapPanelRequested(); +// setVisible(true); requestVisible(true); +// requestVisible(true); // if (!isVisible()) { // emit mapPanelRequested(); qDebug() << "emit mapPanelRequested()"; // setVisible(true); // } - content_stack->setCurrentIndex((content_stack->currentIndex() + 1) % 2); + int index = isVisible() ? ((content_stack->currentIndex() + 1) % 2) : 1; + content_stack->setCurrentIndex(index); } -void MapPanel::requestMapSettings(bool settings) { - content_stack->setCurrentIndex(settings ? 1 : 0); -// emit mapPanelRequested(); -// setVisible(true); -// content_stack->setCurrentIndex(1); -} +//void MapPanel::requestMapSettings(bool settings) { +// content_stack->setCurrentIndex(settings ? 1 : 0); +//// emit mapPanelRequested(); +//// setVisible(true); +//// content_stack->setCurrentIndex(1); +//} diff --git a/selfdrive/ui/qt/maps/map_panel.h b/selfdrive/ui/qt/maps/map_panel.h index be4420a323..f1b25e806a 100644 --- a/selfdrive/ui/qt/maps/map_panel.h +++ b/selfdrive/ui/qt/maps/map_panel.h @@ -15,7 +15,7 @@ signals: public slots: void requestVisible(bool visible); - void requestMapSettings(bool settings); +// void requestMapSettings(bool settings); void toggleMapSettings();