ui/driverview: hide on interactive timeout (#29464)

* hide on interactiveTimeout

* cleanup

* requestDone->closeView

* dont reset timeout on hideEvent

---------

Co-authored-by: sshane <shane@smiskol.com>
old-commit-hash: b6b255c103
beeps
Dean Lee 2 years ago committed by GitHub
parent 2c86b69c92
commit 74195e1d78
  1. 13
      selfdrive/ui/qt/offroad/driverview.cc
  2. 5
      selfdrive/ui/qt/offroad/driverview.h

@ -20,11 +20,19 @@ DriverViewWindow::DriverViewWindow(QWidget* parent) : QWidget(parent) {
connect(cameraView, &CameraWidget::vipcThreadFrameReceived, scene, &DriverViewScene::frameUpdated);
layout->addWidget(scene);
layout->setCurrentWidget(scene);
QObject::connect(device(), &Device::interactiveTimeout, this, &DriverViewWindow::closeView);
}
void DriverViewWindow::closeView() {
if (isVisible()) {
cameraView->stopVipcThread();
emit done();
}
}
void DriverViewWindow::mouseReleaseEvent(QMouseEvent* e) {
cameraView->stopVipcThread();
emit done();
closeView();
}
DriverViewScene::DriverViewScene(QWidget* parent) : sm({"driverStateV2"}), QWidget(parent) {
@ -39,7 +47,6 @@ void DriverViewScene::showEvent(QShowEvent* event) {
void DriverViewScene::hideEvent(QHideEvent* event) {
params.putBool("IsDriverViewEnabled", false);
device()->resetInteractiveTimeout();
}
void DriverViewScene::frameUpdated() {

@ -1,10 +1,7 @@
#pragma once
#include <memory>
#include <QStackedLayout>
#include "common/util.h"
#include "selfdrive/ui/qt/widgets/cameraview.h"
class DriverViewScene : public QWidget {
@ -40,8 +37,8 @@ signals:
protected:
void mouseReleaseEvent(QMouseEvent* e) override;
void closeView();
private:
CameraWidget *cameraView;
DriverViewScene *scene;
QStackedLayout *layout;

Loading…
Cancel
Save