将FloatButtonManager与ViewLocalSettings解耦
FloatButtonManager使用由VirtualKeyboardEntryManager定义的 ViewLocalSettings对象,不再直接定义ViewLocalSettings对象
This commit is contained in:
parent
2ec61d32e5
commit
f88fb42fae
|
@ -35,9 +35,11 @@ const QString floatButtonEnabledKey = "floatButtonEnabled";
|
|||
|
||||
FloatButtonManager::FloatButtonManager(
|
||||
const VirtualKeyboardManager &virtualKeyboardManager,
|
||||
const FcitxVirtualKeyboardService &fcitxVirtualKeyboardService)
|
||||
const FcitxVirtualKeyboardService &fcitxVirtualKeyboardService,
|
||||
LocalSettings &floatButtonSettings)
|
||||
: virtualKeyboardManager_(virtualKeyboardManager),
|
||||
fcitxVirtualKeyboardService_(fcitxVirtualKeyboardService) {
|
||||
fcitxVirtualKeyboardService_(fcitxVirtualKeyboardService),
|
||||
floatButtonSettings_(floatButtonSettings) {
|
||||
initGeometryManager();
|
||||
|
||||
initInternalSignalConnections();
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
#include <QObject>
|
||||
#include <QPushButton>
|
||||
|
||||
#include "localsettings/viewlocalsettings.h"
|
||||
#include "localsettings/localsettings.h"
|
||||
#include "virtualkeyboard/virtualkeyboardmanager.h"
|
||||
#include "virtualkeyboardentry/fcitxvirtualkeyboardservice.h"
|
||||
#include "virtualkeyboardentry/floatbutton.h"
|
||||
|
@ -35,7 +35,8 @@ class FloatButtonManager : public QObject {
|
|||
public:
|
||||
FloatButtonManager(
|
||||
const VirtualKeyboardManager &virtualKeyboardManager,
|
||||
const FcitxVirtualKeyboardService &fcitxVirtualKeyboardService);
|
||||
const FcitxVirtualKeyboardService &fcitxVirtualKeyboardService,
|
||||
LocalSettings &floatButtonSettings);
|
||||
~FloatButtonManager() override = default;
|
||||
|
||||
void loadFloatButtonAvailability();
|
||||
|
@ -73,11 +74,11 @@ private:
|
|||
private:
|
||||
bool floatButtonEnabled_ = true;
|
||||
|
||||
ViewLocalSettings floatButtonSettings_{"kylinsoft", "kylin float button"};
|
||||
|
||||
const VirtualKeyboardManager &virtualKeyboardManager_;
|
||||
const FcitxVirtualKeyboardService &fcitxVirtualKeyboardService_;
|
||||
|
||||
LocalSettings &floatButtonSettings_;
|
||||
|
||||
std::unique_ptr<FloatButton> floatButton_ = nullptr;
|
||||
|
||||
std::unique_ptr<FloatGeometryManager> geometryManager_ = nullptr;
|
||||
|
|
|
@ -28,7 +28,8 @@ VirtualKeyboardEntryManager::VirtualKeyboardEntryManager(
|
|||
const FcitxVirtualKeyboardService &fcitxVirtualKeyboardService)
|
||||
: virtualKeyboardManager_(virtualKeyboardManager),
|
||||
floatButtonManager_(new FloatButtonManager(virtualKeyboardManager,
|
||||
fcitxVirtualKeyboardService)) {
|
||||
fcitxVirtualKeyboardService,
|
||||
floatButtonSettings_)) {
|
||||
initTrayIcon(fcitxVirtualKeyboardService);
|
||||
|
||||
initFloatButtonContextMenuAndAction();
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
#include <QObject>
|
||||
|
||||
#include "ipc/fcitxvirtualkeyboardserviceproxy.h"
|
||||
#include "localsettings/viewlocalsettings.h"
|
||||
#include "virtualkeyboard/virtualkeyboardmanager.h"
|
||||
#include "virtualkeyboardentry/floatbuttonmanager.h"
|
||||
#include "virtualkeyboardentry/virtualkeyboardtrayicon.h"
|
||||
|
@ -54,6 +55,7 @@ private:
|
|||
private:
|
||||
VirtualKeyboardManager &virtualKeyboardManager_;
|
||||
|
||||
ViewLocalSettings floatButtonSettings_{"kylinsoft", "kylin float button"};
|
||||
std::unique_ptr<FloatButtonManager> floatButtonManager_ = nullptr;
|
||||
|
||||
std::unique_ptr<VirtualKeyboardTrayIcon> trayIconEntry_ = nullptr;
|
||||
|
|
Loading…
Reference in New Issue