Commit Graph

82 Commits

Author SHA1 Message Date
Vlad Zahorodnii
1943de8501 Add a (temporary) way to attach popups to layer surfaces
The new API is temporary. It's needed to help us with porting plasma to
the layer shell protocol until Qt 6.6 is released, which includes
QWaylandShellSurface::attachPopup().
2023-04-03 16:47:55 +03:00
Vlad Zahorodnii
7d1fb40d07 Port to QWaylandWindow::setShellIntegration()
With QWaylandWindow::setShellIntegration(), it's possible to use
xdg-shell and layer-shell protocols in the same process. It's important
for plasmashell, where we want to use the layer shell protocol for
special surfaces such as the desktop background, and the xdg shell
protocol for dialogs.

In order to make a QWindow use the layer shell protocol, you need to
call LayerShellQt::Window::get() before the window is mapped.
2023-04-03 14:47:00 +03:00
Nicolas Fella
488c6d759c Replace KF5 with KF6 2023-02-28 15:05:58 +01:00
Nicolas Fella
d69a528b6c Require Qt 6.4 2023-02-28 15:05:34 +01:00
Nicolas Fella
cfbfe94e79 Use KF6 libs on CI 2023-02-28 15:05:15 +01:00
Nicolas Fella
2b757f3d82 Remove Qt5 CI 2023-02-28 15:05:03 +01:00
Fabian Vogt
3c85e2e889 Use the QScreen of the QWindow as default output
If the Window::setDesiredOutput API was not called for the QWindow, use
QWindow::screen(). This allows assigning QWindows to specific screens using
the plain Qt API.

Passing nullptr to Window::setDesiredOutput explicitly results in nil as
desired output for the layer, which lets the compositor select a screen.
2023-02-22 08:23:17 +01:00
Jonathan Esk-Riddell
b9f8f6447d Update version number for 5.27.80
GIT_SILENT
2023-01-27 14:56:01 +00:00
David Redondo
7de801802b Revert "Show all headers in qtc6"
There was no consensus for this in Plasma.
This reverts commit 22df3fe914.
2023-01-24 08:49:43 +01:00
Laurent Montel
22df3fe914 Show all headers in qtc6 2023-01-22 17:38:12 +00:00
Jonathan Esk-Riddell
8d14abc707 Update kf5 version requirement to 5.102.0
GIT_SILENT
2023-01-21 20:06:42 +00:00
Jonathan Esk-Riddell
d06bcbe25b Update version number for 5.28.80
GIT_SILENT
2023-01-19 12:28:59 +00:00
Jonathan Esk-Riddell
fc06e945c8 Update version number for 5.26.90
GIT_SILENT
2023-01-19 11:17:24 +00:00
Laurent Montel
b95910c086 Use ecm_set_disabled_deprecation_versions 2022-12-23 13:50:51 +01:00
Friedrich W. H. Kossebau
70dc87f673 Use KDE_INSTALL_CMAKEPACKAGEDIR
GIT_SILENT
2022-10-22 13:59:13 +00:00
Jonathan Esk-Riddell
7b9c2c1db1 Update version number for 5.26.80
GIT_SILENT
2022-09-15 13:57:50 +01:00
Jonathan Esk-Riddell
9b5a39922b Update version number for 5.25.90
GIT_SILENT
2022-09-15 11:50:08 +01:00
Jonathan Esk-Riddell
91db77acc2 Update kf5 version requirement to 5.98.0
GIT_SILENT
2022-09-15 11:10:38 +01:00
Laurent Montel
5af50ac3ee Add FreeBSD Qt6 CI support 2022-08-27 14:40:53 +02:00
Nicolas Fella
7bfac45da8 Make fully reuse compliant 2022-08-23 21:52:18 +02:00
David Edmundson
7bd63669ea Use change signals on Window interface class.
QWaylandLayerSurface pulled data from the Window on startup. The Window
pushed data into the QWaylandLayerSurface on changes. Having two
patterns is a sign of something being off.

This moves everything to a single design, pulling from the public
interface. This allows us to drop a code path that meddles with
QWaylandWindow internals.
2022-06-30 08:09:21 +00:00
Jonathan Esk-Riddell
13961ef7b9 Update qt5 version requirement to 5.15.2
GIT_SILENT
2022-06-27 10:02:56 +01:00
Jonathan Esk-Riddell
ff6155a5af Update kf5 version requirement to 5.94
GIT_SILENT
2022-06-27 10:02:56 +01:00
Nicolas Fella
34e7c90c2d Mark required deps as required
BUG: 454912
2022-06-06 12:26:10 +02:00
Jonathan Esk-Riddell
563b61c75c Update version number for 5.25.80
GIT_SILENT
2022-05-19 12:26:13 +01:00
Jonathan Esk-Riddell
404e9851d1 Update version number for 5.24.90
GIT_SILENT
2022-05-19 10:41:53 +01:00
Carl Schwan
345676a4a1 Minor api doc improvement for api.kde.org 2022-05-04 10:43:03 +00:00
Volker Krause
ae883df5b1 Build with Qt6 2022-03-06 10:54:56 +01:00
Julius Zint
9f8b8c9731 Add desiredScreen property to LayerShellQt::Window
If the property is set, the compositor will try to put the window on the
given output. If not set, the compositer will decide where to put the
window (usually the active output). The motivation for this change is the
ability for KRunner to always appear on the active output.
2022-01-26 09:04:14 +01:00
Jonathan Riddell
14982d6dc7 Update version number for 5.24.80
GIT_SILENT
2022-01-13 11:56:23 +00:00
Jonathan Riddell
e557008b56 Update version number for 5.23.90
GIT_SILENT
2022-01-13 10:34:20 +00:00
Laurent Montel
80f6a629bb GIT_SILENT: add missing override 2021-10-27 13:43:28 +02:00
Jonathan Riddell
662afeba22 Update kf5 version requirement to 5.86
GIT_SILENT
2021-10-11 20:48:40 +01:00
Nicolas Fella
3dac2dd012 Add FreeBSD CI 2021-10-07 01:27:09 +02:00
Nicolas Fella
5b280a4602 Add Linux CI 2021-10-05 15:14:20 +02:00
Nicolas Fella
eb6fb8ab13 Add .kde-ci.yml 2021-10-05 15:14:05 +02:00
Jonathan Riddell
06815f2817 Update version number for 5.23.80
GIT_SILENT
2021-09-16 10:34:01 +01:00
Jonathan Riddell
dc07e14630 Update version number for 5.22.90
GIT_SILENT
2021-09-16 09:21:32 +01:00
David Edmundson
4a439143ba Fix a crash when creating views on the placeholder screen
When a compositor has no outputs listed Qt creates a dummy placeholder
QScreen object that does not represent a wl_output.

This should still be fixed in the clients to not create a view, it's
wasteful and probably will still have plenty of other bugs, hence the
giant warning, but it's still worth guarding.

CCBUG: 439096
2021-09-15 22:55:35 +00:00
David Edmundson
331505a4d2 Explicitly set KDE_COMPILERSETTINGS_LEVEL 2021-08-24 22:41:46 +02:00
Laurent Montel
f6084b2c43 Fix compile with last ecm.
("we have disabled the C and C++ specific compiler extensions.")
2021-06-28 07:51:57 +02:00
Alexander Lohnau
9af3c35020
Mark .gitignore file as non-copyrightable 2021-05-21 15:35:56 +02:00
Jonathan Riddell
525fa9b819 Update version number for 5.22.80
GIT_SILENT
2021-05-13 15:09:54 +01:00
Jonathan Riddell
1021ca5ab5 Update version number for 5.21.90
GIT_SILENT
2021-05-13 10:21:51 +01:00
Jonathan Riddell
204eeaf1c9 Update kf5 version requirement to 5.82
GIT_SILENT
2021-05-13 09:56:28 +01:00
Ömer Fadıl Usta
42a87ad728 Update .gitignore 2021-05-09 17:54:28 +00:00
Friedrich W. H. Kossebau
7d46bd63c5 Port away from ECMSetupVersion's deprecated *_VERSION_STRING CMake variable
GIT_SILENT
2021-05-04 23:35:44 +02:00
Alexander Lohnau
710152a7f3
GIT_SILENT Add auto generated files to .gitignore 2021-05-03 14:54:12 +02:00
Vlad Zahorodnii
8d1aeb7bf1 Store QWaylandLayerShell using a QScopedPointer
This is to ensure that the QWaylandLayerShell will be eventually
destroyed.
2021-04-20 16:02:33 +00:00
Vlad Zahorodnii
93f3ed2c07 Fix a memory leak
The dynamically allocated QtWayland::zwlr_layer_shell_v1 object in
QWaylandLayerShellIntegration::registryLayer() isn't deleted anywhere.
2021-04-20 16:02:33 +00:00