| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Fixes: QTBUG-87313
Change-Id: I99c0b08d908cffe271b555e0696af5fba3fb8780
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This amends d58008c431 which changed the number of arguments QWindow
takes. The brcm-egl integration was not updated for these changes.
Pick-to: 5.15
Fixes: QTBUG-86109
Change-Id: I14ad2e5d6a62f5f285d01a4fcd47a34bf9495cf9
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Allow compositors to support more than one type of hardware client
buffer integration.
[ChangeLog][QtWaylandCompositor] QtWaylandCompositor now supports
multiple client buffer integrations. QT_WAYLAND_CLIENT_BUFFER_INTEGRATION
will now accept a semicolon-separated list.
Fixes: QTBUG-68846
Change-Id: Iff1fa0a45b01f6a45dd744c37a89bac7d5e70658
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
| |
Change-Id: I6111cd2e280a7cff610d3f89d51fb3964d61b51f
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
| |
Change-Id: I8e39d87361728c81b526f1ad89b45136500c9913
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Since 6ff7947 we have a new way of querying for native context.
Rewrite some methods to reuse base implementation.
[ChangeLog][Client] Using EGL_KHR_surfaceless_context when querying
the surface format, if not supported falling back to temporary wayland surface.
Change-Id: I276e4b1108a703fb3cf1587db007537e3f36b2fe
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
|
|
|
|
|
|
|
| |
QWaylandGLContext is usead only by wayland-egl. Move
window decoration check to client buffer platform integration.
Change-Id: If26811cd017066afa2508e2f33b33a0fa0b690b3
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
| |
- moving linuxaccessibility/xkbcommon/eglsupport/glxsupport to QtGui
- event refactoring
Task-number: QTBUG-83255
Change-Id: Ic82ee6ef5652413781468edb58c601ee7dce2e3b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-84469
Change-Id: I4bc7b2eb2913fc828f09f96e21480b76cabf8656
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In case of a driver that does not properly indicate its capability of
supporting non-blocking eglSwapBuffers() call, the need arises to be
able to manually force the resolution of that check.
New environment variable QT_WAYLAND_FORCE_NONBLOCKING_SWAP_SUPPORT
added. If it is defined to 0 (i.e. false), the non-blocking swap
support is forced to behave as if the driver had been detected not to
be supported. Equally setting it to 1 causes the non-blocking swap
support resolution to remain true (default) even if driver reports it
does not support it.
[ChangeLog][Client] Added support for environment variable
QT_WAYLAND_FORCE_NONBLOCKING_SWAP_SUPPORT, which can be used to force
the resolution of detecting if EGL driver supports non-blocking
eglSwapBuffers call. If you encounter application freezing while
waiting indefinitely for a buffer swap, then try setting variable to 0.
Task-number: QTBUG-84226
Pick-to: 5.15
Pick-to: 5.12
Change-Id: I92dc505d12daf4d78dc18e4f85f3a55ecdf109f3
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes:
wayland-brcm-client-protocol.h: In function ‘wl_buffer* qt_brcm_create_buffer(qt_brcm*, int32_t, int32_t, wl_array*)’:
wayland-brcm-client-protocol.h:115:29: error: ‘wl_buffer_interface’ was not declared in this scope; did you mean ‘qt_brcm_interface’?
115 | QT_BRCM_CREATE_BUFFER, &wl_buffer_interface, NULL, width, height, data);
| ^~~~~~~~~~~~~~~~~~~
| qt_brcm_interface
Task-number: QTBUG-83305
Change-Id: I16789c5df73e8f17ad98d91cadf2478d39dcba9e
Pick-to: 5.15
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
|
|
|
| |
QtVulkanSupport module has been removed and its content was merged
into QtGui and QtOpenGL in 7a1650e34331f87bab5a9372087d2a1135f9f63a
in qtbase.
Change-Id: I33b567208aebfeb15350ea088cb7fcd092e2a48a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
|
|
|
|
| |
Change-Id: Id8b900b9f7b9442423cc7dab60dced9290f207dd
Reviewed-by: Johan Helsing <johanhelsing@gmail.com>
|
|\
| |
| |
| | |
Change-Id: Ie2b6b40e3ad1e753f051a12c0296206cc884352b
|
| |\
| | |
| | |
| | | |
Change-Id: I7341fbfbe7c3eeae44a7fea0bf534fda1180ac51
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Semantically we want things in this order as wl_egl_window_create takes
a reference to the wl_surface. Teardown typically is the opposite of
construction.
This brings us in line with GTK which also tears down in this order.
This fixes a repeatable crash when using Nvidia's EGLStreams and closing
a window.
Change-Id: I356dfbba9a7315717c8ecdc7023ca7b047622697
Reviewed-by: Frederik Gladhorn <gladhorn@kde.org>
Reviewed-by: Johan Helsing <johanhelsing@gmail.com>
|
| |/
| |
| |
| |
| |
| |
| |
| | |
waylandeglstreamintegration.cpp:248:121: warning: 'hex' is deprecated: Use Qt::hex [-Wdeprecated-declarations]
Change-Id: I99ab0f318b1c43b89888fffd160b5b6abebe48f2
(effective cherry-pick of 671f73bb1f26cf1d8daa1d33f01fc15fd1e9f62e)
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
tests/auto/client/xdgoutput/tst_xdgoutput.cpp
Regenerated CMake projects.
Removed duplicate wayland source in
tests/auto/client/xdgoutput/xdgoutput.pro. It's still
referenced via the included shared.pri file. Regenerated
the CMake project to adapt to that. Otherwise the CMake
project fails to configure due to duplicate rules with
a error like the one below
CMake Error at src/compositor/Qt6WaylandCompositorMacros.cmake:13 (add_custom_command):
Attempt to add a custom rule to output
tests/auto/client/xdgoutput/wayland-xdg-output-unstable-v1-server-protocol.h.rule
Also use a workaround fix for configuring CMake standalone tests
due to regression introduced by
dd7e40b1086020f6a054957f4972720cd684 in qtbase.
Change-Id: Ib364b851a1fa828c153efbf8653c9e4ef5e618cd
|
| |\
| | |
| | |
| | | |
Change-Id: I82c07ab72138774a0809bf60f0f3251d32923847
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The Khronos headers may be recent enough to have the ifdefs but
implementation might still be missing on some platforms.
Don't use the extensions unless the configure test passes.
Change-Id: I23129115729567fa92bc23da099d27df598fc206
Reviewed-by: James McDonnell <jmcdonnell@blackberry.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QT_CONFIG is the new and robust way of checking the build
configuration of Qt.
Task-number: QTBUG-83467
Change-Id: Ia58b308b9b8a242df479cbd01d088204eed73a75
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Adjusted xcomposite-glx to link against X11.
Added latest Coin instructions, plus some additional logic
to skip some platforms where building wayland does not make sense.
Otherwise Coin will fail on those platforms when trying to extract
artifacts that don't exist.
Conflicts:
coin/module_config.yaml
src/hardwareintegration/compositor/xcomposite-glx/xcomposite-glx.pri
src/plugins/hardwareintegration/compositor/xcomposite-glx/CMakeLists.txt
Change-Id: I2383b0826ece841f3862f396516f402390aa42be
|
| |\ \ \
| |/ / /
|/| | |
| | | | |
Change-Id: Ia76896a4d06240ccc3d95ba478b6ce273c7a0be2
|
| |\ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
src/hardwareintegration/compositor/wayland-egl/waylandeglclientbufferintegration.cpp
Change-Id: I6c6e05f76abcea8a315fe3ba471c4aa2139127b5
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
libs.glx just checks if we can can link against x11 and gl, this should already
be covered by features.xlib and features.opengl.
Also, it probably makes sense to not build these plugins if Qt is configured
with no-feature-xlib.
Task-number: QTBUG-78177
Change-Id: I56ccdc80a4601ccbf03cc5e65abe0adb3a579f99
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The class is now in QtOpenGL.
Change-Id: Ifef8dfa753fb5d337d516a33fc49e610c7c8c6eb
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Several of the QOpenGL* classes we depend on has moved to QtOpenGL, add
the dependency and fix the include paths.
Task-number: QTBUG-74409
Change-Id: Iab7949dd67befaa71cf2cfa041771e93f4e47160
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\ \ \ \ \
| | |_|/ /
| |/| | |
| | | | | |
Change-Id: I62f1cbbf543021a9569e4d1e8c4f9e7c554e77f3
|
| |\ \ \ \
| | | |_|/
| | |/| |
| | | | | |
Change-Id: I4e205974d29aef0443ad7aecdb43d5ab3ee1ec64
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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>
|
|\| | | |
| | | | |
| | | | |
| | | | | |
Change-Id: Ibd911372386f9f5fddb13afa05b84af6fe422fdd
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Make EGL 1.5 with EGL_PLATFORM_WAYLAND_EXT a requirement for QNX and
add some EGL 1.5 code alternatives. Avoids the need to deal with
incompatibility problems between the QNX native display/window type
and Wayland display/window type.
Change-Id: Ib26a020e1f8c7f570c6af08697d8c8153c887294
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Dan Cape <dcape@qnx.com>
|
|\| | | |
| | | | |
| | | | |
| | | | | |
Change-Id: Id0bb84667482232cb648f4984e9f9e2ea4c360c6
|
| |\| | |
| | | | |
| | | | |
| | | | | |
Change-Id: I1f9418f4f5783291286417f6faf6277e0679007c
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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>
|
| |\| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
src/compositor/configure.json
Change-Id: Id608424a63a4bcef4adb3f66d55a3cc32c86f2a2
|
| | | |/
| | |/|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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>
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
[ChangeLog][QPA plugin] The QPA plugin now supports running with no screens
attached. This is handled by adding a fake screen when the last screen is
disconnected, similarly to what the other QPA plugins do.
Fixes: QTBUG-79111
Change-Id: I4a0e023ae784217dd030f0c62f12487fdff4825c
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/hardwareintegration/compositor/wayland-egl/waylandeglclientbufferintegration.cpp
Change-Id: I42733f5ad9429a5d2ff6c804eb1f3f2d50f50811
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I5ad3663b3710b939f08798abad3bc985ab460e88
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I489267d8378cbcaf7ae7cd8eee48d4e2a71ca91a
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We've recently seen a number of performance issues on bugreports and on the
mailing list. The problem in many of these cases, is that no client hardware
buffer plugin is used. I.e. it's just due to our fallback to CPU buffers when
the compositor is configured incorrectly or run in a setup where hardware
buffers are not available.
This patch detects when client hardware buffer plugins fail and prints a
warning explaining the issue to the console.
This will make it easier to differentiate between expected and unexpected drops
in performance and will hopefully also guide users in the right direction
to fix their setup (set the right environment variables and perhaps recompile
Qt with a supported OpenGL version).
QtWayland::ClientBufferIntegration now returns a bool indicating success or
failure. The integration is now destroyed immediately if it failed, instead of
leaving it lying around until the compositor shuts down.
There has been some slight changes in the xcomposite plugins as well, turning
some qFatals into qCWarnings and failing more softly (with the warning
mentioned above).
Task-number: QTBUG-78483
Change-Id: I55293dbb3cf72768f3982c075fcf63e79329ada1
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|\| |
| |/
|/|
| | |
Change-Id: I25e65c392612cc1c379bd408adb60559b1d8a498
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As announced on the mailing list, QtWaylandCompositor licensing is
changing to GPLv3:
https://lists.qt-project.org/pipermail/development/2019-October/037666.html
Change-Id: I4bdc1aa5914e53ac760acc2b6453355af636baa9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: Ifb5723b11bf5fe5bb3583018f496beba17c6bf40
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/client/qwaylandinputdevice.cpp
Change-Id: I20fb102162351b714855258175ed00437e55f072
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I0a193ceaa1549c08acad02b59db62ae313d6b334
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|