|
|
|
@ -151,16 +151,15 @@ AdvancedNetworking::AdvancedNetworking(QWidget* parent, WifiManager* wifi): QWid |
|
|
|
|
// Roaming toggle
|
|
|
|
|
const bool roamingEnabled = params.getBool("GsmRoaming"); |
|
|
|
|
ToggleControl *roamingToggle = new ToggleControl(tr("Enable Roaming"), "", "", roamingEnabled); |
|
|
|
|
QObject::connect(roamingToggle, &SshToggle::toggleFlipped, [=](bool state) { |
|
|
|
|
QObject::connect(roamingToggle, &ToggleControl::toggleFlipped, [=](bool state) { |
|
|
|
|
params.putBool("GsmRoaming", state); |
|
|
|
|
wifi->updateGsmSettings(state, QString::fromStdString(params.get("GsmApn"))); |
|
|
|
|
wifi->updateGsmSettings(state, QString::fromStdString(params.get("GsmApn")), params.getBool("GsmMetered")); |
|
|
|
|
}); |
|
|
|
|
list->addItem(roamingToggle); |
|
|
|
|
|
|
|
|
|
// APN settings
|
|
|
|
|
ButtonControl *editApnButton = new ButtonControl(tr("APN Setting"), tr("EDIT")); |
|
|
|
|
connect(editApnButton, &ButtonControl::clicked, [=]() { |
|
|
|
|
const bool roamingEnabled = params.getBool("GsmRoaming"); |
|
|
|
|
const QString cur_apn = QString::fromStdString(params.get("GsmApn")); |
|
|
|
|
QString apn = InputDialog::getText(tr("Enter APN"), this, tr("leave blank for automatic configuration"), false, -1, cur_apn).trimmed(); |
|
|
|
|
|
|
|
|
@ -169,12 +168,21 @@ AdvancedNetworking::AdvancedNetworking(QWidget* parent, WifiManager* wifi): QWid |
|
|
|
|
} else { |
|
|
|
|
params.put("GsmApn", apn.toStdString()); |
|
|
|
|
} |
|
|
|
|
wifi->updateGsmSettings(roamingEnabled, apn); |
|
|
|
|
wifi->updateGsmSettings(params.getBool("GsmRoaming"), apn, params.getBool("GsmMetered")); |
|
|
|
|
}); |
|
|
|
|
list->addItem(editApnButton); |
|
|
|
|
|
|
|
|
|
// Metered toggle
|
|
|
|
|
const bool metered = params.getBool("GsmMetered"); |
|
|
|
|
ToggleControl *meteredToggle = new ToggleControl(tr("Cellular Metered"), tr("Prevent large data uploads when on a metered connection"), "", metered); |
|
|
|
|
QObject::connect(meteredToggle, &SshToggle::toggleFlipped, [=](bool state) { |
|
|
|
|
params.putBool("GsmMetered", state); |
|
|
|
|
wifi->updateGsmSettings(params.getBool("GsmRoaming"), QString::fromStdString(params.get("GsmApn")), state); |
|
|
|
|
}); |
|
|
|
|
list->addItem(meteredToggle); |
|
|
|
|
|
|
|
|
|
// Set initial config
|
|
|
|
|
wifi->updateGsmSettings(roamingEnabled, QString::fromStdString(params.get("GsmApn"))); |
|
|
|
|
wifi->updateGsmSettings(roamingEnabled, QString::fromStdString(params.get("GsmApn")), metered); |
|
|
|
|
|
|
|
|
|
main_layout->addWidget(new ScrollView(list, this)); |
|
|
|
|
main_layout->addStretch(1); |
|
|
|
|