1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-06-18 09:05:24 -04:00

fix(network): keep Wi-Fi when password prompt is canceled (#2651)

This commit is contained in:
jbwfu
2026-06-17 00:52:25 +08:00
committed by GitHub
parent 90f8ce5035
commit 2f39f248fc
7 changed files with 101 additions and 77 deletions
@@ -0,0 +1,47 @@
pragma Singleton
pragma ComponentBehavior: Bound
import Quickshell
import qs.Services
Singleton {
id: root
function connectToNetwork(network, options) {
if (!network)
return;
const actionOptions = options || {};
const ssid = network.ssid || "";
if (!ssid)
return;
const connected = actionOptions.connected ?? network.connected ?? (ssid === NetworkService.currentWifiSSID);
if (connected) {
if (actionOptions.disconnectWhenConnected ?? false)
NetworkService.disconnectWifi();
return;
}
if (shouldPromptForCredentials(network)) {
PopoutService.showWifiPasswordModal(ssid);
return;
}
NetworkService.connectToWifi(ssid);
}
function connectToNetworkFromDetails(ssid, secured, saved, enterprise, connected, options) {
connectToNetwork({
ssid: ssid,
secured: secured,
saved: saved,
enterprise: enterprise,
connected: connected
}, options);
}
function shouldPromptForCredentials(network) {
return (network.secured ?? false) && !(network.saved ?? false);
}
}