<div dir="ltr"><div dir="ltr">Hi all,<div><br></div><div>I'm writing a Kwin script to automatically set an unread count badge to an app's launcher icon by parsing its title.</div><div><br></div><div>I'm stuck at the part where I need to call an DBus API, but always get "Received D-Bus message is error". I appreciate any help to show me where I got it wrong, or callDBus just doesn't support passing a{sv} argument yet.</div><div><br></div><div>This is the method that I need to call: <a href="https://wiki.ubuntu.com/Unity/LauncherAPI#Low_level_DBus_API:_com.canonical.Unity.LauncherEntry" target="_blank">https://wiki.ubuntu.com/Unity/LauncherAPI#Low_level_DBus_API:_com.canonical.Unity.LauncherEntry</a></div><div><br></div><div>I can use gdbus and it successfully update the launcher's icon badge:</div><div><br></div><div>gdbus emit --session --object-path /com/canonical/unity/launcherentry/1 --signal com.canonical.Unity.LauncherEntry.Update "application://chrome-ebcgcbpjedmohalnmiodnfidggpfcehe-Default.desktop" "{'count-visible': <true>, 'count': <2>}"<br></div><div><br></div><div>But when I attempt to use callDBus in my script, it fails:</div><div><br></div><div><div>callDBus(</div><div>  "com.canonical.Unity", // Service</div><div>  "/com/canonical/unity/launcherentry/1", // Path</div><div>  "com.canonical.Unity.LauncherEntry", // Interface</div><div>  "Update", // Method</div><div>  "application://chrome-ebcgcbpjedmohalnmiodnfidggpfcehe-Default.desktop",</div><div>  { "count-visible": true, count: 1 }</div><div>);</div></div><div><br></div><div>I tried to read the source code of callDBus and failed to understand whether it supports a{sv} or not, since I'm not familiar with Qt and C++.</div><div><a href="https://invent.kde.org/plasma/kwin/-/blob/master/src/scripting/scripting.cpp#L253" target="_blank">https://invent.kde.org/plasma/kwin/-/blob/master/src/scripting/scripting.cpp#L253</a></div><div><br></div><div>Thanks in advance for any help.</div><div>Regards,</div><div>Le Phuong</div></div></div>