fix(bluetooth): add forget button and improve connection reliability#86
fix(bluetooth): add forget button and improve connection reliability#86Chirag8405 wants to merge 2 commits intoAxOS-project:mainfrom
Conversation
Chirag8405
commented
Nov 23, 2025
- Add unpair/forget functionality for paired devices
- Fix connection issues with already paired devices
- Improve device state tracking and refresh capability
- Add unpair/forget functionality for paired devices - Fix connection issues with already paired devices - Improve device state tracking and refresh capability
LeVraiArdox
left a comment
There was a problem hiding this comment.
Good overall, just replace the commands with cpp modules like you did with the Wifi.
Also, can you send a screenshot of what this new layout looks like ? Thanks
|
|
||
| Process { | ||
| id: pairedDevicesFetcher | ||
| command: ["bluetoothctl", "devices", "Paired"] |
There was a problem hiding this comment.
Would be cool to use a module from the bluetooth.cpp/hpp plugins
|
|
||
| Quickshell.execDetached([ | ||
| "bash", "-c", | ||
| `bluetoothctl remove ${address}` |
There was a problem hiding this comment.
Same for here. Let's prevent commands execution
There was a problem hiding this comment.
Yes, working on it. Was busy with college exams
| if (pairedDevices.includes(address)) { | ||
| Quickshell.execDetached([ | ||
| "bash", "-c", | ||
| `bluetoothctl connect ${address}` |
|
What is this about ? |
| Timer { | ||
| id: refreshTimer | ||
| interval: 8000 | ||
| onTriggered: BluetoothService.refreshPairedDevices() | ||
| } |
There was a problem hiding this comment.
Can you explain the idea of using a timer plz ?
| m_monitorProcess = new QProcess(this); | ||
| m_monitorProcess->setProcessChannelMode(QProcess::MergedChannels); | ||
| connect(m_monitorProcess, &QProcess::readyReadStandardOutput, this, &BluetoothService::parseMonitorOutput); | ||
| m_monitorProcess->start("bluetoothctl"); |
There was a problem hiding this comment.
The point of using CPP was to use the QT bluetooth module or bluez. It should be a native component and not a command call
