mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 17:33:05 +00:00
fix: 社区版加载键盘布局插件
1、修改键盘布局服务的接口 2、Indicator读取布局插件在所有的插件加载完成后进行,否则键盘布局插件对应的服务还未启动 Log: 加载键盘布局插件 Influence: 社区版-观察键盘布局插件 Task: https://pms.uniontech.com/task-view-225011.html Change-Id: I924bd2fa0a8b189af7825546e712482d836ed276
This commit is contained in:
parent
5e4c288cea
commit
bbc0ec5ea5
@ -27,7 +27,9 @@ QuickSettingController::QuickSettingController(QObject *parent)
|
|||||||
: AbstractPluginsController(parent)
|
: AbstractPluginsController(parent)
|
||||||
{
|
{
|
||||||
// 加载本地插件
|
// 加载本地插件
|
||||||
ProxyPluginController::instance(PluginType::QuickPlugin)->addProxyInterface(this);
|
ProxyPluginController *contoller = ProxyPluginController::instance(PluginType::QuickPlugin);
|
||||||
|
contoller->addProxyInterface(this);
|
||||||
|
connect(contoller, &ProxyPluginController::pluginLoaderFinished, this, &QuickSettingController::pluginLoaderFinished);
|
||||||
}
|
}
|
||||||
|
|
||||||
QuickSettingController::~QuickSettingController()
|
QuickSettingController::~QuickSettingController()
|
||||||
|
@ -56,6 +56,12 @@ TrayMonitor::TrayMonitor(QObject *parent)
|
|||||||
Q_EMIT systemTrayRemoved(itemInter);
|
Q_EMIT systemTrayRemoved(itemInter);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
//-------------------------------Tray Indicator---------------------------------------------//
|
||||||
|
// Indicators服务是集成在插件中的,因此需要在所有的插件加载完成后再加载Indicators服务
|
||||||
|
connect(quickController, &QuickSettingController::pluginLoaderFinished, this, [ this ] {
|
||||||
|
startLoadIndicators();
|
||||||
|
});
|
||||||
|
|
||||||
QMetaObject::invokeMethod(this, [ = ] {
|
QMetaObject::invokeMethod(this, [ = ] {
|
||||||
QList<PluginsItemInterface *> trayPlugins = quickController->pluginItems(QuickSettingController::PluginAttribute::Tray);
|
QList<PluginsItemInterface *> trayPlugins = quickController->pluginItems(QuickSettingController::PluginAttribute::Tray);
|
||||||
for (PluginsItemInterface *plugin : trayPlugins) {
|
for (PluginsItemInterface *plugin : trayPlugins) {
|
||||||
@ -63,9 +69,6 @@ TrayMonitor::TrayMonitor(QObject *parent)
|
|||||||
Q_EMIT systemTrayAdded(plugin);
|
Q_EMIT systemTrayAdded(plugin);
|
||||||
}
|
}
|
||||||
}, Qt::QueuedConnection);
|
}, Qt::QueuedConnection);
|
||||||
|
|
||||||
//-------------------------------Tray Indicator---------------------------------------------//
|
|
||||||
QMetaObject::invokeMethod(this, "startLoadIndicators", Qt::QueuedConnection);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QList<quint32> TrayMonitor::trayWinIds() const
|
QList<quint32> TrayMonitor::trayWinIds() const
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
#include <QtDBus/QtDBus>
|
#include <QtDBus/QtDBus>
|
||||||
#include "org_deepin_dde_inputdevice1_keyboard.h"
|
#include "org_deepin_dde_inputdevice1_keyboard.h"
|
||||||
|
|
||||||
using Keyboard = org::deepin::dde::inputdevice1::Keyboard1;
|
using Keyboard = org::deepin::dde::inputdevice1::Keyboard;
|
||||||
class QGSettings;
|
class QGSettings;
|
||||||
|
|
||||||
class DBusAdaptors : public QDBusAbstractAdaptor
|
class DBusAdaptors : public QDBusAbstractAdaptor
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<node>
|
<node>
|
||||||
<interface name="org.deepin.dde.InputDevice1.Keyboard1">
|
<interface name="org.deepin.dde.InputDevice1.Keyboard">
|
||||||
<method name="AddLayoutOption">
|
<method name="AddLayoutOption">
|
||||||
<arg type="s" direction="in"></arg>
|
<arg type="s" direction="in"></arg>
|
||||||
</method>
|
</method>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user