ui: hide sidebar when map shows (#28490)

Co-authored-by: Cameron Clough <cameronjclough@gmail.com>

old-commit-hash: dcb769982f
beeps
Shane Smiskol 2 years ago committed by GitHub
parent bb7fa0fbd8
commit 04bc7566af
  1. 1
      selfdrive/ui/qt/home.cc
  2. 6
      selfdrive/ui/qt/maps/map_panel.h
  3. 2
      selfdrive/ui/qt/onroad.cc
  4. 3
      selfdrive/ui/qt/onroad.h

@ -34,6 +34,7 @@ HomeWindow::HomeWindow(QWidget* parent) : QWidget(parent) {
slayout->addWidget(home); slayout->addWidget(home);
onroad = new OnroadWindow(this); onroad = new OnroadWindow(this);
QObject::connect(onroad, &OnroadWindow::mapWindowShown, this, [=] { sidebar->hide(); });
slayout->addWidget(onroad); slayout->addWidget(onroad);
body = new BodyWindow(this); body = new BodyWindow(this);

@ -12,6 +12,12 @@ public:
bool isShowingMap() const; bool isShowingMap() const;
private:
void showEvent(QShowEvent *event) { emit mapWindowShown(); };
signals:
void mapWindowShown();
private: private:
QStackedLayout *content_stack; QStackedLayout *content_stack;
}; };

@ -92,6 +92,8 @@ void OnroadWindow::offroadTransition(bool offroad) {
auto m = new MapPanel(get_mapbox_settings()); auto m = new MapPanel(get_mapbox_settings());
map = m; map = m;
QObject::connect(m, &MapPanel::mapWindowShown, this, &OnroadWindow::mapWindowShown);
m->setFixedWidth(topWidget(this)->width() / 2 - bdr_s); m->setFixedWidth(topWidget(this)->width() / 2 - bdr_s);
split->insertWidget(0, m); split->insertWidget(0, m);

@ -115,6 +115,9 @@ public:
OnroadWindow(QWidget* parent = 0); OnroadWindow(QWidget* parent = 0);
bool isMapVisible() const { return map && map->isVisible(); } bool isMapVisible() const { return map && map->isVisible(); }
signals:
void mapWindowShown();
private: private:
void paintEvent(QPaintEvent *event); void paintEvent(QPaintEvent *event);
void mousePressEvent(QMouseEvent* e) override; void mousePressEvent(QMouseEvent* e) override;

Loading…
Cancel
Save