elizagamedev / mkxp-oneshot

mkxp, forked for OneShot
GNU General Public License v2.0
76 stars 28 forks source link

Xfce4 fix wallpaper setting #40

Open codedwrench opened 1 year ago

codedwrench commented 1 year ago

This pull requests makes it so that OneShot can set wallpapers and colors properly again on the newest xfce version.

Xfce no longer listens to monitor0 when setting a wallpaper and instead needs the display name, e.g. backdrop/screen0/monitorHDMI1/workspace0/last-image

Colors also didn't seem to work properly, so that has been changed to use rgba1 values, also using xfconf_channel_set_array instead, to make things easier

It sets the wallpaper to all monitors. Resetting when closing the game also works. Tested through modshot, because i wasn't able to compile using conan, however this file is nearly the same in either fork

image

codedwrench commented 1 year ago

After a lot of messing about with the cmakelists i was able to replace the modules missing in conan with my own and it seems gtk3 is required for the new features. I think I could use the GDKScreen apis instead: https://docs.gtk.org/gdk3/class.Screen.html but most linux systems nowadays should have gtk3

codedwrench commented 1 year ago

image took a while, but here it is using your fork as well