summaryrefslogtreecommitdiff
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* Remove QWindow forward declarations in namespacesFriedemann Kleint2023-02-132-2/+0
| | | | | | | | | They cause clashes in CMake Unity (Jumbo) builds. Pick-to: 6.5 Task-number: QTBUG-109394 Change-Id: Idc0d0baeef4b92f61ed67d9a850b5ad3422f9146 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* client: Attempt to request activate even if there's no focus windowIlya Fedin2023-01-251-2/+6
| | | | | | | | | The compositor is likely to display some indication even if the activation fails, so it's helpful to always do the request. Pick-to: 6.5 6.4 Change-Id: Ia3a8075e471d5a4b619f420ee166e7146f1229b8 Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
* client: Implement QNativeInterface::Private::QWaylandWindowDavid Redondo2022-12-086-0/+18
| | | | | | | Task-number: QTBUG-94729 Change-Id: Ib79f3199a4518700aa032c5ca4760a2b53c401e5 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Client: Improve handling of 0xH and Wx0 xdg_toplevel configure eventsVlad Zahorodnii2022-12-051-8/+27
| | | | | | | | | The compositor can send a configure event with 0xH and Wx0 when it wants the window to have some concrete size along one dimension but wants the client to pick the size along the other dimension. Change-Id: I2e72017d4a71b19a930da24fa5c58b6ce672fb94 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* client: Allow resizing with touch input on client-side decorationsEskil Abrahamsen Blomfeldt2022-12-051-37/+80
| | | | | | | | | | | | | | | | | | The touch input for client-side decorations had its own handling which only processed button clicks and moves. This meant that it was impossible to resize windows using touch events. This generalizes the mouse input code path and uses it for touch as well. We need to take care not to update any mouse state in the case of touch, since we only care about touch press events, so we pass in a PointerType and disable parts of the code path when the input is from a touch device. [ChangeLog][QtWaylandClient] Enable resizing windows using client-side decorations with touch input as well as mouse input. Task-number: QTBUG-108690 Change-Id: I761ebb0c7c4844c52f793caa74e8606d1593757f Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Client: Add support for xdg_toplevel.configure_boundsVlad Zahorodnii2022-10-262-3/+14
| | | | | | | | | | | | | | Currently, QtWayland doesn't know about work area size, which can create a problem where some windows don't fit into the screen area or work area. With the xdg_toplevel.configure_bounds event, the compositor can indicate the client the recommended maximum window geometry size. https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/41 Change-Id: I5214aba9f144d091a2afe639de94b8d717c42fdc Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Implement window alert with xdg-activationIlya Fedin2022-10-234-4/+32
| | | | | | | | | | This is implemented by not specifying serial, as mentioned in https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/9#note_854977 Tested on KDE Plasma Change-Id: I4ef0975040bbce581b615b0318f90601e080235c Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Add private header filters to the qt_interal_add_module callsAlexey Edelev2022-10-121-0/+2
| | | | | | | | | | This is required to filter the generated wayland files when syncing headers. Task-number: QTBUG-103196 Change-Id: I86d440bf8b56802dff2fa75ba621c37a8daa8bbf Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Change the license of all CMakeLists.txt and *.cmake files to BSDLucie Gérard2022-08-2334-34/+34
| | | | | | | Task-number: QTBUG-105718 Change-Id: Icb25ea4e07a38eea81f55ed59c6d3b9d37602626 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Client: add custom margins support to xdg popupsIlya Fedin2022-08-231-3/+5
| | | | | | | | | | xdg_positioner operates in window content geometry (i.e. without shadows), so it's necessary to remove popup's and parent's shadow from position and size calculations. Pick-to: 6.4 Change-Id: I997ba2c45ae341a09a8284226629e8107800e894 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Provide a handle for desktop portal via xdg-exporterDavid Redondo2022-07-295-0/+126
| | | | | Change-Id: I6b2034c1833ae497ef05af7c377e4bfd3747b6fe Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Client: do not take decoration shadows into account when placing popupsJan Grulich2022-07-291-2/+2
| | | | | | | | | | The anchor rectangle is relative to the window geometry, which according to xdg-shell specs shouldn't include invisible portions like shadows. This causes all popups be wrongly positioned when drop-shadows are used. Pick-to: 6.4 6.3 6.2 Change-Id: Iac30ab264599f9898f3ddecd7f0c5f2aca824ad6 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Only close popup in the the hiercharyWeng Xuetian2022-07-242-9/+18
| | | | | | | | | | | | | | | | | Imagine following event sequences: 1. a tooltip is shown. activePopups = {tooltip} 2. user click menu bar to show the menu, QMenu::setVisible is called. now activePopups(tooltip, menu} 3. tooltip visibility changed to false. 4. closePopups() close both tooltip and menu. This is a common pattern under wayland that menu is shown as a invisible state. This patch tries to memorize the surface hierchary used to create the popup role. And only close those popups whose ancesotor is hidden. Pick-to: 6.4 Change-Id: I78aa0b4e32a5812603e003e756d8bcd202e94af4 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Client: get activation token automatically whenever possibleIlya Fedin2022-07-111-2/+24
| | | | | | | | | | | | | This allows the application to change focus between its own windows without any code change whenever possbile I.e. if application already has a focused window or the token is specified in XDG_ACTIVATION_TOKEN environment variable Pick-to: 6.4 6.3 Change-Id: I6f54d12197ac0c10bfda2a517aa11bc291e3b471 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
* Add license headers to cmake filesLucie Gérard2022-07-0834-0/+102
| | | | | | | | | | | | CMakeLists.txt and .cmake files of significant size (more than 2 lines according to our check in tst_license.pl) now have the copyright and license header. Existing copyright statements remain intact Task-number: QTBUG-88621 Change-Id: Ib014757184540728f40df71cd580f01e85fbbb56 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* CMake: Get rid of a few warningsAlexandru Croitor2022-06-291-1/+1
| | | | | | | | | | | Plugins should not link publicly to libraries. Don't use deprecated TYPE option of qt_add_plugin. Amends d89c8920f3b82dd2098971b5a66c4b9c75da5af0 Pick-to: 6.3 6.4 Change-Id: I0b5ad54e802147778b1a979b16ff1c2c47eb8c5b Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
* Keep toplevel windows in the top left corner of the screenDavid Redondo2022-06-221-0/+1
| | | | | | | | | | | | | | | | We can't know the actual position of a window on the screen. This causes an issue when Widgets try to position a popup/menu absolutely and keep it on the screen when the screen geometry doesn't include (0,0). Instead report their positions always as the top left corner of the screen that they are on. This new behavior can be disabled for qt-shell or via an environment variable by users that rely on the old behavior. Fixes: QTBUG-85297 Change-Id: Iacb91cb03a0df87af950115760d2f41124ac06a3 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
* Use SPDX license identifiersLucie Gérard2022-06-1052-1880/+108
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I106d3a5d1a7b96250380b6f51a48f3b19d10e4d9 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* QWaylandXdgShellIntegrationPlugin: includemocs - qt6Liang Qi2022-06-011-0/+2
| | | | | | | Pick-to: 6.3 6.2 Task-number: QTBUG-103295 Change-Id: Iff8a76926a8a0b581a0290b5b6ab44453ac774ec Reviewed-by: Marc Mutz <marc.mutz@qt.io>
* QWaylandXdgShellIntegrationPlugin: includemocsLiang Qi2022-06-011-0/+2
| | | | | | | Pick-to: 6.3 6.2 5.15 Task-number: QTBUG-103295 Change-Id: I974dbcd67bc4a45cf18d0fdf197bcaeb12c633b4 Reviewed-by: Marc Mutz <marc.mutz@qt.io>
* QtWlShellIntegrationPrivate: includemocsLiang Qi2022-06-011-0/+2
| | | | | | | Pick-to: 6.3 6.2 5.15 Task-number: QTBUG-103295 Change-Id: I000dd8b5fa13747acfa8c12df4203dfdaa48b9c4 Reviewed-by: Marc Mutz <marc.mutz@qt.io>
* client: Avoid protocol error with invalid min/max sizeEskil Abrahamsen Blomfeldt2022-05-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the application sets an invalid minimum and maximum size (where the minimum is higher than the maximum), then we would blindly send this over the protocol, which is a protocol error according to the spec. Qt compositors will warn about this and ignore the size, but mainly because "but there's no matching error defined" according to the comment. Other compositors may close the connection when this happens. To avoid crashing the app based on bogus min/max size, we make sure we never send a maximum size which is less than the minimum size. This corresponds to the behavior of compositors which accept the size without raising an error: the minimum size takes precedence. Note that 0 means "no maximum size" in the protocol, so we cap the value before applying this logic. [ChangeLog][Client] Fixed an issue where setting an invalid minimum and maximum size on a window would cause some compositors to raise a protocol error. Pick-to: 6.2 6.3 Fixes: QTBUG-102626 Fixes: QTBUG-103391 Change-Id: I4004a4550a9fe3dae6a27169b4d1a9a616e21841 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* QtWaylandClient: use the CMake exports.h supportThiago Macieira2022-04-2813-16/+16
| | | | | | | | | | | | The one in qtwaylandglobal.h was wrong. It just happened to work on Linux because the lack of import wasn't an error... until GCC 12 with -mno-direct-extern-access. Pick-to: 6.3 Change-Id: If05aeeb7176e4f13af9afffd16e8535b469f9158 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* client: Synthesize enter/leave event for popup in xdg-shellLiang Qi2022-04-041-0/+27
| | | | | | | | | Fixes: QTBUG-100148 Pick-to: 6.3 6.2 5.15 Change-Id: I45e3156d7942cff9968674c0b253d15be7235921 Reviewed-by: Tang Haixiang <tanghaixiang@uniontech.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* client: set_constraint_adjustment() for popups in xdgLiang Qi2022-03-081-0/+4
| | | | | | | | | | | | See also https://cgit.freedesktop.org/wayland/wayland-protocols/tree/stable/xdg-shell/xdg-shell.xml#n234 . Kudos to Greg V for his original patch in jira. Fixes: QTBUG-87303 Pick-to: 5.15 6.2 6.3 Done-with: Greg V <greg@unrelenting.technology> Change-Id: I57df9aedea7cc6f0b6fa142a6fc6c3bdc98324c8 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Allow creating popups from non xdg-shell parentsDavid Redondo2022-03-081-4/+4
| | | | | | | | | It's possible to create xdg-popups with a null parent and set a parent via some other protocol. This will be useful for the work of allowing multiple shells in one process. Change-Id: I1fb9035be4b3999ff284bcc5c60eb4142cee1294 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* XDG shell: fix warnings about unused variableThiago Macieira2022-01-211-1/+1
| | | | | | | | | qwaylandxdgshell.cpp:508:15: warning: unused variable ‘activation’ Pick-to: 6.3 Change-Id: I0e5f6bec596a4a78bd3bfffd16c995a0b7feef5c Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
* Use PRIVATE linking for pluginsAlexey Edelev2022-01-131-2/+2
| | | | | | | | Fixes: QTBUG-99760 Pick-to: 6.3 Change-Id: I28e6f7e5dfe605224a654c98b51cc1f686d648b2 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Client: support high-dpi mode for window iconLiang Qi2021-12-131-6/+3
| | | | | | | | Fixes: QTBUG-90530 Pick-to: 6.3 6.2 5.15 Change-Id: Ib1f36e1cb89352dfac8a385a7b097cfc0226e813 Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Handle the transientParent of a window having another kind of surfaceDavid Redondo2021-12-091-1/+1
| | | | | | | Useful for the current work of allowing multiple shells in one process. Change-Id: I68424687df9069fd4339f2764649db1df70a6c9a Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Remove QWaylandShellIntegration::findGlobalPaul Olav Tvete2021-12-0910-74/+44
| | | | | | | | | | | | This is no longer necessary now that the recommended way of creating custom shells is to use QWaylandShellIntegrationTemplate. This also restores the old internal API in use by existing shells. Task-number: QTBUG-94330 Change-Id: I0fa0ba0d928baa2edf5d68e879558081026436c8 Reviewed-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Implement xdg_activation_v1 protocolAleix Pol2021-12-095-0/+225
| | | | | | Change-Id: Ib5c8d0c6a209308c2c1a7f5e45d8866ba0127d81 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Remove the XComposite buffer sharing extensionPaul Olav Tvete2021-12-0723-785/+0
| | | | | | | | | | | | | These extensions were disabled because they did not work properly and they are no longer very useful. It does not make sense to keep non-functional code around when it is unlikely to be fixed. [ChangeLog][Extensions][The xcomposite-egl and xcomposite-glx shell extension protocols have been removed.] Task-number: QTBUG-97985 Change-Id: I0ad37bd2b35551d7b2b1e5e7d4e77a51037864ad Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Use a correct serial for xdg_surface.ack_configureInho Lee2021-12-072-4/+6
| | | | | | | | | | | Previous pendingConfigureSerial can be overwritten regardless of the current configuration. With this patch, the client surface can use correct serial for xdg_surface.ack_configure. Fixes: QTBUG-95962 Pick-to: 6.2 6.1 6.0 5.15 Change-Id: I849d2daf4acc8ef6e7f8528af9c5a57f671f43e6 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Introduce new qt-shell and an API for custom shellsPaul Olav Tvete2021-12-0216-42/+678
| | | | | | | | | | | | | | | | | | | | | | Adds a new API for writing custom shell extensions. This API is supported, but semi-public. Binary compatibility is not guaranteed. Also adds qt-shell, a new shell that maps directly to the QWindow API, and provides functionality that Qt provides on other window systems, such as absolute window positions and window activation. This shell is not intended for use on the desktop. This is a squashed commit of a development branch consisting of approximately 60 changes. Contributors: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Paul Olav Tvete <paul.tvete@qt.io> Task-number: QTBUG-94330 Task-number: QTBUG-91542 Change-Id: I419b6bd8179fe03e4da47d328c7ff4b4795b8a91 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Wayland client: use wl_keyboard to determine active stateMéven Car2021-10-043-26/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Commit f497a5bb87270174b8e0106b7eca1992d44ff15d made QWaylandDisplay use the xdgshell's active state for QWindow::isActive(), instead of using wl_keyboard activate/deactivate events. That seems to have been a misunderstanding, since xdgshell activation is only supposed to be used to determine visual appearance, and there is an explicit warning not to assume it means focus. This commit reverts this logic back to listening to wl_keyboard. It adds a fallback when there is no wl_keyboard available to handle activated/deactivated events through xdg-shell, in order to fix QTBUG-53702. windowStates is handled so that we're not using the Xdg hint for anything with QWindowSystemInterface::handleWindowStateChanged or anything where we need to track only having one active. We are still exposing it for decorations, which is the only reason to use the Xdghint over keyboard focus - so you can keep the toplevel active whilst you show a popup. Change-Id: I4343d2ed9fb5b066cde95628ed0b4ccc84a424db Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* CMake: Use renamed qt6_add_plugin PLUGIN_TYPE optionAlexandru Croitor2021-08-0931-31/+31
| | | | | | | Task-number: QTBUG-95170 Pick-to: 6.2 Change-Id: I60fd4ef84fb4887294bde766790b279d12f1288a Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* CMake: Make WAYLAND_INCLUDE_DIR argument internalJoerg Bornemann2021-08-041-1/+1
| | | | | | | | | | | | As discussed in QTBUG-95177, this argument of qt6_generate_wayland_protocol_{client|server}_sources is for internal use only and should not be exposed publicly. Rename this argument to __QT_INTERNAL_WAYLAND_INCLUDE_DIR. Fixes: QTBUG-95177 Change-Id: I1437007b4bfd398372a932ec09a5eba0daa9af69 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Don't give plugins PUBLIC usage requirementsJoerg Bornemann2021-07-0625-37/+29
| | | | | | | | | | | | | | | | | | | | The pro2cmake.py conversion script faithfully reproduced the .pro files for the plugins, which specified the libraries as public. But in CMake, the implications of this are that public usage requirements should then be propagated to consumers. We don't expect any consumers, since a plugin is created as a MODULE library in CMake, so for Windows we don't even have an import library to link with. The only exception to this is for static builds where plugins are created as STATIC libraries instead, but only in certain controlled situations do we then link to plugins. Even then, usage requirements are not expected to propagate to the consumers, so these relationships should always be specified as private. Pick-to: 6.2 Task-number: QTBUG-90819 Change-Id: Ia7a8f27d4eecf067055511577ec664ad857905cd Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Use QEventPoint::State instead of Qt::TouchPointStateJiDe Zhang2021-06-251-3/+3
| | | | | | | | | Also fix compile warnings about -Wenum-compare. Pick-to: 6.2 6.1 6.0 5.15 Change-Id: I5e94fc028c727b155d5db4c7def35d518c497c5c Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Fix typo in include guardAlexey Edelev2021-06-251-2/+2
| | | | | Change-Id: I1800daa525fa6565ab62b76d2138e7cfb7bbe9e1 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Remove forward declaration for classes that don't exist anymoreAlbert Astals Cid2021-06-181-1/+0
| | | | | | Change-Id: I06bd8056a9892d0affe92ddc262def9d42a471fa Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* cmake: be more flexible when creating Wayland client and server extension ↵Robert Griebl2021-06-161-0/+2
| | | | | | | | | | | | | | | | | | | | headers This was hardcoded to QtWaylandClient/QtWaylandServer for cmake, while $$MODULE_INCNAME was used in the old qmake world. (this is an update to the previous commit, fixing the client side of things, plus adding an override for both) The header location will now default to the current Qt modules private include dir (as it was in qmake times), but we now also have the ability to override this default via WAYLAND_INCLUDE_DIR to deal with special cases like the WlShellExtension (which is an own Qt private module itself) Pick-to: 6.2 Change-Id: I4e96578a9a00598c236fcd22a460aeca4984baeb Reviewed-by: Dominik Holland <dominik.holland@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add the 'Private' suffix to the internal module namesAlexey Edelev2021-05-311-4/+4
| | | | | | | | Rename internal modules to adjust their names to the internal module policy. Change-Id: Ib9604c0b0dbd2a216d48df3797e912983f7e3c8f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Client: expose toplevel window stateJan Grulich2021-05-142-2/+17
| | | | | | | | | | | | | QWaylandWindow has only basic information about window state, like if it's active or maximized, but it has no information about tiling, which can be useful for client-side decorations. We also need to bump version of xdg-shell protocol we support, because additional states are not in the version currently supported by QtWayland. It shouldn't be a problem to increase the version as the new version adds just these additional window states. Change-Id: I4c46516d9c7296c69ea51a022b3bdb4ca06bef8d Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Client: Set XdgShell size hints before the first commitDavid Edmundson2021-05-101-2/+1
| | | | | | | | | | | | | propagateSizeHints is only called in QWindow we have platform window and minimumSizeHint is then sent. We also need to send existing hints when we create the shell window. Sending them when we apply configure is too late, we need these hints available for the compositor to correctly configure the window. Change-Id: I6cbb294b11db06ecd87535fa4816bb8ad34a29c6 Reviewed-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org> Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
* Export wl-shell integrationElvis Lee2021-04-291-11/+25
| | | | | | | | Support wl-shell integration as a module for external build Change-Id: I6cd5e5c35ff1162943ffdcbe7ff834f30783e5a8 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Export wayland-egl compositor hwintegrationElvis Lee2021-04-292-8/+2
| | | | | | | | Support wayland-egl compositor hwintegration as a module for external build Change-Id: I794ad4eb38fc2dda31ace1b0eeb2e001020d0956 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Export wayland-egl client hwintegrationElvis Lee2021-04-284-24/+4
| | | | | | | | | | | Support wayland-egl client hwintegration as a module for external build. Change-Id: I3e82838d0cc89d4bb1435b835dc1e9b592319ddf Reviewed-by: Elvis Lee <kwangwoong.lee@lge.com> Reviewed-by: Jaeyoon Jung <jaeyoon.jung@lge.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* xdgshell: Tell the compositor the screen we're expecting to fillAleix Pol2021-03-261-3/+6
| | | | | | | | | | | The xdgshell protocol allows us to tell the output to fill. This makes it possible to use fullscreen confidently on systems with multiple screens knowing that our windows won't be overlapping one another by calling setScreen accordingly before QWindow::showFullScreen. Pick-to: 6.1 6.0 5.15 Change-Id: I757854c3698639472f3a25ef298ddcca031e1ed5 Reviewed-by: David Edmundson <davidedmundson@kde.org>