fix: 修复DBus属性变化时不能及时通知的问题

qt可能不支持属性变化时自动通知,采用手动触发的方式实现

Log: 修复DBus属性变化时不能及时通知的问题
Influence: DBus属性变化通知,对功能暂无实际影响
Change-Id: I72cffae2dcfe8f29bed40ff15c2bbcf699848975
This commit is contained in:
范朋程 2022-12-07 13:14:02 +08:00 committed by deepin-bot[bot]
parent 76a77c7479
commit 9fd9fdac25

View File

@ -16,6 +16,16 @@ DBusDockAdaptors::DBusDockAdaptors(MainWindow* parent)
{
connect(parent, &MainWindow::panelGeometryChanged, this, [=] {
emit DBusDockAdaptors::geometryChanged(geometry());
// 手动触发PropertiesChanged信号可能是qt不支持属性自动触发
QDBusMessage msg = QDBusMessage::createSignal("/com/deepin/dde/Dock", "org.freedesktop.DBus.Properties", "PropertiesChanged");
QList<QVariant> arguments;
arguments.push_back("com.deepin.dde.Dock");
QVariantMap changedProps;
changedProps.insert("geometry", geometry());
arguments.push_back(changedProps);
msg.setArguments(arguments);
QDBusConnection::connectToBus(QDBusConnection::SessionBus, "com.deepin.dde.Dock").send(msg);
});
if (m_gsettings) {