mirror of
https://github.com/infiniteCable2/openpilot.git
synced 2026-08-05 08:16:03 +08:00
ui: Disable Updates Toggle (#1040)
* Disable Updates * Add default to manager.py * Add enabled state and alternate descriptions --------- Co-authored-by: Nayan <nayan8teen@gmail.com> Co-authored-by: DevTekVE <devtekve@gmail.com>
This commit is contained in:
committed by
GitHub
parent
517919c7b7
commit
47833ed73a
@@ -18,6 +18,18 @@ SoftwarePanelSP::SoftwarePanelSP(QWidget *parent) : SoftwarePanel(parent) {
|
||||
searchBranches(d.text());
|
||||
}
|
||||
});
|
||||
|
||||
// Disable Updates toggle
|
||||
disableUpdatesToggle = new ParamControl("DisableUpdates",
|
||||
tr("Disable Updates"),
|
||||
tr("When enabled, software updates will be disabled. <b>This requires a reboot to take effect.</b>"),
|
||||
"../assets/icons/icon_warning.png",
|
||||
this);
|
||||
disableUpdatesToggle->showDescription();
|
||||
addItem(disableUpdatesToggle);
|
||||
connect(disableUpdatesToggle, &ParamControl::toggleFlipped, this, &SoftwarePanelSP::handleDisableUpdatesToggled);
|
||||
connect(uiState(), &UIState::offroadTransition, this, &SoftwarePanelSP::updateDisableUpdatesToggle);
|
||||
updateDisableUpdatesToggle(!uiState()->scene.started);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -49,3 +61,27 @@ void SoftwarePanelSP::searchBranches(const QString &query) {
|
||||
checkForUpdates();
|
||||
}
|
||||
}
|
||||
|
||||
void SoftwarePanelSP::handleDisableUpdatesToggled(bool state) {
|
||||
if (ConfirmationDialog::confirm(tr("%1 updates requires a reboot.<br>Reboot now?")
|
||||
.arg(state ? "Disabling" : "Enabling"), tr("Reboot"), this)) {
|
||||
params.putBool("DoReboot", true);
|
||||
} else {
|
||||
params.putBool("DisableUpdates", !state);
|
||||
disableUpdatesToggle->refresh();
|
||||
}
|
||||
}
|
||||
|
||||
void SoftwarePanelSP::updateDisableUpdatesToggle(bool offroad) {
|
||||
bool enabled = offroad;
|
||||
disableUpdatesToggle->setEnabled(enabled);
|
||||
disableUpdatesToggle->setDescription(enabled
|
||||
? tr("When enabled, software updates will be disabled.<br><b>This requires a reboot to take effect.</b>")
|
||||
: tr("Please enable always offroad mode or turn off vehicle to adjust these toggles"));
|
||||
}
|
||||
|
||||
void SoftwarePanelSP::showEvent(QShowEvent *event) {
|
||||
SoftwarePanel::showEvent(event);
|
||||
updateDisableUpdatesToggle(!uiState()->scene.started);
|
||||
disableUpdatesToggle->showDescription();
|
||||
}
|
||||
|
||||
@@ -19,4 +19,10 @@ public:
|
||||
|
||||
private:
|
||||
void searchBranches(const QString &query);
|
||||
ParamControl *disableUpdatesToggle = nullptr;
|
||||
void handleDisableUpdatesToggled(bool state);
|
||||
private slots:
|
||||
void updateDisableUpdatesToggle(bool offroad);
|
||||
protected:
|
||||
void showEvent(QShowEvent *event) override;
|
||||
};
|
||||
|
||||
@@ -54,6 +54,7 @@ def manager_init() -> None:
|
||||
("CustomAccLongPressIncrement", "5"),
|
||||
("CustomAccShortPressIncrement", "1"),
|
||||
("DeviceBootMode", "0"),
|
||||
("DisableUpdates", "0"),
|
||||
("DynamicExperimentalControl", "0"),
|
||||
("HyundaiLongitudinalTuning", "0"),
|
||||
("InteractivityTimeout", "0"),
|
||||
|
||||
Reference in New Issue
Block a user