1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2025-12-08 06:25:37 -05:00

bluetooth: integrate with DMS API v9 - Supports proper pairing with an agent & pin, passcode, etc.

This commit is contained in:
bbedward
2025-10-23 11:54:22 -04:00
parent 61d68b1f76
commit 1311da7258
6 changed files with 482 additions and 14 deletions

View File

@@ -42,6 +42,7 @@ Singleton {
signal loginctlEvent(var event)
signal capabilitiesReceived()
signal credentialsRequest(var data)
signal bluetoothPairingRequest(var data)
Component.onCompleted: {
if (socketPath && socketPath.length > 0) {
@@ -217,7 +218,10 @@ Singleton {
function sendSubscribeRequest() {
const request = {
"method": "subscribe"
"method": "subscribe",
"params": {
"services": ["bluetooth", "bluetooth.pairing"]
}
}
if (verboseLogs) {
@@ -270,6 +274,8 @@ Singleton {
} else {
loginctlStateUpdate(data)
}
} else if (service === "bluetooth.pairing") {
bluetoothPairingRequest(data)
}
}
@@ -408,4 +414,48 @@ Singleton {
function unlockSession(callback) {
sendRequest("loginctl.unlock", null, callback)
}
function bluetoothPair(devicePath, callback) {
sendRequest("bluetooth.pair", {
"device": devicePath
}, callback)
}
function bluetoothConnect(devicePath, callback) {
sendRequest("bluetooth.connect", {
"device": devicePath
}, callback)
}
function bluetoothDisconnect(devicePath, callback) {
sendRequest("bluetooth.disconnect", {
"device": devicePath
}, callback)
}
function bluetoothRemove(devicePath, callback) {
sendRequest("bluetooth.remove", {
"device": devicePath
}, callback)
}
function bluetoothTrust(devicePath, callback) {
sendRequest("bluetooth.trust", {
"device": devicePath
}, callback)
}
function bluetoothSubmitPairing(token, secrets, accept, callback) {
sendRequest("bluetooth.pairing.submit", {
"token": token,
"secrets": secrets,
"accept": accept
}, callback)
}
function bluetoothCancelPairing(token, callback) {
sendRequest("bluetooth.pairing.cancel", {
"token": token
}, callback)
}
}