summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.14.2' into 5.145.14Qt Forward Merge Bot2020-04-2115-113/+94
|\ | | | | | | Change-Id: Id1726d5c5392a6b41ff052f1c82ece2a346d24fa
| * Revert "Compositor: Warn and clean up when client hardware buffer ↵v5.14.2Jani Heikkinen2020-03-2414-113/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | integrations fail" This reverts commit 137966a6293b50f6b248d130a2e36e67df49335e. Reason for revert: QTBUG-82948 Conflicts: src/compositor/compositor_api/qwaylandcompositor.cpp src/hardwareintegration/compositor/wayland-egl/waylandeglclientbufferintegration.cpp Change-Id: I77e3265c336fbcdf47eb1aa5dc07f31ec41006b5 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * Add changes file for Qt 5.14.2Antti Kokko2020-03-101-0/+20
| | | | | | | | | | | | | | | | + 67d56a5cba4fdac8205a84bc4e3ca74d5efbb64c Avoid conflicting declaration for egl typedefs + e4e03650dbbc1f98ba90d15364d9c951a7e7506b Bump version Change-Id: I89f3c1477b1d2cea950d2e879d6966d7f337f0bb Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | examples: fix wayland/texture-sharing/custom-compositorPeter Seiderer2020-04-061-0/+4
|/ | | | | | | | | | | | | | | | | | Fixes: main.cpp:83:33: error: ‘GL_RGBA8’ was not declared in this scope; did you mean ‘GL_RGBA4’? 83 | *glInternalFormat = GL_RGBA8; | ^~~~~~~~ | GL_RGBA4 main.cpp:120:33: error: ‘GL_RGBA8’ was not declared in this scope; did you mean ‘GL_RGBA4’? 120 | *glInternalFormat = GL_RGBA8; | ^~~~~~~~ | GL_RGBA4 Task-number: QTBUG-83304 Change-Id: I0515f3303b08c405d162986e280e9a7bd35e28f7 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix broken Qt Wayland Compositor QML Types pageKai Koehne2020-03-091-1/+1
| | | | | | | \qml and \endcode do not match. Amends a658a10f6a42e67 Change-Id: I9ed069a255a8843ecc4192172bbd645cea488a34 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Fix installing qtwayland without qtquick or opengl supportKai Koehne2020-03-061-3/+1
| | | | | | | | | | | | | | Unconditionally generate qwayland-server-qt-texture-sharing-unstable-v1.h, even if the header file will not be used. It is listed in syncqt.profile though, and because of private_headers.CONFIG += no_check_exist in extensions.pri qmake will unconditionally generate an install rule. Fixes: QTBUG-82569 Change-Id: I5125382f1e4fc61936515e045a7e6a4a3c608451 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Bump versionAlexandru Croitor2020-02-021-1/+1
| | | | Change-Id: Ib72ac5ffc11e3ede3f747bdfbe74d3037d16b323
* Merge remote-tracking branch 'origin/5.14.1' into 5.14Qt Forward Merge Bot2020-01-271-0/+34
|\ | | | | | | Change-Id: I276371cd0eb2c4c550a8f26a225712a648962900
| * Merge 5.14 into 5.14.1v5.14.1Kari Oikarinen2020-01-151-2/+5
| |\ | | | | | | | | | Change-Id: I1a29dac00e66671e019fa7fdf60fe4894a6522a5
| * | Add changes file for Qt 5.14.1Johan Klokkhammer Helsing2020-01-101-0/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | + 09861f0081e6729383808ac4803c7fd1f0ba6dd1 Fix detection of linux-dmabuf + 36974955d13578071387695adb13a47be33e4d32 Avoid animating single frame cursors + ce06115da6bf4c8d891ff0aa382dd2b1f5b4bf65 Add client test for touch down and motion in same frame + c2105d8b7e16cc934b886537968228f6300bf4bc Fix compilation of linuxdmabuf compositor plugin + 6e9d6f166dec65e91b4dbf73ccb60170e0a56dc8 Client: really use OpenGL ES 2 API for decoration blitter + d0137d3c48882a6f52de9fab93c3b02c0cff8282 Client tests: Fix missing frame event + 7c0833f4bc22d2d947c793f0711e3f1e1a09012c Client: Always close popups when hiding a window + 1d0863049111926e0ff827cf17f3a7087d53c5c3 Add client test for hiding the toplevel parent of a popup + a2be69d47884dd995ac6e9004ba2855f354f7522 Client: Fix detection of linux-dmabuf + 99daf1ce6f328ed5419df93e5dc7e02e31d54be9 Bump version + 80ed5501cf5dcc4b6ef2a1a126d9d564c1c73851 Client: Fix inverse repeat rate implementation + ce15889614f87b5986f997beffd2826471adfe51 Drive cursor animation with a timer + f7e035446355d9cb90141e508b5d33e019e14add Stop using modern C++ Change-Id: Ic94102c60c9513d331790a1d2434895eb17f5ff1 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Avoid conflicting declaration for egl typedefsSamuli Piippo2020-01-201-0/+2
| |/ |/| | | | | | | | | | | | | | | | | The EGL typedefs may have alternative declaration on some platforms, such as NVIDIA, which cause build errors. Add guards around the typedefs to avoid re-declaration. Task-number: QTBUG-79709 Change-Id: I14f09c94e159ef51dd858f0877fe610ce6f582d4 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | Avoid potential double deletionPaul Olav Tvete2020-01-091-2/+5
|/ | | | | | | | It's not safe to use qDeleteAll on lists that change when elements are deleted. Change-Id: I7ec5b41da9eea839d1bda88bde621cc73a27927f Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Stop using modern C++Johan Klokkhammer Helsing2019-12-311-1/+1
| | | | | | | | Fixes compilation errors with c++11. Fixes: QTBUG-81024 Change-Id: I13ae380a122a2d52b7b362a7a39e661a22c74afc Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Drive cursor animation with a timerJan Alexander Steffens (heftig)2019-12-172-3/+36
| | | | | | | | | | | | | | | | | | | Using only wl_surface_frame callbacks to update the cursor does so much more often than needed. In addition, at least GNOME and Weston fire the callback for the cursor surface immediately, which ends up updating the cursor at over 3000 Hz here. Use wl_cursor_frame_and_duration to drive a single shot timer. This function is also guaranteed to return 0 for single frame cursors, so we can avoid starting the timer at all. We wait for both the surface frame callback and the timer to fire before updating the cursor for the next frame of animation. This reduces our update rate to the frame rate of the cursor or the rate requested by the compositor, whichever is lower. Change-Id: I10277460ebe9b547ebaf7f73424b9ef17614107f Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Client: Fix inverse repeat rate implementationJohan Klokkhammer Helsing2019-12-171-1/+1
| | | | | | | | | | | | | | | | | The rate from wl_keyboard.repeat_info was used as if it was an interval. Fixed by converting from key strokes per second to milliseconds per key stroke. This fixes a regression, as repeat rate used to be hard-coded to something sensible before. [ChangeLog][QPA plugin] Fixed keyboard repeat rate being set inversely, so higher rates would actually result in fewer characters per second, and vice versa. Fixes: QTBUG-80613 Change-Id: Ie783b90cba13dde6f37c0cd1be584d352cddfe7c Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Bump versionDaniel Smith2019-12-161-1/+1
| | | | Change-Id: I7b0e2ed2bf62118f05f54620f17b803daae4f4cc
* Client: Fix detection of linux-dmabufJan Alexander Steffens (heftig)2019-12-151-1/+1
| | | | | | | | Change I84c8c1008724b49b6bedb4fc3ef398e292f1c6c7 fixed the tests in compositor/configure.json but missed the test in client/configure.json. Change-Id: I65ad424406438baa74ca80a9418e133510142118 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Merge remote-tracking branch 'origin/5.14.0' into 5.14Qt Forward Merge Bot2019-12-131-0/+64
|\ | | | | | | Change-Id: I542cb7bc85e9f1154bba9307dc4d847cd98b3895
| * Add changes file for Qt 5.14.0v5.14.0-rc2v5.14.0-rc1v5.14.0Johan Klokkhammer Helsing2019-11-261-0/+64
| | | | | | | | | | Change-Id: I7cdc6b48ad0a44a2a5eb4dbe1ae37c0e52126f5d Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Add client test for hiding the toplevel parent of a popupJohan Klokkhammer Helsing2019-12-061-0/+45
| | | | | | | | | | | | | | | | This used to cause undefined behavior. Task-number: QTBUG-80562 Change-Id: I0397b7b304f316616d2a713063bc5a634dc081bc Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Client: Always close popups when hiding a windowJohan Klokkhammer Helsing2019-12-061-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | It's not just popups that may have popups open on them. Always close open popups when hiding a window to prevent dangling pointers. [ChangeLog][QPA plugin] Fixed a crash when re-showing a popup after hiding its parent. Fixes: QTBUG-80562 Change-Id: I7cdac5c7a30e0add5ebf00259401e4d74626ce96 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: David Edmundson <davidedmundson@kde.org>
* | Client tests: Fix missing frame eventJohan Klokkhammer Helsing2019-12-051-1/+1
| | | | | | | | | | Change-Id: I8bda37560ff8b3c97699831427b0a148f8a5970c Reviewed-by: David Edmundson <davidedmundson@kde.org>
* | Client: really use OpenGL ES 2 API for decoration blitterPeter Seiderer2019-12-041-1/+1
| | | | | | | | | | | | | | | | | | | | Really use (as the comment states) the OpenGL ES 2 API for the decoration blitter. Task-number: QTBUG-80356 Change-Id: I4c923343e721a824521fb9b2b36be5d2de984325 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io> Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | Fix compilation of linuxdmabuf compositor pluginJohan Klokkhammer Helsing2019-12-041-0/+4
| | | | | | | | | | | | | | | | Mesa's eglext.h no longer includes eglmesaext.h, so copy over the typedefs we need. Fixes: QTBUG-79709 Change-Id: I3190ef56e0e162636efea440dff7e760cf11fcd0 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | Add client test for touch down and motion in same frameJohan Klokkhammer Helsing2019-11-291-0/+33
| | | | | | | | | | | | | | Task-number: QTBUG-79744 Change-Id: Ibb8239b4f53a345105bee3cc7a0fb4b777cabf9b Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Avoid animating single frame cursorsDavid Edmundson2019-11-283-16/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently to determine if a cursor is animated or not we check the cursor theme delay. This doesn't work in practice as by default many cursor themes have a delay of 50 set even if they don't animate. This comes from xcursorgen which specifies a delay of 50ms if there isn't anything set in the config. (https://github.com/freedesktop/xcursorgen/blob/master/xcursorgen.c#L92) Given many themes will have a delay we should also check the number of images in a given cursor. In order to do that without a double lookup QWaylandCursor needed to return the native wl_cursor, not wl_cursor_image and move the relevant logic. Change-Id: Ie782ace8054910ae76e61cab33ceca0377194929 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | Fix detection of linux-dmabufJohan Klokkhammer Helsing2019-11-263-4/+4
|/ | | | | | | | | | | | On some systems drm_fourcc.h is not in /usr/include, but in /usr/include/libdrm, and that path can be found through pkg-config. This is already done with the drm lib in qtbase/src/configure.json so this just tells the test (and the plugins) to use the include paths for the existing "drm" lib. Fixes: QTBUG-80075 Change-Id: I84c8c1008724b49b6bedb4fc3ef398e292f1c6c7 Reviewed-by: Andreas Cord-Landwehr <cordlandwehr@kde.org> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Fix spelling of linuxaccessibility_support-privateJohan Klokkhammer Helsing2019-11-181-2/+2
| | | | | | | | Fixes issues with the cmake conversion tool. Task-number: QTBUG-78177 Change-Id: I49edbcba7494d1916cf6bf976148c9433615d8a0 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Doc: Fix documentation warningsTopi Reinio2019-11-1311-24/+89
| | | | | | | | | | | | | | | Add missing function and function/qml method parameter documentation, linking issues, and other minor tweaks. QDoc fails to parse a Q_PROPERTY if the property type includes the keyword 'enum' - fix that in the header file for QWaylandXdgToplevel::DecorationMode. These changes bring the currect warning count to zero. Fixes: QTBUG-79817 Change-Id: I302b110eb91858f06e9cd410872a12365d421a8e Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-11-123-9/+9
|\ | | | | | | Change-Id: I24b2eade3e8946a654ef6cf3d02ea95255aa1c00
| * Fix race condition in tests on xdg_toplevel configure5.13Johan Klokkhammer Helsing2019-11-072-8/+5
| | | | | | | | | | | | | | | | Tests should not use non-direct connections, as that means tests can run when the compositor is not locked. Change-Id: I7b1f0e3bb866db540f72307ad96f778ec0edd7ee Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| * Fix touch being ignored when down and motion are in the same frameJohan Klokkhammer Helsing2019-11-051-1/+4
| | | | | | | | | | | | | | | | | | | | The Wayland protocol gives no guarantees about which events are part of a frame, so handle the case where we receive wl_touch.down and wl_touch.motion within the same frame. Fixes: QTBUG-79744 Change-Id: I5dd9302576d81da38e003c8e7e74da6a98def603 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Coin: Make sure lib/libQt5WaylandCompositor.so gets split outJohan Klokkhammer Helsing2019-11-061-0/+1
| | | | | | | | | | | | Task-number: COIN-349 Change-Id: I62a888a72948dfb15d6210a6ede39d2fdde30f21 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* | Add configuration file to help the coin ExportTool to split the contentv5.14.0-beta3Simon Hausmann2019-11-051-0/+11
| | | | | | | | | | | | | | | | | | | | | | By default all files shall be in the base package, but additional packages can be specified in the top-level object by name along with python glob.glob compatible masks. Task-number: COIN-349 Change-Id: Ic0e2bae67d7c8a596f249ce527bb58c0a50d7ab2 Reviewed-by: Johan Helsing <johan.helsing@qt.io> Reviewed-by: Antti Kokko <antti.kokko@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Liang Qi2019-11-056-5/+75
|\| | | | | | | | | | | | | | | Conflicts: src/client/qwaylanddisplay.cpp src/client/qwaylandwindow.cpp Change-Id: I30ddf5305b3087b93cf4d6e562fd0146dea61cc0
| * Add client test for subsurface with hidden parentJohan Klokkhammer Helsing2019-11-041-0/+23
| | | | | | | | | | | | Task-number: QTBUG-79674 Change-Id: I451ee4423dee511f41070498a61167912920c086 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| * Client: Fix crash when showing a child window with a hidden parentJohan Klokkhammer Helsing2019-11-042-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QPA plugin] Fixed a crash when showing a window with a hidden parent. Now we just avoid creating the subsurface, so nothing is shown. Seems to be the same behavior as on xcb. Fixes: QTBUG-79674 Change-Id: Ia46fcd9a0da5aad4704816a41515cb1e128ac65f Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| * Add basic client test for subsurfacesJohan Klokkhammer Helsing2019-11-043-1/+43
| | | | | | | | | | Change-Id: I1ef21287933a2afccad989f47e4fe59329b6f537 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| * Client tests: Fix flaky deadlockJohan Klokkhammer Helsing2019-10-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes the test would wait indefinitely in the compositor constructor, while also waiting in the compositor thread for m_ready to become true. m_ready is set to true in applicationInitialized(), which is supposed to be called from the client thread after QGuiApplication has been created (and also after the MockCompositor constructor has returned). I.e. the problem is that the wake in MockCompositor::run may sometimes happen before the MockCompositor::MockCompositor starts waiting. Move the wake inside the pre-initialized compositor loop. Essentially waking every 20 ms until the application is initialized. Fixes: QTBUG-66570 Change-Id: Ia5eba5d08ce4d1d3eeca99eae6cfa7d9d4fd5a0b Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Johan Klokkhammer Helsing2019-10-314-3/+73
|\| | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: If2159587c5183fcf57558f045bd9af2f25c8289f
| * Set temporary XDG_RUNTIME_DIR for more testsJohan Klokkhammer Helsing2019-10-313-3/+6
| | | | | | | | | | | | | | | | | | Some tests were left out when we switched to using a temporary XDG_RUNTIME_DIR. Fixes: QTBUG-79652 Change-Id: I8208d63f3f6a937406d25b1a8cf3f5b0be04bc73 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
| * Merge remote-tracking branch 'origin/5.13.2' into 5.13Qt Forward Merge Bot2019-10-302-1/+68
| |\ | | | | | | | | | Change-Id: I677effc9e146875049ac28f094f1a129f27755d8
| | * Add changes file for Qt 5.13.2v5.13.2Johan Klokkhammer Helsing2019-10-151-0/+67
| | | | | | | | | | | | | | | Change-Id: Icfb0c2bcbf6ae9705da93480c8113fe5baccf33a Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| | * Bump versionFrederik Gladhorn2019-10-141-1/+1
| | | | | | | | | | | | Change-Id: I5c9a25629d55b97d839904f73b3bf5cf91ce337e
* | | Compositor: Use logging category in egl client integrationJohan Klokkhammer Helsing2019-10-301-16/+29
| | | | | | | | | | | | | | | Change-Id: I5ad3663b3710b939f08798abad3bc985ab460e88 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Compositor: Warn and clean up when server buffer integrations failJohan Klokkhammer Helsing2019-10-2813-36/+53
| | | | | | | | | | | | | | | | | | | | | | | | Makes it consistent with how client buffer integrations work. Also doesn't leave partially initialized integration around for the compositor to use. Change-Id: I6ff898639b958f62330879a2eff1acbc7e5cdb1f Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Remove unused variable WaylandEglClientBufferIntegrationPrivate::validJohan Klokkhammer Helsing2019-10-281-2/+0
| | | | | | | | | | | | | | | Change-Id: I489267d8378cbcaf7ae7cd8eee48d4e2a71ca91a Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* | | Update plugins.qmltypes for 5.14Johan Klokkhammer Helsing2019-10-281-1/+48
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-78690 Change-Id: Id6208ff504894844e3eee5bb5c21ddb07c456cfe Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-10-264-3/+6
|\| | | | | | | | | | | Change-Id: Ie283d8861ecf11f21621ab18efdc780143559b52
| * | Client tests: Set WAYLAND_DISPLAYJohan Klokkhammer Helsing2019-10-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The tests would previously fail if WAYLAND_DISPLAY was set to something other than empty or wayland-0. For instance when running multiple compositors and trying to run the tests, they would fail because they create a compositor on wayland-0 (using wl_display_add_socket_auto()), but would try to connect to wayland-1 due to the env var. Change-Id: I7771d41737410d5c32f5a6db3de4987096cb4d22 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>