Group :: Desktop gráfico/Outros
RPM: deepin-dock
Main Changelog Spec Patches Sources Download Gear Bugs e FR Repocop
Patch: 0001-fix-DBus-can-not-be-notified.patch
Download
Download
From 9fd9fdac25054ca09a827a745f1e3e93b1902e04 Mon Sep 17 00:00:00 2001
From: 范朋程 <fanpengcheng@uniontech.com>
Date: Wed, 7 Dec 2022 13:14:02 +0800
Subject: [PATCH] fix: 修复DBus属性变化时不能及时通知的问题
qt可能不支持属性变化时自动通知,采用手动触发的方式实现
Log: 修复DBus属性变化时不能及时通知的问题
Influence: DBus属性变化通知,对功能暂无实际影响
Change-Id: I72cffae2dcfe8f29bed40ff15c2bbcf699848975
---
frame/dbus/dbusdockadaptors.cpp | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/frame/dbus/dbusdockadaptors.cpp b/frame/dbus/dbusdockadaptors.cpp
index 70b1153..abce110 100644
--- a/frame/dbus/dbusdockadaptors.cpp
+++ b/frame/dbus/dbusdockadaptors.cpp
@@ -17,4 +17,14 @@ 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);
});
--
libgit2 1.3.2