From cff29d68a39383d136f8c7106eae6aad17f371d0 Mon Sep 17 00:00:00 2001 From: reionwong Date: Wed, 3 Nov 2021 18:04:11 +0800 Subject: [PATCH] WIP: Add bluetooth --- CMakeLists.txt | 4 + src/application.cpp | 3 + src/bluetooth/bluetoothagent.cpp | 179 +++++++++++++++++++++++++++++ src/bluetooth/bluetoothagent.h | 43 +++++++ src/bluetooth/bluetoothmanager.cpp | 70 +++++++++++ src/bluetooth/bluetoothmanager.h | 29 +++++ src/qml/Bluetooth/Main.qml | 38 ++++-- src/qml/IconCheckBox.qml | 7 -- src/qml/SideBar.qml | 14 ++- 9 files changed, 362 insertions(+), 25 deletions(-) create mode 100644 src/bluetooth/bluetoothagent.cpp create mode 100644 src/bluetooth/bluetoothagent.h create mode 100644 src/bluetooth/bluetoothmanager.cpp create mode 100644 src/bluetooth/bluetoothmanager.h diff --git a/CMakeLists.txt b/CMakeLists.txt index 615a832..031122c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,6 +17,7 @@ find_package(X11 REQUIRED) find_package(Freetype REQUIRED) find_package(PkgConfig REQUIRED) find_package(Libcrypt REQUIRED) +find_package(KF5BluezQt REQUIRED) # find_package(QApt REQUIRED) find_package(KF5NetworkManagerQt REQUIRED) @@ -53,6 +54,8 @@ set(SRCS src/datetime/timezonemap.cpp src/datetime/timedated_interface.cpp src/touchpad.cpp + src/bluetooth/bluetoothmanager.cpp + src/bluetooth/bluetoothagent.cpp # src/update/updatemodel.cpp ) @@ -81,6 +84,7 @@ target_link_libraries(${PROJECT_NAME} KF5::NetworkManagerQt KF5::ModemManagerQt + KF5::BluezQt PkgConfig::FontConfig ${FREETYPE_LIBRARIES} diff --git a/src/application.cpp b/src/application.cpp index 6a6506e..a9d9c5a 100644 --- a/src/application.cpp +++ b/src/application.cpp @@ -25,6 +25,8 @@ #include "datetime/time.h" #include "datetime/timezonemap.h" +#include "bluetooth/bluetoothmanager.h" + static QObject *passwordSingleton(QQmlEngine *engine, QJSEngine *scriptEngine) { Q_UNUSED(engine); @@ -77,6 +79,7 @@ Application::Application(int &argc, char **argv) qmlRegisterType