UI: forget button and security type icon (#21320)

* forget and security buttons first draft

* Text left margin closely matches other panels

* add lock label

* implement new icon

* actually add icon

rename

* smaller lock icon

smaller icon

* better
old-commit-hash: 290e9fb9f6
commatwo_master
sshane 4 years ago committed by GitHub
parent ecfc361966
commit e980a38449
  1. 3
      selfdrive/assets/offroad/icon_close.svg
  2. 3
      selfdrive/assets/offroad/icon_lock_closed.svg
  3. 27
      selfdrive/ui/qt/offroad/networking.cc
  4. 6
      selfdrive/ui/qt/offroad/wifiManager.cc
  5. 2
      selfdrive/ui/qt/offroad/wifiManager.h

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4eff44a05132ed9f99ad821993be4bab9b1a1c880e07441f3b887214bee62afe
size 825

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:503c869d30bbccd4e2894f79c70c3b7f8fed159d04a959197fd00cceb34441a5
size 675

@ -206,12 +206,37 @@ void WifiUI::refresh() {
int i = 0;
for (Network &network : wifi->seen_networks) {
QHBoxLayout *hlayout = new QHBoxLayout;
hlayout->addSpacing(50);
QLabel *ssid_label = new QLabel(QString::fromUtf8(network.ssid));
ssid_label->setStyleSheet("font-size: 55px;");
hlayout->addWidget(ssid_label, 1, Qt::AlignLeft);
if (wifi->isKnownNetwork(network.ssid)) {
QPushButton *forgetBtn = new QPushButton();
QPixmap pix("../assets/offroad/icon_close.svg");
forgetBtn->setIcon(QIcon(pix));
forgetBtn->setIconSize(QSize(35, 35));
forgetBtn->setStyleSheet("QPushButton { background-color: #E22C2C; }");
forgetBtn->setFixedSize(100, 90);
QObject::connect(forgetBtn, &QPushButton::released, [=]() {
if (ConfirmationDialog::confirm("Are you sure you want to forget " + QString::fromUtf8(network.ssid) + "?", this)) {
wifi->forgetConnection(network.ssid);
}
});
hlayout->addWidget(forgetBtn, 0, Qt::AlignRight);
} else if (network.security_type == SecurityType::WPA) {
QLabel *lockIcon = new QLabel();
QPixmap pix("../assets/offroad/icon_lock_closed.svg");
lockIcon->setPixmap(pix.scaledToWidth(35, Qt::SmoothTransformation));
lockIcon->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed));
lockIcon->setStyleSheet("QLabel { margin: 0px; padding-left: 15px; padding-right: 15px; }");
hlayout->addWidget(lockIcon, 0, Qt::AlignRight);
}
// strength indicator
unsigned int strength_scale = network.strength / 17;
hlayout->addWidget(new NetworkStrengthWidget(strength_scale), 0, Qt::AlignRight);

@ -213,7 +213,7 @@ void WifiManager::connect(const Network &n, const QString &password) {
void WifiManager::connect(const Network &n, const QString &username, const QString &password) {
connecting_to_network = n.ssid;
// disconnect();
forgetNetwork(n.ssid); //Clear all connections that may already exist to the network we are connecting
forgetConnection(n.ssid); //Clear all connections that may already exist to the network we are connecting
connect(n.ssid, username, password, n.security_type);
}
@ -283,7 +283,7 @@ bool WifiManager::isKnownNetwork(const QString &ssid) {
return !pathFromSsid(ssid).path().isEmpty();
}
void WifiManager::forgetNetwork(const QString &ssid) {
void WifiManager::forgetConnection(const QString &ssid) {
QDBusObjectPath path = pathFromSsid(ssid);
if (!path.path().isEmpty()) {
QDBusInterface nm2(nm_service, path.path(), nm_settings_conn_iface, bus);
@ -480,7 +480,7 @@ bool WifiManager::tetheringEnabled() {
void WifiManager::changeTetheringPassword(const QString &newPassword) {
tetheringPassword = newPassword;
if (isKnownNetwork(tethering_ssid.toUtf8())) {
forgetNetwork(tethering_ssid.toUtf8());
forgetConnection(tethering_ssid.toUtf8());
}
addTetheringConnection();
}

@ -35,6 +35,7 @@ public:
QString ipv4_address;
void refreshNetworks();
void forgetConnection(const QString &ssid);
bool isKnownNetwork(const QString &ssid);
void connect(const Network &ssid);
@ -66,7 +67,6 @@ private:
void connect(const QByteArray &ssid, const QString &username, const QString &password, SecurityType security_type);
QString get_active_ap();
void deactivateConnection(const QString &ssid);
void forgetNetwork(const QString &ssid);
QVector<QDBusObjectPath> get_active_connections();
uint get_wifi_device_state();
QByteArray get_property(const QString &network_path, const QString &property);

Loading…
Cancel
Save