1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-01-24 21:42:51 -05:00

Compare commits

...

2 Commits

Author SHA1 Message Date
bbedward
1b7dcf56a8 bump VERSION 2026-01-14 08:00:15 -05:00
bbedward
502bb88e92 modals: fix wifi passowrd, polkit, and VPN import 2026-01-14 08:00:05 -05:00
5 changed files with 76 additions and 26 deletions

View File

@@ -203,6 +203,8 @@ Item {
Component.onCompleted: { Component.onCompleted: {
dockRecreateDebounce.start(); dockRecreateDebounce.start();
// Force PolkitService singleton to initialize
PolkitService.polkitAvailable;
} }
Connections { Connections {
@@ -315,19 +317,44 @@ Item {
} }
} }
WifiPasswordModal { LazyLoader {
id: wifiPasswordModal id: wifiPasswordModalLoader
active: false
Component.onCompleted: { Component.onCompleted: {
PopoutService.wifiPasswordModal = wifiPasswordModal; PopoutService.wifiPasswordModalLoader = wifiPasswordModalLoader;
}
WifiPasswordModal {
id: wifiPasswordModalItem
Component.onCompleted: {
PopoutService.wifiPasswordModal = wifiPasswordModalItem;
}
} }
} }
PolkitAuthModal { LazyLoader {
id: polkitAuthModal id: polkitAuthModalLoader
active: false
Component.onCompleted: { PolkitAuthModal {
PopoutService.polkitAuthModal = polkitAuthModal; id: polkitAuthModal
Component.onCompleted: {
PopoutService.polkitAuthModal = polkitAuthModal;
}
}
}
Connections {
target: PolkitService.agent
enabled: PolkitService.polkitAvailable
function onAuthenticationRequestStarted() {
polkitAuthModalLoader.active = true;
if (polkitAuthModalLoader.item)
polkitAuthModalLoader.item.show();
} }
} }
@@ -349,17 +376,21 @@ Item {
const now = Date.now(); const now = Date.now();
const timeSinceLastPrompt = now - lastCredentialsTime; const timeSinceLastPrompt = now - lastCredentialsTime;
if (wifiPasswordModal.visible && timeSinceLastPrompt < 1000) { wifiPasswordModalLoader.active = true;
if (!wifiPasswordModalLoader.item)
return;
if (wifiPasswordModalLoader.item.visible && timeSinceLastPrompt < 1000) {
NetworkService.cancelCredentials(lastCredentialsToken); NetworkService.cancelCredentials(lastCredentialsToken);
lastCredentialsToken = token; lastCredentialsToken = token;
lastCredentialsTime = now; lastCredentialsTime = now;
wifiPasswordModal.showFromPrompt(token, ssid, setting, fields, hints, reason, connType, connName, vpnService, fieldsInfo); wifiPasswordModalLoader.item.showFromPrompt(token, ssid, setting, fields, hints, reason, connType, connName, vpnService, fieldsInfo);
return; return;
} }
lastCredentialsToken = token; lastCredentialsToken = token;
lastCredentialsTime = now; lastCredentialsTime = now;
wifiPasswordModal.showFromPrompt(token, ssid, setting, fields, hints, reason, connType, connName, vpnService, fieldsInfo); wifiPasswordModalLoader.item.showFromPrompt(token, ssid, setting, fields, hints, reason, connType, connName, vpnService, fieldsInfo);
} }
} }

View File

@@ -687,8 +687,8 @@ Rectangle {
if (modelData.secured && !modelData.saved) { if (modelData.secured && !modelData.saved) {
if (DMSService.apiVersion >= 7) { if (DMSService.apiVersion >= 7) {
NetworkService.connectToWifi(modelData.ssid); NetworkService.connectToWifi(modelData.ssid);
} else if (PopoutService.wifiPasswordModal) { } else {
PopoutService.wifiPasswordModal.show(modelData.ssid); PopoutService.showWifiPasswordModal(modelData.ssid);
} }
} else { } else {
NetworkService.connectToWifi(modelData.ssid); NetworkService.connectToWifi(modelData.ssid);
@@ -749,8 +749,8 @@ Rectangle {
if (networkContextMenu.currentSecured && !networkContextMenu.currentSaved) { if (networkContextMenu.currentSecured && !networkContextMenu.currentSaved) {
if (DMSService.apiVersion >= 7) { if (DMSService.apiVersion >= 7) {
NetworkService.connectToWifi(networkContextMenu.currentSSID); NetworkService.connectToWifi(networkContextMenu.currentSSID);
} else if (PopoutService.wifiPasswordModal) { } else {
PopoutService.wifiPasswordModal.show(networkContextMenu.currentSSID); PopoutService.showWifiPasswordModal(networkContextMenu.currentSSID);
} }
} else { } else {
NetworkService.connectToWifi(networkContextMenu.currentSSID); NetworkService.connectToWifi(networkContextMenu.currentSSID);

View File

@@ -2,6 +2,7 @@ pragma ComponentBehavior: Bound
import QtQuick import QtQuick
import QtQuick.Layouts import QtQuick.Layouts
import Quickshell
import qs.Common import qs.Common
import qs.Modals.Common import qs.Modals.Common
import qs.Modals.FileBrowser import qs.Modals.FileBrowser
@@ -23,15 +24,25 @@ Item {
NetworkService.removeRef(); NetworkService.removeRef();
} }
FileBrowserModal { function openVpnFileBrowser() {
id: vpnFileBrowser vpnFileBrowserLoader.active = true;
browserTitle: I18n.tr("Import VPN") if (vpnFileBrowserLoader.item)
browserIcon: "vpn_key" vpnFileBrowserLoader.item.open();
browserType: "vpn" }
fileExtensions: VPNService.getFileFilter()
onFileSelected: path => { LazyLoader {
VPNService.importVpn(path.replace("file://", "")); id: vpnFileBrowserLoader
active: false
FileBrowserModal {
browserTitle: I18n.tr("Import VPN")
browserIcon: "vpn_key"
browserType: "vpn"
fileExtensions: VPNService.getFileFilter()
onFileSelected: path => {
VPNService.importVpn(path.replace("file://", ""));
}
} }
} }
@@ -1520,7 +1531,7 @@ Item {
hoverEnabled: true hoverEnabled: true
cursorShape: VPNService.importing ? Qt.BusyCursor : Qt.PointingHandCursor cursorShape: VPNService.importing ? Qt.BusyCursor : Qt.PointingHandCursor
enabled: !VPNService.importing enabled: !VPNService.importing
onClicked: vpnFileBrowser.open() onClicked: networkTab.openVpnFileBrowser()
} }
} }

View File

@@ -27,7 +27,9 @@ Singleton {
property var colorPickerModal: null property var colorPickerModal: null
property var notificationModal: null property var notificationModal: null
property var wifiPasswordModal: null property var wifiPasswordModal: null
property var wifiPasswordModalLoader: null
property var polkitAuthModal: null property var polkitAuthModal: null
property var polkitAuthModalLoader: null
property var bluetoothPairingModal: null property var bluetoothPairingModal: null
property var networkInfoModal: null property var networkInfoModal: null
@@ -416,11 +418,17 @@ Singleton {
} }
function showWifiPasswordModal(ssid) { function showWifiPasswordModal(ssid) {
wifiPasswordModal?.show(ssid); if (wifiPasswordModalLoader)
wifiPasswordModalLoader.active = true;
if (wifiPasswordModal)
wifiPasswordModal.show(ssid);
} }
function showHiddenNetworkModal() { function showHiddenNetworkModal() {
wifiPasswordModal?.showHidden(); if (wifiPasswordModalLoader)
wifiPasswordModalLoader.active = true;
if (wifiPasswordModal)
wifiPasswordModal.showHidden();
} }
function hideWifiPasswordModal() { function hideWifiPasswordModal() {

View File

@@ -1 +1 @@
v1.2.1 v1.2.2