Bug 450359

Summary: kwin commit e1024d38d broke the slidingpopups and startupfeedback effects builds
Product: [Plasma] kwin Reporter: Duncan <1i5t5.duncan>
Component: effects-variousAssignee: KWin default assignee <kwin-bugs-null>
Status: VERIFIED FIXED    
Severity: normal    
Priority: NOR    
Version First Reported In: git master   
Target Milestone: ---   
Platform: Gentoo Packages   
OS: Other   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Duncan 2022-02-16 05:18:47 UTC
[ On gentoo's live-git master packages at kwin commit 648b2a5bf ]

commit e1024d38d cmake: Specify link libraries per effect target

... broke building the slidingpopups and startupfeedback effects and thus building kwin.

The error (for slidingpopups in this case) is:

effects/slidingpopups/slidingpopups.cpp:14:10: fatal error: QApplication: No such file or directory
14 | #include <QApplication>

The fix is adding Qt::Widgets to the slidingpopups and startupfeedback CMakeLists.txt files under target_link_libraries.  With that they and kwin build again.
Comment 1 Bug Janitor Service 2022-02-16 07:49:02 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/2027
Comment 2 Vlad Zahorodnii 2022-02-17 07:44:39 UTC
Git commit d6b3b57ba16368d44a2e06eca735275825597267 by Vlad Zahorodnii.
Committed on 17/02/2022 at 07:22.
Pushed by vladz into branch 'master'.

effects/zoom: Remove QApplication include

M  +0    -1    src/effects/zoom/zoom.cpp

https://invent.kde.org/plasma/kwin/commit/d6b3b57ba16368d44a2e06eca735275825597267
Comment 3 Vlad Zahorodnii 2022-02-17 07:44:47 UTC
Git commit 81d6631733bcbb1a32c6d124be4567d1b4cacf7b by Vlad Zahorodnii.
Committed on 17/02/2022 at 07:22.
Pushed by vladz into branch 'master'.

effects/presentwindows: Remove QApplication include

M  +0    -1    src/effects/presentwindows/presentwindows.cpp

https://invent.kde.org/plasma/kwin/commit/81d6631733bcbb1a32c6d124be4567d1b4cacf7b
Comment 4 Vlad Zahorodnii 2022-02-17 07:44:55 UTC
Git commit 7ba68fde8cb619ed110b46a7e3f129dfa7553d7f by Vlad Zahorodnii.
Committed on 17/02/2022 at 07:22.
Pushed by vladz into branch 'master'.

effects/slidingpopups: Avoid using QApplication

M  +3    -3    src/effects/slidingpopups/slidingpopups.cpp

https://invent.kde.org/plasma/kwin/commit/7ba68fde8cb619ed110b46a7e3f129dfa7553d7f
Comment 5 Vlad Zahorodnii 2022-02-17 07:45:03 UTC
Git commit 2ff90936042f0948c4a7bc5d9608c390f02c9886 by Vlad Zahorodnii.
Committed on 17/02/2022 at 07:22.
Pushed by vladz into branch 'master'.

effects/desktopgrid: Port to QStyleHints

Let's us avoid making the desktop grid effect depend on qtwidgets.

M  +5    -4    src/effects/desktopgrid/desktopgrid.cpp

https://invent.kde.org/plasma/kwin/commit/2ff90936042f0948c4a7bc5d9608c390f02c9886
Comment 6 Vlad Zahorodnii 2022-02-17 07:45:11 UTC
Git commit 4acae79d54c652c9417f1e8b5e400ffd6773ef43 by Vlad Zahorodnii.
Committed on 17/02/2022 at 07:22.
Pushed by vladz into branch 'master'.

effects/startupfeedback: Add Qt::Widgets dependency

M  +1    -0    src/effects/startupfeedback/CMakeLists.txt

https://invent.kde.org/plasma/kwin/commit/4acae79d54c652c9417f1e8b5e400ffd6773ef43
Comment 7 Vlad Zahorodnii 2022-02-17 07:45:19 UTC
Git commit 9cca0a6f85caf164ebfbf344dfa740a862d93043 by Vlad Zahorodnii.
Committed on 17/02/2022 at 07:22.
Pushed by vladz into branch 'master'.

effects/blur: Use QGuiApplication::instance() instead of qApp

qApp is defined differently depending on whether QCoreApplication,
QGuiApplication, or QApplication is included.

Use QGuiApplication::instance() to improve code readability.

M  +2    -2    src/effects/blur/blur.cpp

https://invent.kde.org/plasma/kwin/commit/9cca0a6f85caf164ebfbf344dfa740a862d93043
Comment 8 Vlad Zahorodnii 2022-02-17 07:45:27 UTC
Git commit 1b4f3960fd7e5159f4e3aaea669e55e82a276e18 by Vlad Zahorodnii.
Committed on 17/02/2022 at 07:22.
Pushed by vladz into branch 'master'.

effects/contrast: Use QGuiApplication::instance() instead of qApp

qApp is defined differently depending on whether QCoreApplication,
QGuiApplication, or QApplication is included.

Use QGuiApplication::instance() to improve code readability.

M  +2    -1    src/effects/backgroundcontrast/contrast.cpp

https://invent.kde.org/plasma/kwin/commit/1b4f3960fd7e5159f4e3aaea669e55e82a276e18
Comment 9 Duncan 2022-02-21 07:06:18 UTC
Verified fixed and building as of 886173cab.