summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-09-231-2/+2
| | | | | Change-Id: Ia01d88d0631bd5e93b71187412e9d6b1d82edee0 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Call `finishDrag()` in `QWaylandDataDevice::dragSourceCancelled()`Fushan Wen2022-09-221-0/+1
| | | | | | | | | | | | | Drags can either get finished or cancelled. If a drag is finished successfully we call finish on the QBasicDrag instance, which quits the nested event loop. This patch adds the connection for cancelled drags. See also: https://bugs.kde.org/show_bug.cgi?id=446111 Pick-to: 6.4 6.2 5.15 Change-Id: Ib93040648da88a433d647c87adcb7a7fabcaef6c Reviewed-by: Liang Qi <liang.qi@qt.io>
* Client: fix enlargening window position by margins sizeIlya Fedin2022-09-201-2/+1
| | | | | | | | | | | | | | | In d89c8920f3b82dd2098971b5a66c4b9c75da5af0 it was changed to sum the current geometry with the margins. This makes Qt thinking that the window is moving on every configure request and makes the previous fix (5f8db38e49b5bee4962fa9ac048c23a3faae587b) actually no-op I'm not sure why it was changed as the commit is squashed, but I hope the intention wasn't to make Qt think the window is endlessly moving (exactly that happened though) Pick-to: 6.4 6.3 Change-Id: I7cde12ea5548d59810e2631be2a0085f86d5c4b9 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-09-161-2/+2
| | | | | Change-Id: Id8e51d5e09e3e250c294ada0483e6fe32e2f61ef Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Client: skip building tests which cannot be run on webOSJanne Juntunen2022-09-151-16/+20
| | | | | | | | | | | | WebOS developers have informed us via QTBUG-106114 that opening multiple (consecutive) windows from single webOS-QtWayland client is not supported and majority of our test cases try to do exactly that, causing a segmentation fault. Therefore we need to skip these tests. Fixes: QTBUG-106638 Pick-to: 6.4 Change-Id: Ifbdb2cfb663f8eccd3d68e30445e2a0f39b11355 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Hold surface read lock throughout QWaylandEglWindow::updateSurfaceDavid Edmundson2022-09-121-2/+4
| | | | | | | | | | | | | | | | | QWaylandEGLWindow::updateSurface is called from both the main and render threads. It is called on the render thread when making the surface current, which could be after the window is hidden if there are cleanup jobs to be done. Whilst the getter wlSurface() holds a read lock, it's not enough as we need the instance alive between the two calls and throughout the mesa code. This potentially fixes a crash seen in mesa where we crash creating a surface for an invalid wl_surface object. Change-Id: I497356e752ffaf3549d174f10c4c268234b02cbd Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Remove dummy test instructionsToni Saario2022-09-081-4/+0
| | | | | | | These cause Coin to spawn VM for setting one env variable. Change-Id: I5c535cbb7b33334b475ded43e38ec7b976dfe259 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Use CRLF line delimiter for text/uri-list dataAlexandros Frantzis2022-09-051-1/+1
| | | | | | | | | | | | | | | | | According to RFC 2483, which describes text/uri-list, the line delimiter must be CRLF (instead of the currently used LF). Some applications strictly expect the CRLF delimiter and fail to properly parse the uri-list otherwise (e.g., WineX11/XWayland). https://datatracker.ietf.org/doc/html/rfc2483 5. The text/uri-list Internet Media Type The format of text/uri-list resources is: 3) As for all text/* formats, lines are terminated with a CRLF pair. Pick-to: 6.4 6.3 6.2 5.15 Change-Id: I7c062224a9060028ab6293fdf172692ade28cca5 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Client: clear focus on touch cancelDavid Edmundson2022-09-054-0/+39
| | | | | | | | | | | | | | When we get a touch_cancel event all touches should be treated as lifted. The next frame call focus is set, with no pending touch points but without having gone through touch_up. We call mPendingTouchPoints.last() without guards even though it is potentially now empty. Change-Id: I3719f9507c5d397d8641692271d878076b7c23b8 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-09-021-2/+2
| | | | | Change-Id: I6d89b5137d6da28b0aeeeaf0d2f0913ff0bfa658 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-08-301-2/+2
| | | | | Change-Id: Iaad86bc8c76a4082dbf9ab4502418f9b57df605c Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-08-251-2/+2
| | | | | Change-Id: I8125fc5682b091521814ba99de19a2b765a31796 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Change the license of all CMakeLists.txt and *.cmake files to BSDLucie Gérard2022-08-23119-119/+119
| | | | | | | 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>
* Coin: adjust compositor split rulesAntti Kokko2022-08-231-1/+2
| | | | | | | | | | Due to changes in build configuration 'Qt6WaylandTextureSharing*.cmake' files need to be included in the compositor package. Pick-to: 6.4 Task-number: QTBUG-105722 Change-Id: I03a0072227ce6d9cf85f01c523da516b27a577fc Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Client: add custom margins support to xdg popupsIlya Fedin2022-08-233-3/+11
| | | | | | | | | | 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>
* Remove Cpp.ignoretokens, Cpp.ignoredirectives from .qdocconfKai Köhne2022-08-221-3/+0
| | | | | | | | qdoc's new clang backend does not use them anymore. Task-number: QTBUG-104903 Change-Id: Id3ae854816cde9983987c840705e526e3a7f5f28 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-08-201-2/+2
| | | | | Change-Id: I4366b944577050527ab70312884a3685d9fff1f0 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Avoid calling requestUpdate from wrong threadEskil Abrahamsen Blomfeldt2022-08-171-1/+5
| | | | | | | | | | | | | | | | In certain circumstances, we can get to createDecoration() from the render thread (from QWaylandGLContext::makeCurrent) Calling requestUpdate() from this secondary thread would cause an assert, so we queue the call on the appropriate thread instead. This amends af7b60ade5c4be81cbc58eb18307c017d5594071. Pick-to: 5.15 6.2 6.3 6.3.2 6.4 Fixes: QTBUG-105308 Change-Id: I4805265f39e24eb1464897532be2025bc3c27728 Reviewed-by: Inho Lee <inho.lee@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-08-161-2/+2
| | | | | Change-Id: I6551c819d032e9d2955325db9b185132397e9242 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-08-121-2/+2
| | | | | Change-Id: Ifb01aa2b78413505c032f7f82cd49604d7563b43 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* QWaylandGLContext: print the 0x prefix in error codeThiago Macieira2022-08-101-2/+2
| | | | | | | | | So it's not ambiguous that this is hex, in messages like: "WARNING: QWaylandGLContext::makeCurrent: eglError: 3003" Pick-to: 6.4 Change-Id: Ie4bb662dcb274440ab8bfffd1709ba0415c3d790 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix build of manual testsJoerg Bornemann2022-08-033-82/+17
| | | | | | | | | | | Some manual tests were converted by pro2cmake and looked like example projects and tried to install into examples. Use qt_internal_add_manual_test for those. The qml-client test referred to a header file that has been renamed. Change-Id: I8f735f46c811355cc2a0f226cb33c6ca09cb3ac4 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Provide a handle for desktop portal via xdg-exporterDavid Redondo2022-07-2910-1/+359
| | | | | 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>
* Fix several more improperly placed #include mocThiago Macieira2022-07-281-2/+1
| | | | | | | | | | | | | | Like commit qtbase/638893bea083b619b73b33a7dd5589fb2c4c4242. Script to find them: git grep -l '#include.*moc' \*.cpp \*.mm | \ xargs awk '/QT_BEGIN_NAMESPACE/ { i=1 } /QT_END_NAMESPACE/ { i=0 } /#include.*moc/ && i { print ARGV[ARGIND], $0 }' Pick-to: 6.4 Change-Id: I6f936da6f6e84d649f70fffd17058fd05cfc5c6d Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* CMake: Don't use PUBLIC_LIBRARIES for tests and test helpersAlexandru Croitor2022-07-2824-26/+26
| | | | | Change-Id: I95f27e29fdee60acecba4fbba9b1b77c1680cee5 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-07-281-2/+2
| | | | | Change-Id: Ia7747f14c5827de2457fe48a138f0088d71f6ba1 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Only close popup in the the hiercharyWeng Xuetian2022-07-245-26/+127
| | | | | | | | | | | | | | | | | 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>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-07-191-2/+2
| | | | | Change-Id: Ie5818e14d5e818f9581df8c2ce24a1155f6aad1d Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Client: Expose a way to set window margins via native interfaceIlya Fedin2022-07-194-2/+40
| | | | | | | | | | | | The lack of such API is a big hassle to me since a long time. All that time I was forced to have my own fork of the xdg-shell plugin in the application code in order to have shadows on Wayland with custom client-side decorations. I hope I won't have to maintain the fork anymore. Pick-to: 6.4 Change-Id: Iaf498469843b5cac5c458049164065c4ef15877d Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-07-151-2/+2
| | | | | Change-Id: I9e8d6df9d18235afd0730285825b2867a4bd142a Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Also use text-input if QT_IM_MODULE is empty or "wayland"Weng Xuetian2022-07-134-3/+12
| | | | | | | | | | | | | | Previously, text input can only be used when only when QT_IM_MODULE is unset, it is counter-intuitive when empty and null has different meaning. Additionally making "wayland" to use text input to make it easier to enforce wayland context. Gtk's relevant value is also "wayland" so it will be more consistent. Pick-to: 6.4 6.3 6.2 Change-Id: I39b8c899b0ab7965d4b17ca29ed9eadc14f17e88 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-07-121-2/+2
| | | | | Change-Id: I2c7f261dce031d50ea1bc94a092b028abb92dbf6 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.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-08119-0/+357
| | | | | | | | | | | | 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>
* Doc: Do not advertise Qt module includeKai Köhne2022-07-081-6/+0
| | | | | | | | | People should rather use class includes, like they are advertised in each class documentation. Pick-to: 6.4 Change-Id: Ied028bcedc3c82ec85ff0c7d6ef35958abf52835 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Use QColor::fromString instead of some deprecated functionsJiDe Zhang2022-07-052-5/+5
| | | | | | | | | It's a follow-up of a series changes from 78b6876974d2cea087cb229257097052dad5fcf7 in qtbase. Pick-to: 6.4 Change-Id: I4ad19b07489630a4648b5d6ca4a8c074ed88827b Reviewed-by: Liang Qi <liang.qi@qt.io>
* Fix some build warningsJiDe Zhang2022-07-041-6/+6
| | | | | | Pick-to: 6.2 6.3 6.4 Change-Id: I61edd5ab0f4383930ad37916e4cec4ab714274d4 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Check m_dragFocusResource for nullptr in DataDevice::dragMoveRoman Genkhel2022-06-301-2/+2
| | | | | | | | | | | | We encounter situation where 'dragMove' was called for DataDevice`s instance, but 'data_device_start_drag' did not called or 'drop' was called before, because even all m_drag* pointers including m_dragOrigin were nullptr Pick-to: 6.3 Change-Id: Ic435286a77e273167b1aa812cbf18a7fbf3489f2 Reviewed-by: Elvis Lee <kwangwoong.lee@lge.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* client: Respect initial size when only one component is setEskil Abrahamsen Blomfeldt2022-06-301-4/+7
| | | | | | | | | | | | We would ignore the initial size of the window if only either the width or height were set and the other was left at 0. Instead of using isEmpty() for checking if the geometry is valid, we check the width and height individually. Pick-to: 6.4 Task-number: QTBUG-66818 Change-Id: Ib2a22443fd6b88175599da08651fa72c921ea485 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* CMake: Get rid of a few warningsAlexandru Croitor2022-06-292-2/+2
| | | | | | | | | | | 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>
* add an interface to customize modifiersMap for zwp_text_input_v2Inho Lee2022-06-293-0/+35
| | | | | | | sendModifiersMap can be used for setting modifiersMap Change-Id: I786140d14adacd05b89c7fe9599933bfba55f054 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Implement send_modifiers_map for zwp_text_input_v2Inho Lee2022-06-292-3/+28
| | | | | | | | | | zwp_text_input_v2's modifiers_map was used in client but QWaylandCompositor does not care about it. Pick-to: 6.4 6.3 6.2 5.15 Fixes: QTBUG-104227 Change-Id: I78ff56f84b5380e74649a0a8de99eaffd8a359ab Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Remove unused variablesEskil Abrahamsen Blomfeldt2022-06-283-4/+0
| | | | | | | | | They appear to have been around and unused forever, but I've started getting warnings (-are-errors) about this. Pick-to: 6.4 6.3 6.2 5.15 Change-Id: I2f3006aa47de24927d7edd2d7f43cff78f965f87 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-06-241-2/+2
| | | | | Change-Id: I01555bca664451ad81b63bbdef2001c37511b511 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* CMake: Replace deprecated keyword in qt_internal_add_module callJoerg Bornemann2022-06-221-1/+1
| | | | | | | | Use CLASS_NAME instead of CLASSNAME. The latter will be removed in the future. Change-Id: I740f945a8dede80e89dd28ed49bf7a37a35df21f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Keep toplevel windows in the top left corner of the screenDavid Redondo2022-06-224-1/+20
| | | | | | | | | | | | | | | | 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>
* Client: fix license in two filesThiago Macieira2022-06-212-2/+2
| | | | | | | | | | | This amends d89c8920f3b82dd2098971b5a66c4b9c75da5af0. The client library is LGPL. Probably a copy & paste error. Pick-to: 6.3 6.4 Change-Id: I6d3880c7d99d4fc494c8fffd16fa869e524d5ac2 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Update dependencies on 'dev' in qt/qtwaylandQt Submodule Update Bot2022-06-211-2/+2
| | | | | Change-Id: I85a0de8f843713320d4583746a925552b8983332 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Fix build with libcxx (missing array include)Sam James2022-06-201-0/+2
| | | | | | | | | Bug: https://bugs.gentoo.org/833488 Task-number: QTBUG-104435 Change-Id: I06384761a5560b81b675e6c4ae498bb93dcb4f4f Pick-to: 5.15 6.2 6.3 6.4 Reviewed-by: Marc Mutz <marc.mutz@qt.io>