Compare commits
8 commits
daab2379e4
...
d5a1ea2aca
| Author | SHA1 | Date | |
|---|---|---|---|
| d5a1ea2aca | |||
| 5b9fed4707 | |||
| 5183b4db85 | |||
| a444faa231 | |||
| 896d9453c7 | |||
| 6249596726 | |||
| 1d49703464 | |||
| e5e1d222a8 |
2 changed files with 7 additions and 2 deletions
|
|
@ -12,6 +12,7 @@ PluginComponent {
|
|||
|
||||
property bool isConnected: false
|
||||
property string tailscaleIP: ""
|
||||
property string _pendingToggleAction: ""
|
||||
property string currentExitNode: ""
|
||||
property var peers: []
|
||||
property string cachedClipboardTool: ""
|
||||
|
|
@ -41,10 +42,11 @@ PluginComponent {
|
|||
|
||||
onExited: (code, status) => {
|
||||
if (code !== 0) {
|
||||
var action = root.isConnected ? "disconnect" : "connect"
|
||||
var action = root._pendingToggleAction || (root.isConnected ? "disconnect" : "connect")
|
||||
var detail = toggleProcess.stderr.text.trim().slice(0, 120)
|
||||
ToastService.showError("tailscalectl", TailscaleLib.errorMessage(action) + (detail ? " — " + detail : ""))
|
||||
}
|
||||
root._pendingToggleAction = ""
|
||||
statusCheck.running = true
|
||||
}
|
||||
}
|
||||
|
|
@ -112,11 +114,14 @@ PluginComponent {
|
|||
}
|
||||
|
||||
function toggleTailscale() {
|
||||
if (toggleProcess.running) return
|
||||
root._pendingToggleAction = root.isConnected ? "disconnect" : "connect"
|
||||
toggleProcess.command = TailscaleLib.buildToggleCommand(root.isConnected)
|
||||
toggleProcess.running = true
|
||||
}
|
||||
|
||||
function setExitNode(hostname) {
|
||||
if (exitNodeProcess.running) return
|
||||
exitNodeProcess.command = TailscaleLib.makeExitNodeCommand(hostname)
|
||||
exitNodeProcess.running = true
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,5 +7,5 @@
|
|||
"icon": "vpn_key",
|
||||
"type": "widget",
|
||||
"component": "./TailscaleWidget.qml",
|
||||
"permissions": ["settings_read", "settings_write", "process"]
|
||||
"permissions": ["process"]
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue