ui: refactor setPrimeType (#28143)

handle prime type change in new function UIState::setPrimeType
pull/28199/head
Dean Lee 2 years ago committed by GitHub
parent 0c00099437
commit 8ca3be9788
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      selfdrive/ui/qt/offroad/wifiManager.cc
  2. 2
      selfdrive/ui/qt/onroad.cc
  3. 4
      selfdrive/ui/qt/widgets/prime.cc
  4. 15
      selfdrive/ui/ui.cc
  5. 10
      selfdrive/ui/ui.h

@ -415,7 +415,7 @@ void WifiManager::addTetheringConnection() {
} }
void WifiManager::tetheringActivated(QDBusPendingCallWatcher *call) { void WifiManager::tetheringActivated(QDBusPendingCallWatcher *call) {
int prime_type = uiState()->prime_type; int prime_type = uiState()->primeType();
int ipv4_forward = (prime_type == PrimeType::NONE || prime_type == PrimeType::LITE); int ipv4_forward = (prime_type == PrimeType::NONE || prime_type == PrimeType::LITE);
if (!ipv4_forward) { if (!ipv4_forward) {

@ -89,7 +89,7 @@ void OnroadWindow::mousePressEvent(QMouseEvent* e) {
void OnroadWindow::offroadTransition(bool offroad) { void OnroadWindow::offroadTransition(bool offroad) {
#ifdef ENABLE_MAPS #ifdef ENABLE_MAPS
if (!offroad) { if (!offroad) {
if (map == nullptr && (uiState()->prime_type || !MAPBOX_TOKEN.isEmpty())) { if (map == nullptr && (uiState()->primeType() || !MAPBOX_TOKEN.isEmpty())) {
MapWindow * m = new MapWindow(get_mapbox_settings()); MapWindow * m = new MapWindow(get_mapbox_settings());
map = m; map = m;

@ -277,7 +277,7 @@ SetupWidget::SetupWidget(QWidget* parent) : QFrame(parent) {
primeUser = new PrimeUserWidget; primeUser = new PrimeUserWidget;
mainLayout->addWidget(primeUser); mainLayout->addWidget(primeUser);
mainLayout->setCurrentWidget(uiState()->prime_type ? (QWidget*)primeUser : (QWidget*)primeAd); mainLayout->setCurrentWidget(uiState()->primeType() ? (QWidget*)primeUser : (QWidget*)primeAd);
setFixedWidth(750); setFixedWidth(750);
setStyleSheet(R"( setStyleSheet(R"(
@ -312,7 +312,7 @@ void SetupWidget::replyFinished(const QString &response, bool success) {
QJsonObject json = doc.object(); QJsonObject json = doc.object();
int prime_type = json["prime_type"].toInt(); int prime_type = json["prime_type"].toInt();
uiState()->prime_type = prime_type; uiState()->setPrimeType(prime_type);
if (!json["is_paired"].toBool()) { if (!json["is_paired"].toBool()) {
mainLayout->setCurrentIndex(0); mainLayout->setCurrentIndex(0);

@ -238,13 +238,6 @@ void UIState::updateStatus() {
started_prev = scene.started; started_prev = scene.started;
emit offroadTransition(!scene.started); emit offroadTransition(!scene.started);
} }
// Handle prime type change
if (prime_type != prime_type_prev) {
prime_type_prev = prime_type;
emit primeTypeChanged(prime_type);
Params().put("PrimeType", std::to_string(prime_type));
}
} }
UIState::UIState(QObject *parent) : QObject(parent) { UIState::UIState(QObject *parent) : QObject(parent) {
@ -275,6 +268,14 @@ void UIState::update() {
emit uiUpdate(*this); emit uiUpdate(*this);
} }
void UIState::setPrimeType(int type) {
if (type != prime_type) {
prime_type = type;
Params().put("PrimeType", std::to_string(prime_type));
emit primeTypeChanged(prime_type);
}
}
Device::Device(QObject *parent) : brightness_filter(BACKLIGHT_OFFROAD, BACKLIGHT_TS, BACKLIGHT_DT), QObject(parent) { Device::Device(QObject *parent) : brightness_filter(BACKLIGHT_OFFROAD, BACKLIGHT_TS, BACKLIGHT_DT), QObject(parent) {
setAwake(true); setAwake(true);
resetInteractiveTimout(); resetInteractiveTimout();

@ -133,10 +133,13 @@ public:
void updateStatus(); void updateStatus();
inline bool worldObjectsVisible() const { inline bool worldObjectsVisible() const {
return sm->rcv_frame("liveCalibration") > scene.started_frame; return sm->rcv_frame("liveCalibration") > scene.started_frame;
}; }
inline bool engaged() const { inline bool engaged() const {
return scene.started && (*sm)["controlsState"].getControlsState().getEnabled(); return scene.started && (*sm)["controlsState"].getControlsState().getEnabled();
}; }
void setPrimeType(int type);
inline int primeType() const { return prime_type; }
int fb_w = 0, fb_h = 0; int fb_w = 0, fb_h = 0;
@ -146,7 +149,6 @@ public:
UIScene scene = {}; UIScene scene = {};
bool awake; bool awake;
int prime_type;
QString language; QString language;
QTransform car_space_transform; QTransform car_space_transform;
@ -162,7 +164,7 @@ private slots:
private: private:
QTimer *timer; QTimer *timer;
bool started_prev = false; bool started_prev = false;
int prime_type_prev = -1; int prime_type = -1;
}; };
UIState *uiState(); UIState *uiState();

Loading…
Cancel
Save