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
pull/21340/head
sshane 2021-06-18 21:14:26 -07:00 committed by GitHub
parent 4a22dd6dfb
commit 290e9fb9f6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 38 additions and 5 deletions

View File

@ -0,0 +1,4 @@
<svg width="256" height="256" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M10.9287 42.0751L0.702559 52.3708C0.314208 52.7618 0.315377 53.3933 0.705173 53.7828L10.2218 63.2936C10.6123 63.6838 11.2451 63.6838 11.6356 63.2936L63.2922 11.6698C63.683 11.2792 63.683 10.6457 63.2922 10.2551L53.7374 0.706431C53.3469 0.316207 52.7141 0.316207 52.3237 0.706431L10.9287 42.0751Z" fill="white"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M10.9287 21.925L0.702563 11.6292C0.314213 11.2382 0.315382 10.6067 0.705178 10.2172L10.2218 0.706445C10.6123 0.316216 11.2451 0.316213 11.6356 0.706441L63.2922 52.3302C63.683 52.7208 63.683 53.3543 63.2922 53.7449L53.7374 63.2936C53.3469 63.6838 52.7141 63.6838 52.3237 63.2936L10.9287 21.925Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 825 B

View File

@ -0,0 +1,4 @@
<svg width="246" height="342" viewBox="0 0 41 57" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M36.106 22.9503L35.488 22.9378L35.4817 15.2271C35.4755 6.82748 28.665 -0.00625943 20.294 4.30252e-06C11.923 0.00626804 5.11253 6.84 5.11877 15.2397L5.13125 22.9503H4.58192C1.70419 22.9566 -0.00622535 25.2992 1.7028e-05 28.1868V51.7698C1.7028e-05 54.6574 1.71667 57 4.59441 57L37.0423 56.9812C39.92 56.9812 41.0062 54.6386 41 51.751V28.1618C41 24.7418 39.327 22.9378 36.106 22.9503ZM10.7244 22.9503L10.7119 15.2397C10.7119 9.93429 15.0067 5.61858 20.294 5.61231C25.5813 5.61231 29.8823 9.92803 29.8823 15.2271L29.8948 22.9378L10.7244 22.9503Z" fill="#FFFFFF"/>
</svg>

After

Width:  |  Height:  |  Size: 675 B

View File

@ -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);

View File

@ -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();
}

View File

@ -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);