This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge support for different backends into master branch
See bug #29. Over the last month, I've been refactoring an abstraction layer around the gdk-pixbuf backend handling the actual image loading and displaying, allowing pqiv to support other backends besides that one. The main reason for this was that I've found that I frequently need to display plots that I typically store in a vector format (PDF/eps/ps) for LaTεχ inclusion, but that direct integration of libpoppler (the freedesktop library used for PDF display by most linux programs nowadays) led to too hackish code (see commits 06e84f3 ff). For starters, poppler and libspectre are included as additional backends. libspectre is the library Evince from the Gnome project uses to display Postscript files. Both backends have unfixed upstream bugs and will need some maintenance. I've commented the code accordingly. I can think of some more backends which might come in handy, but I won't implement them soon unless someone really needs them: * MagickWand (ImageMagick) for even more formats * ffmpeg for still more formats * libdjvu - but that library has an awfully complicated, event driven API With the changes, there also come some bugfixes and general improvements. There are less (hopefully no) race conditions left in the code, because I moved image unloading into the image loader thread. Issue #27 has been worked around with a more complete solution. Especially, pqiv checks now if the WM claims to support _NET_WM_ACTION_FULLSCREEN and manages the fullscreen changes on its own if it does not; so fullscreen mode will now also work on plain X11 displays without a WM. When reworking the Makefile/configure for backend support, FreeBSD compilation was fixed, such that pqiv can now be compiled without changes in Linux distributions, also statically , in MingW using mxe  for Windows 32/64 and in FreeBSD / hopefully *BSD.  https://gist.github.com/phillipberndt/2726a790d9bb1f30e3ed  http://mxe.cc/
- Loading branch information
Showing 13 changed files with 2,002 additions and 835 deletions.