summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Bump version to 6.12.0HEADdevJani Heikkinen3 hours1-1/+1
| | | | | Change-Id: If4f40a8ee2734571a3bdbd24627d9cd8676995a4 Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot3 hours1-3/+3
| | | | | Change-Id: Idff01555db8bbcf7ad0f26050400dfa39661e141 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot4 days1-3/+3
| | | | | Change-Id: I6b618f113971a22618f0b5f733cbdd2b22cb6d57 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Fix QWaylandQuickShellSurfaceItem not tracking its shellSurfaceKonstantin Ritt11 days2-28/+41
| | | | | | | | | | | When the shell surface is destroyed, i.e. by hiding the QtWaylandClient's window, QWaylandQuickShellSurfaceItem does not emit shellSurfaceChanged() and may cause a dangling pointer dereference. Pick-to: 6.10 6.8 6.5 Task-number: QTBUG-138907 Change-Id: I99665ebce41334ace72103fdeb2956986cfc7ef4 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot12 days1-1/+1
| | | | | Change-Id: I33d16d552a4db41c7c1acf253243990ddb5238a6 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot12 days1-3/+3
| | | | | Change-Id: I1ece68caca490589f7b97fb25ee792fcb3d552c2 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* QWaylandView: Remember to release front buffer when surface unsetKonstantin Ritt12 days1-0/+4
| | | | | | | | | | | When we're locking the front buffer i.e. on surface destruction, and then the view's surface is reset to null, unlocking the locked buffer must release it. The same is true for changing the view's surface but I'd expect the new surface's commit + advance do the job. Change-Id: I0518590bd7d1482046b5ede1cf3f9b12825621f6 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* QWaylandView: Discard back buffer on buffer swapKonstantin Ritt12 days1-2/+2
| | | | | | | | When the back buffers becomes the front buffer in QWaylandView::advance(), there is no any particular reason to keep it referenced as back buffer. Change-Id: If1f29a6c9600bbb99ac19335241f1f9b5c169713 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* QWaylandQuickItem: Properly handle bufferLocked changes from QWaylandViewKonstantin Ritt12 days3-4/+16
| | | | | | | | | | As long as QWaylandQuickItem simply wraps the QWaylandView's properties, when bufferLocked property value changes on the QWaylandView, QWaylandQuickItem must handle it just like if it were QWaylandQuickItem::setBufferLocked() call Change-Id: Ic928d963d4b4beaeab716687d2181f79179c9d32 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* QWaylandQuickItem: Fix allowDiscardFrontBufferChanged() signal emissionKonstantin Ritt12 days1-1/+1
| | | | | | | | Obviously, QWaylandQuickItem::allowDiscardFrontBuffer() is a getter and it didn't emit anything at all. Change-Id: I169d37ff70cb4016465fa6df0d3654c76688856e Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* QWaylandQuickItem: drop redundant codeKonstantin Ritt12 days2-12/+1
| | | | | | | | | The QWaylandSurface::redraw() connected to QQuickItem::update() a few lines below guarantees the Item shall be updated on any commit, not just for the surface map/unmap ones. Change-Id: Idf71f57b383d3314dfd189dccd90e305f0286332 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix defaultOutputChanged() not being emitted in some casesKonstantin Ritt13 days2-3/+8
| | | | | | | | I.e. when adding the output to the compositor with no outputs, and when removing the default output. Change-Id: I6e523ce2a967bba7873453a4bffb26ba99f76e62 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Prohibit setting null as a default outputKonstantin Ritt13 days1-0/+4
| | | | | Change-Id: I9e40fafd440c3d79f25ace7981bc0ee5f5b4fcd7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Properly handle frame callbacksKonstantin Ritt14 days3-13/+13
| | | | | | | | | | | | | | | | | | | Current implementation sends a frame callback to notify client about the buffer attached in the very same commit has been rendered. Which is totally wrong. The frame callback's only purpose is to notify client about the good time to start preparing the **next** frame (if any). Accordingly to the official specification, https://wayland.app/protocols/wayland#wl_surface:request:frame > The frame request will take effect on the next wl_surface.commit. > The notification will only be posted for one frame unless requested again. Thus saying, wl_surface.frame+wl_surface.commmit is a perfectly formed command sequence to get the frame callback. No buffer attach is required! Change-Id: I22bed4055858a1261e7cc26592109c056a42ffc6 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Bump wl_compositor support to v5Konstantin Ritt14 days3-3/+19
| | | | | | | | | | | For wl_surface version is 5 or higher, passing any non-zero x or y to wl_surface.attach is a protocol violation, and will result in an 'invalid_offset' error being raised. The x and y arguments are ignored and do not change the pending state. To achieve equivalent semantics, use wl_surface.offset. Change-Id: I70f72c747d8f8666e1437050d4b0e9227c439f6d Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Add some wl_surface protocol compliance checksKonstantin Ritt14 days1-2/+8
| | | | | Change-Id: I417b25de59fe8b03d52d1c29e4d423d668ddb33e Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Ignore unsupported wl_surface buffers transformsKonstantin Ritt14 days1-1/+11
| | | | | | | | | As we do not support flipped transforms (yet?), ignore them for QWaylandSurface just like we do in other places (see QWaylandScreen and QXdgPopup for example). Change-Id: I2fd33bd4bdbf245d0d9423142dfaa7d1e49b020d Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-12-021-3/+3
| | | | | Change-Id: I94bd5a5aa95fda0525b686f86915fbe854ad02f3 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Mark the module as compatible with QT_NO_URL_CAST_FROM_STRINGAhmad Samir2025-12-011-0/+1
| | | | | Change-Id: I18e56bffe827994edf894617dbf2747be3716fdb Reviewed-by: Marc Mutz <marc.mutz@qt.io>
* .cmake.conf: set QT_EXTRA_INTERNAL_TARGET_DEFINES in one commandAhmad Samir2025-12-011-3/+5
| | | | | | | | More readable. Pick-to: 6.10 6.8 6.5 Change-Id: I1b297ec94b733811143634e6dfd380ab14cc0d2f Reviewed-by: Marc Mutz <marc.mutz@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-12-011-3/+3
| | | | | Change-Id: I24ffdd3c04a5a840c9f2530394e86855ff4d7bcc Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-11-281-3/+3
| | | | | Change-Id: Ia48b4718486cb7b165d54fdc1fadcf773b5c58a3 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Minor optimization to the frame callbacks handlingKonstantin Ritt2025-11-271-5/+6
| | | | | | | | | When destroyed, do not lookup the frame callback in the surface's callback list to remove it out of there if we know the list shall be emptied just a moment later anyways. Change-Id: Id1232e1659bf4e2cebbf054cdfa29928863ca005 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Do not call frameStarted() for independentFrameCallback viewsKonstantin Ritt2025-11-271-2/+4
| | | | | | | | | Add the same check as in sendFrameCallbacks(). Vsp2Layer calls frameStarted() and sendFrameCallbacks() on its own. Change-Id: I341bb1270cfe40a76e78fb46e5c2191b65a0b13b Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Ensure no views refer to the semi-destroyed outputKonstantin Ritt2025-11-271-0/+9
| | | | | Change-Id: If1ed1cd235a701a2c8b29590ecd93530790305d6 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Make buffer transform a double-buffered stateKonstantin Ritt2025-11-272-8/+14
| | | | | Change-Id: I8d96b94d020c5ed317f1f92115aa8a424d8e1d6c Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-11-261-3/+3
| | | | | Change-Id: I1735119917c168678eacd8ed0cdb754c71d479dc Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-11-241-3/+3
| | | | | Change-Id: Ie31c06c3e92315c05e52ac0fd28ac67e7cca9589 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* QWaylandQuickShellSurfaceItemPrivate: Drop unused lambda captureMichael Weghorn2025-11-221-2/+2
| | | | | | | | | | | | | | | | | Drop unused lambda capture in order to fix .../qt5/qtwayland/src/compositor/extensions/qwaylandquickshellsurfaceitem.cpp:339:18: error: lambda capture 'this' is not used [-Werror,-Wunused-lambda-capture] 339 | auto skip = [this, putOnTop, putOnBottom](QQuickItem *item) { | ^~~~~ .../qt5/qtwayland/src/compositor/extensions/qwaylandquickshellsurfaceitem.cpp:372:18: error: lambda capture 'this' is not used [-Werror,-Wunused-lambda-capture] 372 | auto skip = [this, putOnTop, putOnBottom](QQuickItem *item) { | ^~~~~ 2 errors generated. This amends c9126f06afdfb116b7ba202512c06c0bbbc93ed2. Change-Id: I89432c3e939292b183421b5952316861df2657c3 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-11-201-3/+3
| | | | | Change-Id: Ibc3ead5a98f151dfa09f1840c0b2ba963e63bc0f Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Fix surface_set_buffer_transform() for multi-output scenarioKonstantin Ritt2025-11-201-1/+9
| | | | | | | Do not assume the primary view is on a primary screen Change-Id: I74e871b9eb00dc349db5c16e1cf3067c3cd02047 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Destroy frame callbacks in construction orderKonstantin Ritt2025-11-201-2/+2
| | | | | | | | | Accordingly to the official specification, https://wayland.app/protocols/wayland#wl_surface:request:frame > For a wl_surface, the notifications are posted in the order the frame requests were committed. Change-Id: Ifa5f1701b0cb851cc620c025f6933e08a26c5a5b Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Emit defaultOutputChanged() in the same order addOutput() doesKonstantin Ritt2025-11-201-1/+1
| | | | | Change-Id: I4545914b5b6a35bf71e069ad081124ab4276c5dc Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Micro optimizations to QWaylandOutputKonstantin Ritt2025-11-202-15/+13
| | | | | Change-Id: I42611fd5df7e261439508b24da28536712e73b08 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix build with !QT_CONFIG(cursor)Konstantin Ritt2025-11-201-2/+2
| | | | | Change-Id: I3d7d0bc8a2c1e36c84775503ef4db51b7709dfc6 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-11-191-3/+3
| | | | | Change-Id: I1d3a1f5cab43a6f29a35bbf8e53c35470d201d2f Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-11-181-1/+1
| | | | | Change-Id: Ie40576028d84ed6feae447e63fd148be49b70ed5 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* WaylandTextureSharing: remove use of NO_GENERATE_QMLTYPESSami Shalayel2025-11-186-9/+51
| | | | | | | | | | | | | | | | | | Remove the use of NO_GENERATE_QMLTYPES in WaylandTextureSharing, where it seems that the plugin does not register any types, and in WaylandTextureSharingExtension, where one type gets type registered declaratively via QML_FOREIGN. Add an extra foreign types for the base types of QWaylandTextureSharingExtensionQuickExtension to avoid qmllint warnings about unresolved types. It seems to be a drawback from the Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_NAMED_ELEMENT macro, that only registers a type but not all of the base classes of a type. Task-number: QTBUG-110794 Change-Id: Ic5e2bcf95f6029422dd94deda62d158b53387a70 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Doc: Add missing property documentationPaul Wicking2025-11-1713-5/+525
| | | | | | Fixes: QTBUG-141871 Change-Id: Ifb6f528b2c46c7ce908995c2cf0093635a681de0 Reviewed-by: Topi Reinio <topi.reinio@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-11-151-3/+3
| | | | | Change-Id: Ia920e3ea49939e7d374369fb5ee9e871f2d212e8 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-11-141-3/+3
| | | | | Change-Id: Iff7f645756f2e97f359245e9087842c7cea81d93 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* compositor: fix build with -no-feature-imNick Shaforostov2025-11-132-0/+4
| | | | | | | Pick-to: 6.10 Change-Id: Ib164d9ddeb3841caaff4faa7edc0729648c8c7da Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io>
* cmake: fix build with -no-feature-wayland-compositor-quickNick Shaforostov2025-11-132-6/+11
| | | | | | Pick-to: 6.8 6.10 Change-Id: Idf6d7de1adc1cb480e1a82921c555630e89f872d Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* decorations: fix build with -qreal floatNick Shaforostov2025-11-131-4/+4
| | | | | Change-Id: I33276f7affc3329717edfdfa6c8ec0e0c0074692 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* QT_NO_AS_CONST: rename "QT_NO_AS_CONST" to "QT_NO_QASCONST"Eren Bursali2025-11-061-1/+1
| | | | | | | | | QT_NO_AS_CONST got renamed in qtbase.git in commit 03baf08d2bb9 Task-number: QTBUG-141558 Change-Id: I36ac5832da2857c0ee82ac5ba8823241f9e6b932 Reviewed-by: Kai Köhne <kai.koehne@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2025-11-051-3/+3
| | | | | Change-Id: I0ade199ecc26ad6d998cd9a9326ab0fdbdd7a22b Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Doc: Fix "Unable to parse QML..." QDoc warningsVenugopal Shivashankar2025-11-058-16/+16
| | | | | | | | | These warnings are mostly because of QML incomplete QML snippets passed to \qml...\endqml. Replaced such instances to use \code...\endcode instead. Change-Id: I90746811c9060ce374588cdd492a65414a6ddeb3 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Doc: Fix "No output generated for..." QDoc warningsVenugopal Shivashankar2025-11-054-0/+31
| | | | | | | | | These QDoc warnings are typically for a function/property doc, where its parent class/type is not documented. Majority of these cases are for members of internal classes that were never marked as \internal. Change-Id: I5c2cd7c9243ea4726467402a0759fff99454af62 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Fix support of wl_seat of version 1Konstantin Ritt2025-11-041-1/+2
| | | | | | | | | | Many test-alike clients only require the minimal version of the protocol interfaces, thus implementing a v1 interface callbacks where possible; currently, such client ends up with a "unimplemented callback" ffi error. Pick-to: 6.5 6.8 6.10 Change-Id: I1ef74dca147a75ed4285bd31ec09fcd5f475b119 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix C++20 deprecated capture of *this in [=]Konstantin Ritt2025-11-041-2/+2
| | | | | Change-Id: I1ed42ef95c14850227cbc73079ab210b068d7f4a Reviewed-by: David Redondo <qt@david-redondo.de>