diff --git a/applet/contents/ui/ConnectionItem.qml b/applet/contents/ui/ConnectionItem.qml --- a/applet/contents/ui/ConnectionItem.qml +++ b/applet/contents/ui/ConnectionItem.qml @@ -33,9 +33,9 @@ property bool activating: ConnectionState == PlasmaNM.Enums.Activating property int baseHeight: Math.max(units.iconSizes.medium, connectionNameLabel.height + connectionStatusLabel.height) + Math.round(units.gridUnit / 2) property bool expanded: visibleDetails || visiblePasswordDialog - property bool predictableWirelessPassword: !Uuid && Type == PlasmaNM.Enums.Wireless && - (SecurityType == PlasmaNM.Enums.StaticWep || SecurityType == PlasmaNM.Enums.WpaPsk || - SecurityType == PlasmaNM.Enums.Wpa2Psk) + property bool passwordIsStatic: (SecurityType == PlasmaNM.Enums.StaticWep || SecurityType == PlasmaNM.Enums.WpaPsk || + SecurityType == PlasmaNM.Enums.Wpa2Psk || SecurityType == PlasmaNM.Enums.SAE) + property bool predictableWirelessPassword: !Uuid && Type == PlasmaNM.Enums.Wireless && passwordIsStatic property bool showSpeed: plasmoid.expanded && ConnectionState == PlasmaNM.Enums.Activated && (Type == PlasmaNM.Enums.Wired || @@ -164,8 +164,7 @@ function prepare() { showQRMenuItem.visible = false; - if (Uuid && Type === PlasmaNM.Enums.Wireless && - (SecurityType === PlasmaNM.Enums.StaticWep || SecurityType === PlasmaNM.Enums.WpaPsk || SecurityType === PlasmaNM.Enums.Wpa2Psk)) { + if (Uuid && Type === PlasmaNM.Enums.Wireless && passwordIsStatic) { if (!showQRComponent) { showQRComponent = Qt.createComponent("ShowQR.qml", this); if (showQRComponent.status === Component.Error) { diff --git a/libs/declarative/enums.h b/libs/declarative/enums.h --- a/libs/declarative/enums.h +++ b/libs/declarative/enums.h @@ -69,7 +69,8 @@ WpaPsk, WpaEap, Wpa2Psk, - Wpa2Eap + Wpa2Eap, + SAE }; }; diff --git a/libs/handler.cpp b/libs/handler.cpp --- a/libs/handler.cpp +++ b/libs/handler.cpp @@ -194,6 +194,9 @@ case NetworkManager::Wpa2Psk: ret += "T:WPA;"; break; + case NetworkManager::SAE: + ret += "T:SAE;"; + break; default: case NetworkManager::DynamicWep: case NetworkManager::WpaEap: @@ -217,6 +220,7 @@ break; case NetworkManager::WpaPsk: case NetworkManager::Wpa2Psk: + case NetworkManager::SAE: pass = secret["psk"].toString(); break; default: diff --git a/libs/uiutils.cpp b/libs/uiutils.cpp --- a/libs/uiutils.cpp +++ b/libs/uiutils.cpp @@ -615,6 +615,9 @@ case NetworkManager::Wpa2Eap: tip = i18nc("@label WPA2-EAP security", "WPA2-EAP"); break; + case NetworkManager::SAE: + tip = i18nc("@label WPA3-SAE security", "WPA3-SAE"); + break; default: tip = i18nc("@label unknown security", "Unknown security type"); break;