The alpha defines the macros
```
#define PLASMA_VERSION_MAJOR 5
#define PLASMA_VERSION_MINOR 27
#define PLASMA_VERSION_PATCH 80
```
so the current version checks (which were created based on the macros from
a development build) are not working. I have no clue how these numbers are
crafted so it is supposedly the easiest to just check for Qt 6 as Qt itself
uses a sane versioning system.
As of version 6 Plasma does not seem to pull-in its own dependencies
automatically. This might be a bug. For now, let's just workaround it by
pulling-in the dependencies manually.
This fixes the error `The link interface of target "KF6::Plasma" contains:
KF6::ConfigCore but the target was not found.`.
This makes the code simpler and avoids inconsistent spacing. Unfortunately
this function has only been introduced in Qt 6.4 so the old code has to
stay for older Qt versions.
* Remember new size after user resized the window
* Remember new position after user repositioned window and using explicit
coordinates has been configured in the appearance settings
This might be useful on Wayland where positioning the popup is otherwise
not possible at all. Combined with a session restoration mechanism this
might actually be a feasible workaround. The user just needed to position
the popup once wherever it is wanted to show up and then the compositor
could remember that position.
Especially the resizing would also be useful on other platforms (and is by
the way also already possible when using the Plasmoid showing it as part of
the system tray Plasmoid).
Don't go though the list of dirs/devs for every dir/dev change event. Just
go though the list once after receiving new events. This makes also the
code a little bit easier to follow.