cortile icon indicating copy to clipboard operation
cortile copied to clipboard

Extended external communication via D-BUS

Open leukipp opened this issue 1 year ago • 1 comments

External communication with cortile was implemented via unix domain sockets as discussed here https://github.com/leukipp/cortile/issues/14#issuecomment-1558112799.

The current implementation has some caveats, as it works in an asynchronous way. You have to listen for return values while you are requesting a state from cortile.
There were also feature requests that were either impossible to add or require extensive programming skills and knowledge of the X window backend.

To address these issues, I have opted to introduce a more efficient approach that uses quasi-synchronous interaction with cortile via D-BUS. Given that tray icon communication already relies on D-BUS, this change introduces no new dependencies.

For those who have developed custom event handlers/hook-up logic for cortile, I recommend transitioning to the new API as soon as possible. The forthcoming external communication via D-BUS will supersede the now deprecated unix domain socket approach.

Details regarding the new D-BUS API will be published here and in the README.md file.

leukipp avatar Apr 12 '24 08:04 leukipp

Starting with v2.5.0 dbus communication was unofficially added.

It`s still work in progress, but early beta testers may already have a look into it via running a separate cortile instance:

cortile dbus -help

There are also plans to allow custom cortile-addons for the broader community, by using a python wrapper package.

leukipp avatar Jun 12 '24 18:06 leukipp

Starting with v2.5.1 dbus communication officially replaces the now removed unix domain socket communication.

Based on this, custom addons via python bindings #65 will be released.

leukipp avatar Aug 14 '24 09:08 leukipp