Rewrite vimiv completely in Qt
Opened this issue ยท 3 comments
I have played around with PyQt5 lately and must say I was very happy.
Reasons for a complete rewrite:
- The code is not very clean, lots of it could be done in a more elegant and extendable way
- The tests are horrible
- Gtk has bugged me quite a bit
Reasons against:
- Lots of work
- Destroys any packages, user configurations, ...
If anybody has an opinion on this, I would love to hear it.
Hi! I'm interested in these bindings for gtk/qt for python.
What are the main advantages of Qt against GTK? Would pyqt allow vimiv to be used in windows? does pygtk already allow that?
I can just give you a subjective list of things if noticed when comparing the two:
- The python bindings for Qt feel much more native and much better compared to the gobject based wrapper for Gtk
- Customizing Qt widgets was much easier for me
- The Qt documentation is amazing, although Gtk's is pretty good too
- I used to love the idea of styling the complete toolkit with themes (Gtk) but custom themes regularly break with new versions of Gtk
In your case I would just try both out and see how you like them/how easily you are able to learn them.
The windows support of Qt is a lot better than the one of Gtk. So in principle it should work already but with a lot of hassle. With Qt it should be easier to do. But I do not own a windows machine and do not plan to buy one, so I will not package/test for windows. Obviously if someone volunteers to do this, I will happily include the contribution.
Hope this helps a bit ๐
The Qt port has been written and is now publicly available: https://github.com/karlch/vimiv-qt
I feel like the new code is much easier to maintain and therefore this will be the future of vimiv. It is not yet feature-complete, so this version will still see maintenance for relevant bugs, but new features will only be implemented in the Qt port.