Eko450-eng / LogiOpsGui

MIT License
18 stars 0 forks source link

Enhancement: Use D-Bus methods #2

Open PixlOne opened 1 year ago

PixlOne commented 1 year ago

Good work, I've recently added some changes to LogiOps that provides a system D-Bus interface for live configuration as a non-root user.

I haven't fully documented it, but you can update LogiOps and use D-Spy to poke around in the pizza.pixl.LogiOps interface on the system bus to discover it.

As an enhancement, you may want to use the new D-Bus interface instead of manually editing the config file.

Eko450-eng commented 1 year ago

Thank's I'll look into it once I have some more freetime, currently busy with another project and job search but I'll definetly will update.

zacharesmer commented 1 year ago

Hi! I had started making a similar config editor/UI, then found this! It looks good :)

After poking around the DBus interface a bit, I'm wondering: are there any plans to emit a signal when a setting is changed on the device? For example, if there's a mouse button set to cycle through DPIs, it would be useful to have some kind of signal emitted if it's pressed so the UI could listen for it and update the DPI field to match.

I looked in the IPCGull code and see a TODO about the PropertiesChanged signal, which would do the job as long as the relevant settings are exposed as properties. Is making some settings properties and using that signal something that's currently planned? My C++ is not excellent or I'd offer to help (still could if it's something that wouldn't happen otherwise, it just might take a long time).