On Sat, Nov 26, 2016 at 12:51 AM, Samuel Gaist <[email protected]> wrote: > Hi, > > As requested by Thiago in https://codereview.qt-project.org/#/c/166456/ I’d > like to open a discussion about adding a new library in qtbase. > > Why this discussion ? > > Currently in work a pluggable notification system developed in its own > library in qtbase. > > Why add a new library ? > > Originally the submission was integrated in QPA however after some thoughts > and discussion, it was reworked to avoid that so that developers of non-GUI > application could also take advantage of notifications without the need of a > QGuiApplication. > > One of my motivation to move the code in its own library was that the second > implementation provided a run-time plugin selection mechanism much like the > QtSql module. After further discussion, the plugin selection has been moved > to build-time. > > The library as it is currently could even be in its own repository however > the goal in the long run is to replace the code used in QSystemTrayIcon by > calls to this module which at this time duplicates the showMessage logic for > macOS. Therefore having it as a separated repo would mean that qtbase would > depend on it to be build which IMHO is not an option. > > So basically we are at this point: > > 1) Keep the new notifications module > 2) Move the code in the gui module since QImage might be used > > In any case, the outcome of this discussion should likely be written in a > QUIP so we have a clear set of rules about adding new libraries in existing > Qt modules. > > Thank you for your attention
This is very interesting! We've missed this in several occasions and at the moment it's a bit of a stopper for some KDE applications to flourish on some platforms (thinking of KDE Connect at the moment but I'm sure that others too). IMHO the inflection point it's whether it's going to require QCoreApplication or QGuiApplication. Without having sat down into details, not only QImage but QIcon should also be part of the API. I'd say that QtGui will end up being required. Aleix _______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
