SUMMARY I was wondering if it would be possible to make qtwebengine optional but not make the obsolete qtwebkit required as a consequence of disabling qtwebengine. I run Gentoo and to install kmymoney, I have to compile qtwebengine because it's required and qtwebkit is currently deprecated and being removed. qtwebengine takes an enormous amount of time to compile and it would be nice to avoid installing it especially if the functionality it provides in kmymoney is not something I need. STEPS TO REPRODUCE 1. -DENABLE_WEBENGINE=OFF OBSERVED RESULT Disabling qtwebengine makes qtwebkit required and it looks for that library instead: CMake Error at CMakeLists.txt:224 (find_package): By not providing "FindKF5WebKit.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "KF5WebKit", but CMake did not find one. Could not find a package configuration file provided by "KF5WebKit" with any of the following names: KF5WebKitConfig.cmake kf5webkit-config.cmake Add the installation prefix of "KF5WebKit" to CMAKE_PREFIX_PATH or set "KF5WebKit_DIR" to a directory containing one of the above files. If "KF5WebKit" provides a separate development package or SDK, be sure it has been installed. EXPECTED RESULT Don't require qtwebkit if qtwebengine is not enabled SOFTWARE/OS VERSIONS Linux/KDE Plasma: 5.21.5 (available in About System) KDE Plasma Version: KDE Frameworks Version: Qt Version: 5.15.2
Currently it's an either one or the other. One of the two is needed for the home page to display and the reports to show up. Unless, someone rewrites these parts to use different technologies there is no chance for your request.
(In reply to Thomas Baumgart from comment #1) > Currently it's an either one or the other. One of the two is needed for the > home page to display and the reports to show up. Unless, someone rewrites > these parts to use different technologies there is no chance for your > request. Bummer. Thanks for the response.
(In reply to Matthew Schultz from comment #2) > Unless, someone rewrites these parts to use different technologies > there is no chance for your request. QTextBrowser https://doc.qt.io/qt-5/qtextbrowser.html#details may be an alternative.
(In reply to Ralf Habacker from comment #3) > (In reply to Matthew Schultz from comment #2) > > Unless, someone rewrites these parts to use different technologies > > there is no chance for your request. > > QTextBrowser https://doc.qt.io/qt-5/qtextbrowser.html#details may be an > alternative. Since kmymoney uses the webengine/webkit in several places (check printing, reconciliation report, reports, homeview and kmymoneywebpage), it would make sense to extend the already existing MyQWebEnginePage class to a new class e.g. MyWebPage or MyMoneyWebPage and use this class in the other places.
Ralf, for the record, I ported check printing in master to use QTextBrowser. I imagine our other usages of it don't require any advanced HTML/CSS over what QTextBrowser supports, so it may be worth looking into porting everything else, too.
MyQWebEnginePage is either derived from qtwebengine or qtwebkit based classes whichever is selected. Simply extending them sure does not solve the original problem.
For the record: alkimia offers a wrapper for loading web pages called AlkWebPage, which uses Webkit (mingw) and Webengine (msvc, Linux) as backend and which could also be used in KMyMoney.
(In reply to Ralf Habacker from comment #7) > For the record: alkimia offers a wrapper for loading web pages called > AlkWebPage, which uses Webkit (mingw) and Webengine (msvc, Linux) as backend > and which could also be used in KMyMoney. If it still depends on qtwebengine, then it still exhibits the same problem. I think Dawid Wróbel's suggestion to use QTextBrowser instead sounds promising but of course someone would have to do that work.
Git commit 7518d11ef7fbf5a2f59053682663bcfeb4d7df07 by Ralf Habacker. Committed on 25/08/2024 at 16:10. Pushed by habacker into branch 'master'. cmake: Cleaning up the use of QtWebEngine QtWebEngine has been completely replaced by QTextBrowser and the cmake support files for LibAlkimia5 already contain a search for it, so all related references can be removed. FIXED-IN:5.2 M +0 -1 CMakeLists.txt M +0 -3 config-kmymoney.h.cmake https://invent.kde.org/office/kmymoney/-/commit/7518d11ef7fbf5a2f59053682663bcfeb4d7df07
(In reply to Ralf Habacker from comment #9) > QtWebEngine has been completely replaced by QTextBrowser Daniel has already completed the port, so kmymoney is already web engine free. > and the cmake > support files for LibAlkimia5 already contain a search for it, If you want to build KMyMoney completely without web engine, you can achieve this by building the alkimia library with -DBUILD_WITH_WEBENGINE=off without a web engine.
(In reply to Ralf Habacker from comment #10) > (In reply to Ralf Habacker from comment #9) > > > QtWebEngine has been completely replaced by QTextBrowser > > Daniel has already completed the port, so kmymoney is already web engine > free. > > > and the cmake > support files for LibAlkimia5 already contain a search for it, > > If you want to build KMyMoney completely without web engine, you can achieve > this by building the alkimia library with -DBUILD_WITH_WEBENGINE=off without > a web engine. Wow thanks! I'm so glad I won't have to compile qtwebengine anymore! It was such a pain and I just needed it installed for kmymoney. I'll be looking forward to the 5.2 release!
(In reply to Ralf Habacker from comment #10) > Daniel has already completed the port, so kmymoney is already web engine > free. s/Daniel/Dawid/g, sorry