From 74195e1d787e0c405d05226645d4ce8fe4fe7806 Mon Sep 17 00:00:00 2001 From: Dean Lee Date: Sat, 26 Aug 2023 22:47:18 +0800 Subject: [PATCH] ui/driverview: hide on interactive timeout (#29464) * hide on interactiveTimeout * cleanup * requestDone->closeView * dont reset timeout on hideEvent --------- Co-authored-by: sshane old-commit-hash: b6b255c10355c40fd8c53703720f8e1b12958855 --- selfdrive/ui/qt/offroad/driverview.cc | 13 ++++++++++--- selfdrive/ui/qt/offroad/driverview.h | 5 +---- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/selfdrive/ui/qt/offroad/driverview.cc b/selfdrive/ui/qt/offroad/driverview.cc index 4d09d914d3..ec4b567ca6 100644 --- a/selfdrive/ui/qt/offroad/driverview.cc +++ b/selfdrive/ui/qt/offroad/driverview.cc @@ -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() { diff --git a/selfdrive/ui/qt/offroad/driverview.h b/selfdrive/ui/qt/offroad/driverview.h index 255857970d..a6ea2cbee7 100644 --- a/selfdrive/ui/qt/offroad/driverview.h +++ b/selfdrive/ui/qt/offroad/driverview.h @@ -1,10 +1,7 @@ #pragma once -#include - #include -#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;