mirror of
https://github.com/firestar5683/StarPilot.git
synced 2026-08-21 00:03:45 +08:00
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: b6b255c10355c40fd8c53703720f8e1b12958855
This commit is contained in:
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user