summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2023-02-231-2/+2
| | | | | Change-Id: Ia52b86f970574c69e6e44241cabbc6121f0ea5a1 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Client: Stop requesting activation on every focus object changeVlad Zahorodnii2023-02-221-13/+0
| | | | | | | | | | | | | | | | | | | | | | | Currently, windows with xdg-toplevel surface role request window activation every time the focus object changes. It conflicts with the compositor's activation and stacking order policies. For example, when a window is minimized, the compositor will start an animation and move focus to the next window. If that window activates itself, it can be raised in the stack and start covering the minimized window, thus making it look as if no animation is played at all. This activation logic was introduced as part of qt-shell activation model in d89c8920f3b82dd2098971b5a66c4b9c75da5af0. On the other hand, with the introduction of the xdg-activation-v1 protocol, there is a better way to pass input focus, so drop the qt-shell hack in favor of that. Fixes: QTBUG-111377 Change-Id: I8ed19f1be17f49fa9748b1cb5fdd0070791d2ecd Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit 2fa2a5184dcdf54a7868d73418ed141713587969) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix automoc warning regarding includeMårten Nordheim2023-02-211-1/+1
| | | | | | | | | | | | There's no Q_OBJECT etc. in the .cpp file, so likely it was removed, or it was intended to include the moc file for the sake of the header. But moc-file for the header has another naming scheme. Change-Id: If1202537a40d746e263fd6e6f67e316a2cdb109e Reviewed-by: David Edmundson <davidedmundson@kde.org> (cherry picked from commit a328e2c5e0594ff476a9df2fcdc3b03894ff7a15) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QOpenGLContext re-creation - orphanedTexturesThomas Senyk2023-02-206-13/+381
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The texture clean-up in the HW-integration has two issues when QOpenGLContext is re-created. 1. texture going out-of-date (QOpenGLContext::aboutToBeDestroyed) and still being used/returned to be used 2. QOpenGLContext dies (QOpenGLContext::aboutToBeDestroyed) while an "discarded" QOpenGLTexture (an orphan) isn't deleted yet. (you can't delete a texture past it's ctx's QOpenGLContext::aboutToBeDestroyed) This patch fixes both issues with a helper and a lambda on 3 HW-integration-backends: wayland-egl, wayland-eglstream and linux-dmabuf Fix for 1.: Simple connection to a lambda that deletes the texture and removes them from the set of used textures. Signal is QOpenGLContext::aboutToBeDestroyed Fix for 2.: A function in each backend: deleteSpecificOrphanedTexture(QOpenGLTexture *texture) Also connected/called by QOpenGLContext::aboutToBeDestroyed Deletes the texture (before deleteOrphanedTextures() does it too late) and removes the dead pointer from the orphanage Change-Id: Iccce8845bb669df93f1be43cbe9b9d25f7fd5235 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit baada964fa554bd06d6f8ce2d1afd88902ea73b5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandv6.5.0-beta3Qt Submodule Update Bot2023-02-171-2/+2
| | | | | Change-Id: Icceb3325951aec131beb280ae56b9a4aace848f8 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Move server-buffer example to manual testsEskil Abrahamsen Blomfeldt2023-02-1622-8/+4
| | | | | | | | | | | | This is undocumented and demonstrates an experimental feature which was never maintained or exercised. It's a nice feature, so we keep the example around for when we get the time to bring it back. Task-number: QTBUG-110993 Change-Id: I045cb2ef02a50017a26226c493607100ea0f1b95 Reviewed-by: Inho Lee <inho.lee@qt.io> (cherry picked from commit acb68bd3bbbc0001bcf460dd175ff92cc3ce594a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Documentation for the minimal-cpp examplePaul Olav Tvete2023-02-135-9/+85
| | | | | | | Change-Id: Ib06f5360c19e7656dcda5555e04b0f8f8a8e8d50 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit c492d61165f83cf1cbade21f4483131f979f3e04) Reviewed-by: Inho Lee <inho.lee@qt.io>
* Disambiguate Vulkan debug constantsFriedemann Kleint2023-02-133-34/+34
| | | | | | | | | | They cause clashes in CMake Unity (Jumbo) builds. Task-number: QTBUG-109394 Change-Id: I4dfef40309a42b8fa662dfa3d99b65d920480aba Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit b80b8ec9213e404062e449c7baad6db00483aef2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Exclude sources generated by the scanner from CMake Unity (Jumbo) buildsFriedemann Kleint2023-02-131-4/+6
| | | | | | | | | | The generated helper function wlRegistryBind() clashes. Task-number: QTBUG-109394 Change-Id: Ib814d4576c7565b0413ca16bc0bf5e95caa92c33 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit f5445e74b54d96ca215f5c8b01874174a4efbd9f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove QWindow forward declarations in namespacesFriedemann Kleint2023-02-132-2/+0
| | | | | | | | | | They cause clashes in CMake Unity (Jumbo) builds. Task-number: QTBUG-109394 Change-Id: Idc0d0baeef4b92f61ed67d9a850b5ad3422f9146 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit decc4fb68dfb449e82dc0219365c95c130ede36f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Disambiguate input method constantsFriedemann Kleint2023-02-133-8/+8
| | | | | | | | | | | They cause clashes in CMake Unity (Jumbo) builds. Task-number: QTBUG-109394 Change-Id: I13b33c894818d8aebce763eaf6c961d806961a63 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io> (cherry picked from commit 6ec8ce9a06e5ccb16f5fc3a5f857425f3db87c80) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Disambiguate static variablesFriedemann Kleint2023-02-138-24/+24
| | | | | | | | | | They cause clashes in CMake Unity (Jumbo) builds. Task-number: QTBUG-109394 Change-Id: Ia6e293fa30d788f8abd52bf675f11d7d0151259f Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit 948fbd1cd64f9d5e129deade61ecd3dbc5f9b60f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2023-02-101-2/+2
| | | | | Change-Id: I1ff889112667b1644816ccec92f8e19299367b8f Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* compositor: Fix QML errors in multi-screen exampleEskil Abrahamsen Blomfeldt2023-02-102-1/+2
| | | | | | | | | | | | | | | | | The output property was not hooked up to the surface item, causing the error "qrc:/qml/main.qml: Setting initial properties failed: Chrome does not have a property called output" In addition, when emulating screens, the model is a ListModel, and thus there is no modelData to access (nor would it make any sense to assign this to the screen property). We just set the screen to be the (only) screen on the system in this case. Task-number: QTBUG-110993 Change-Id: I7f6ec15dd038605bd0d94a34600ecbf22aad9878 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> (cherry picked from commit c5a253cc87c75640d828407cc85832d9be28cbbc) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Doc: Fix documentation warningsTopi Reinio2023-02-072-2/+2
| | | | | | | | | | | | * Wiggly example has been removed. * Remove broken link to 'macros' from QWaylandQuickExtension header reference as unnecessary. Change-Id: I17c9db09e7d0a649ab3a37ed867d4f81e039d485 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit 57c5406c6d7ca7ca0e95e558ab81a15ebf3381cf) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2023-02-021-2/+2
| | | | | Change-Id: I32ae1362d3e1d0b9142c5282baabad90ac60abb9 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2023-01-311-2/+2
| | | | | Change-Id: If6628539f4a2ae0219e56349261b0d470768f5d4 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* compositor: Fix crash when raising shell surface itemEskil Abrahamsen Blomfeldt2023-01-301-4/+7
| | | | | | | | | | | | | | | | | This was introduced by d89c8920f3b82dd2098971b5a66c4b9c75da5af0. The raise() function would search for a suitable surface, but failing to find one, it would search past the end of the childItems list and cause memory corruption. [ChangeLog][QtWaylandCompositor] Fixed an issue where the compositor would sometimes crash if a shell surface item was brought to front. Fixes: QTBUG-109051 Change-Id: I2249f0881b90fc05b5f0292cd35c6524db4663c5 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> (cherry picked from commit 0088b09e79da01534a703f69dbccbd721e7594d8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* client: Fix infinite recursion with text-input-v2Eskil Abrahamsen Blomfeldt2023-01-301-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It was possible to get into an infinite recursion when double-clicking an entry in an item view to edit it. What would happen is that the editor takes focus, and we call commit on the input method commit in case the previous focused widget has pending input that needs to be committed. The subsequent method event then causes the QAbstractItemView to set focus, and since we have not yet updated the focus in the previous call, we end up in an infinite recursion, eventually crashing when the stack overflows. As a guard for this, we only send an input method event when there is actually pre-edit text to commit, and we reset the pre-edit text immediately so that any subsequent call will just exit. [ChangeLog][QtWaylandClient] Fixed a possible crash when editing a field in an item view. Fixes: QTBUG-109302 Change-Id: I45237c80e53b1386705279899e19319180d78fa1 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Inho Lee <inho.lee@qt.io> (cherry picked from commit db4afd9caf037cfff7aca8b130d326c340b7fed0) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2023-01-271-2/+2
| | | | | Change-Id: I3ac0d2b6928e8d5178a9d3079aff6b8ee2326d3f Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Don't change process locale while initializing QWaylandInputContextIlya Fedin2023-01-261-3/+1
| | | | | | | | | | | This was overriding the locale previously set in QCoreApplicationPrivate::initLocale and can switch the process to non-UTF8 codepage Change-Id: I5cd6664d1a7c315019d6c798b33b9deb33982a59 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit a3896c8a036c6a9b19d889c212769d72e70257c4) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* 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. Change-Id: Ia3a8075e471d5a4b619f420ee166e7146f1229b8 Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org> (cherry picked from commit f0de6ff9606ea2bf0622f8d8c67e8688be86bf0d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandv6.5.0-beta2Qt Submodule Update Bot2023-01-231-2/+2
| | | | | Change-Id: I33ab5fb7eaffeeee5df93ad45f9a4203130ef8fe Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2023-01-131-2/+2
| | | | | Change-Id: Ic42f1259911e039b109df14c414e56717eae1da3 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2023-01-091-2/+2
| | | | | Change-Id: Ibe2ac489d961014b420bf0815f8dbbe217733098 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Client: Fix handling of Qt::BlankCursorVlad Zahorodnii2023-01-051-2/+1
| | | | | | | | | | | | | | | The cursor may not be properly set when a window has Qt::BlankCursor and it's shown. In that case, the cursor surface may not be present and wl_pointer.set_cursor won't be called. On the other hand, wl_pointer.set_cursor must be always called when wl_pointer.enter is received. Change-Id: I8540e7a02df1579b3380a1a1d4cfab42c1ab3104 Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit e954853f0e68d78ac1a98bc3533713881496064c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2023-01-041-2/+2
| | | | | Change-Id: I295308fadc8d6be335276c9e76496e0fe8437bb4 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Client: Port to QPlatformTheme::{MouseCursorTheme,MouseCursorSize}Vlad Zahorodnii2023-01-032-18/+17
| | | | | | | | | | | It allows the platform theme to specify the preferred cursor theme and cursor size without resorting to hacks such as setting XCURSOR_THEME and XCURSOR_SIZE environment variables. Change-Id: I9e44f9c6dddbb5d730f8ac092f2c11fdbccf8d27 Reviewed-by: Liang Qi <liang.qi@qt.io> (cherry picked from commit 1c25db5e3f23d48e330170f41b94fbd532932b02) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove QT_USE_SYNCQT_CPPAlexey Edelev2023-01-021-2/+0
| | | | | | | | | Option has not effect anymore. Change-Id: Id9acae0ebb103fe77d739c963830368276348b52 Reviewed-by: Kai Köhne <kai.koehne@qt.io> (cherry picked from commit f836382bf3d42af864ed000a5878218a052c4747) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2023-01-021-2/+2
| | | | | Change-Id: If71d90d465de0e220c1b247eac5e722f9d7dde85 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2022-12-301-2/+2
| | | | | Change-Id: I5b6a24bace25cb19dc94cc72c71ab8736848806e Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2022-12-291-2/+2
| | | | | Change-Id: I3b88fde92ea5585395e6ce6b33ee07a29edf7551 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2022-12-281-2/+2
| | | | | Change-Id: I99f4be0ad79b88037e2b3d10ce1dd8cbf881cf00 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2022-12-261-2/+2
| | | | | Change-Id: I4132a0a47b589d9f8d9757d68f5ca7833796f68a Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2022-12-231-2/+2
| | | | | Change-Id: I4ea00eecd19a52068e26f8dedd16e5221bce929d Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandv6.5.0-beta1Qt Submodule Update Bot2022-12-161-2/+2
| | | | | Change-Id: I6c233f44a3d90b845612235ee5860a695c459f2a Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2022-12-141-1/+1
| | | | | Change-Id: I597160ecff3a28f21b15d3960d5a56304603ae4e Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.5' in qt/qtwaylandQt Submodule Update Bot2022-12-131-2/+2
| | | | | Change-Id: I5b820e9fe69379c19d3f3ba94fbcffbc23092bd5 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Add WL_SHM_FORMAT_RGB888 to supported shm formatsThomas Senyk2022-12-132-1/+9
| | | | | | | | | | | In addition a new entry in QWaylandCompositor::ShmFormat allows compositors to enable that format at runtime Change-Id: I0f894adb3f688458a65713e343127fbcb26f8b65 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit ff445c2c7c93a64922ae437cbbdc95542360c7ae) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Client: Handle zwp_primary_selection_device_manager_v1 global removalVlad Zahorodnii2022-12-132-5/+9
| | | | | | | | | | | | The zwp_primary_selection_device_manager_v1 global can be withdrawn if the compositor disables the primary selection, i.e. middle click to paste selected text. QtWayland needs to handle that; otherwise the app can crash. Change-Id: Idbb4db18b605f85a5951fa12c1bdf61898b0d123 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit 45163234a4e4baad0012d3ee07501093d98ba91c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-12-121-2/+2
| | | | | Change-Id: Iede8e1c96d9f5fb35d2dc887d77b30084c1ba0dd Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-12-111-2/+2
| | | | | Change-Id: I27ff5734353528fd8be07a6d4cd6d916c0b45f91 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* compositor: fix build without quickLiang Qi2022-12-095-0/+21
| | | | | Change-Id: Ic9ff039028e509c3e09d446f85648fe063f4749f Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-12-081-2/+2
| | | | | Change-Id: I5148257b05bb7f8efe47580a64c129f07e28a7c6 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Client: Provide support for custom shellsVlad Zahorodnii2022-12-083-5/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, an application can use only one shell surface protocol at a time. However, there are applications that need to use more than one shell surface protocol, e.g. xdg-shell + layer-shell. layer-shell can be used for the desktop background window, and xdg-shell for popups, etc. This change introduces an API in QWaylandWindow that allows specifying the shell integration per window. Custom shell code needs to call QWaylandWindow::setShellIntegration() while the window is unmapped. By default, QWaylandWindow will use QWaylandDisplay's shell integration plugin. This change should be source compatible with existing shell integration plugins deployed in the wild. If the custom shell wants to track additional state for the window, it should do it using its own means. Perhaps we could improve this in the future releases of Qt. [ChangeLog][QtWaylandClient] It is possible to run Qt applications using more than one shell surface protocol, e.g. xdg-shell + layer-shell. Change-Id: Id0458b32af623f114c06d51d0d21ad06efd69328 Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* client: Implement QNativeInterface::Private::QWaylandWindowDavid Redondo2022-12-0812-7/+50
| | | | | | | 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>
* Implement fractional_scale_v1 and wp_viewportDavid Edmundson2022-12-0722-7/+723
| | | | | | | | | | | | | This allows compositors to hint a non-integer scale to use on a window which we can hook to Qt's existing fractional scaling support. The viewport is used to communicate the relationship between buffer size and logical size to the compositor. It is a non-integer alternative to wl_buffer_scale Change-Id: I1a850f1bcd40e8d04e241e18a538b11f18bc671c Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: David Edmundson <davidedmundson@kde.org>
* compositor: Support touch interaction with client decorationsEskil Abrahamsen Blomfeldt2022-12-072-13/+33
| | | | | | | | | | | | | | | | | | | | The client tells us when the title bar has been pressed and it has started a move, but we only actually updated the position of the window for mouse events. This adds touch event support for this, but only for a single touch point. Since there is no way of knowing which touch point actually triggered the move, we just assume it is the first. This could cause some odd behavior if you try interacting with the window frame with two fingers at the same time, but not beyond what you would expect. [ChangeLog][QtWaylandCompositor] It is now possible to move windows using client-side decorations with touch input as well as mouse input. Fixes: QTBUG-108690 Change-Id: I23ce1e39a26be5b1b5a5ac93d8f38cc59685aa96 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* compositor: Fix warning on damage/damage_buffer mixEskil Abrahamsen Blomfeldt2022-12-072-27/+22
| | | | | | | | | | | | | | | | | The damage() request has been deprecated in favor of the damage_buffer() request, which is the one we use in Qt 6 as long as the version is 4 or higher. See change: 314fd6db51277224cdc799b039ef79db1101f5cd. However, eglSwapBuffers() will in some drivers still send the old request, causing us to get a mix of incompatible requests, since they are in different coordinate systems. We need to store these separately so that we can apply them both correctly once we get a commit. Fixes: QTBUG-108765 Change-Id: I9bbe0c87731847a4fa1927957dfd8945bd49c474 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Compositor_api: delete TexProvider properlyInho Lee2022-12-072-2/+21
| | | | | | | | | | | If a QuickItem used in a compositor has a texture provider, it is not destroyed before deleting QRhi. It makes a warning of unreleased resources. Fixes: QTBUG-108767 Pick-to: 6.4 Change-Id: Id86839f1de1ff4f374170627d9c1e02c4afb7301 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>