Code Monkey home page Code Monkey logo

Comments (11)

xyproto avatar xyproto commented on August 24, 2024

Thanks for reporting! I will look into this. The X11 backend is the most fragile of all the available backend. It was surprising to me that the feh backend failed with the cross fade image. I will fix this.

from wallutils.

xyproto avatar xyproto commented on August 24, 2024

I implemented support for writing the XBM and XPM image file formats, as steps in solving this issue:

My next plan is to write directly to xpm and and skip using feh.

from wallutils.

xyproto avatar xyproto commented on August 24, 2024

I added functionality to x11.go and xwallpaper.h for setting XPM images as the background image, for X11, instead of using feh or the XBM format. This could be improved further by not writing to a temporary file and setting the image data directly through the X11-related C-functions.

However, images with too many colors may still be an issue.

I also need to test this new functionality a bit more.

from wallutils.

xyproto avatar xyproto commented on August 24, 2024

I created the palgen package and made some changes to the xpm. It can now reduce the number of colors when converting images to .xpm. It could probably be both faster and more robust, but it should remove the issue of images having too many colors when setting .xpm images as wallpapers.

Please test the latest master of wallutils and see if the issue has now been resolved.

I'm also planning to do some more testing on various window managers for X.

from wallutils.

xyproto avatar xyproto commented on August 24, 2024

I just tested with i3, and it works best with the feh method. I'm also on Arch Linux.

Since your installation says:

feh WARNING: /tmp/gnometimed_crossfade.png - No Imlib2 loader for that file format
feh ERROR: Unable to load image /tmp/gnometimed_crossfade.png

Perhaps your installation of imlib2 has been compiled without support for PNG files?

Could you please try reinstalling feh and/or imlib2, or possibly install any missing packages that could be related?

from wallutils.

xyproto avatar xyproto commented on August 24, 2024

After looking into this error: libpng error: bad adaptive filter value, I think there may be something wrong with the png image itself, possibly a concurrency issue, if the writing of the png image was aborted somehow.

I will try to reproduce the error by running the same command as you did.

from wallutils.

yegorius avatar yegorius commented on August 24, 2024

I have the latest version of feh and imlib2 from Arch and imlib2 is compiled with png support. Anyway, here is the fresh log output

from wallutils.

xyproto avatar xyproto commented on August 24, 2024

Thanks for the log output! I looked into this, and there is something wrong with the function that performs the cross-fade between two images, in relation to concurrency, resulting in half-written images. I will fix this.

from wallutils.

xyproto avatar xyproto commented on August 24, 2024

I have made several changes related to the cross-fade functionality.

  • Now using bild for the crossfade (blend).
  • Using a mutex when writing the temporary image, to make sure it can write it in peace.

Please test the latest master and see if it fixes this issue. Thanks!

from wallutils.

xyproto avatar xyproto commented on August 24, 2024

Now there are other issues. The Mojave wallpaper events are not correct. I'll have to look into this as well. But this issue might be fixed.

from wallutils.

xyproto avatar xyproto commented on August 24, 2024

I think this bug is fixed. However, issue #9 remains. Please re-open if there should be further issues with this.

from wallutils.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.