ahodesuka / ahoviewer

A GTK image viewer, manga reader, and booru browser
MIT License
479 stars 30 forks source link

Porting to GTK 4 #126

Closed ahodesuka closed 3 years ago

ahodesuka commented 3 years ago

104 is the major blocking issue right now, after that is resolved the porting process should be quite simple.

Most distributions and msys2 have gtkmm-4.0 available. Gentoo does not currently package gtkmm-4.0 (even though they have all the up to date mm dependencies), but I wrote an ebuild for it myself for now.

I also plan on dropping gstreamer as a direct dependency and adding a libmpv based video widget, GTK 4 provides a video widget via ffmpeg or gstreamer (usually gstreamer), which will be the fallback if not built with libmpv. VAAPI hardware decoding won't work for libmpv until GTK 4.4 is released which will use EGL on X11 by default for non-Nvidia systems.

The 2 main advantages of using GTK 4 that I can see right now are; GPU rendering and scalable list widgets.

ahodesuka commented 3 years ago

While getting a working GTK4 version running I've come to the conclusion that GTK is no longer a serious cross-platform GUI toolkit. It is a toolkit for making GNOME applications for Wayland, any other use-case is secondary. But who knows though, I initially never thought I'd port ahoviewer to GTK3, and yet I did. Maybe in 5 years when GTK 4.24 comes out and they fix all the obscure X11 bugs they introduced it'll be worth using.

For now I'm going to start looking at Qt5/6.