| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
clang-tidy -p compile_commands.json $file \
-checks='-*,modernize-use-default-member-init,readability-redundant-member-init' \
-config='{CheckOptions: [{key: modernize-use-default-member-init.UseAssignment, value: "1"}]}' \
-header-filter='qtwayland' \
-fix
Afterwards I ran search and replace on the diff to clean up some whitespace errors:
- Replaced '(\n\+[^:\n]*)(:\s+\+\s+)' with '$1: '
- Replaced '(\n\+[^,\n]*)(,\s+\+\s+)' with '$1, '
- Replaced '\n\+\s*\n' with '\n'
I also had to do some manual edits, because for some reason, this particular
clang-tidy check doesn't trigger for some files.
Change-Id: I3b3909bac4bf20108bbe8ad1e01bcc54236dae1b
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
| |
Applied automatic fixes using clang-tidy's modernize-use-nullptr, and some
manual cleanup to prevent QFlag macros to be affected.
Change-Id: I88f94390185bc6e6f23693b68723cd5710815ae6
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Currently tests are licensed under GPL-EXCEPT, examples under BSD and
src under LGPL so replase old license headers with new & proper ones.
Also remove old & unused license files
Task-number: QTBUG-57147
Change-Id: Ia6a738798736c275dc309ccfa5b627dc2178d241
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We cannot support bindToTexture() functions. On some
platforms the texture is provided by the driver. Therefore,
the HW integration must always provide a texture.
This has the added bonus of unifying the two separate code paths
that were introduced when EGLStream support was added.
Add a separate buffer manager that owns all buffers.
Don't destroy buffer objects on release. The client will probably
attach them again later. Also, release shm buffers immediately
after uploading to texture (needs to be documented that image()
will not work afterwards).
Make the old SurfaceBuffer class into an abstract base class,
so we can store state in the buffer class instead of having
to map from the wl_resource in each buffer integration. Move
the shared memory buffer handling into a separate subclass.
Change-Id: I81e471d13c92913d31ea1efe487f93fa908b5e0c
Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
Reviewed-by: Louai Al-Khanji <louai.al-khanji@qt.io>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
| |
and other api adjustments
Change-Id: Idda1bfa314d401f59029f2adafbb245a47c267ac
|
|
|
|
| |
Change-Id: I84ed248b471464214d935352768f300d4b90dec3
|
|
|
|
|
|
| |
Change-Id: I8944c176f12932eb51e867bc39820b2553a5d3ba
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
|
|
|
|
|
|
|
|
| |
Qt copyrights are now in The Qt Company, so we could update the source
code headers accordingly. In the same go we should also fix the links to
point to qt.io.
Change-Id: I5a74d32515c3f1fe7aa1916f4241c92832510f8c
Reviewed-by: Antti Kokko <antti.kokko@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a new QWaylandOutput class to support multiple outputs.
Each QWaylandOutput need a window for rendering.
Rename OutputGlobal to Output and Output to OutputResource.
Add support for physical size, mode and available geometry.
Use better defaults for geometry and refreshRate from the QWindow
if available.
A window is no longer passed to QWaylandCompositor constructor
and all output related methods are removed, however one or more
outputs are required for hardware integration.
QWaylandCompositor returns a list of outputs and offers an API to add
or remove outputs.
Hardware integrations can run headless.
Change-Id: I742996571ddb78328f7bfa4f79b25a81995279e1
Done-with: Jan Arne Petersen <jan.petersen@kdab.com>
Done-with: Jørgen Lind <jorgen.lind@theqtcompany.com>
Reviewed-by: Giulio Camuffo <giulio.camuffo@jollamobile.com>
|
|
|
|
|
| |
Change-Id: I2de94481f7d3e109fdce7ca961f8969299cf5d9e
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
|
|
|
|
| |
Change-Id: Ifb6e2456c781e80f84e27e68c3e279ea993f9307
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The context is not passed anymore to texture() and similar functions since
they have to use the current context anyhow.
createTextureFromBuffer() becomes bindTextureToBuffer() which is called
with the texture bound. The integration can also provide its own texture in
case the one created and managed by the surfacebuffer is not suitable.
Change-Id: I1bfc4fe35c0e3db6081b47c551f20f4bca9aa04e
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
to QWaylandClientBufferIntegration. I have checked this with
xcomposite-egl and wayland-egl, abd have tried to do a simple search and
replace for brcm-egl and xcomposite-glx, but there will likely be some
small fixup needed
Change-Id: I48d284b8a5172273e0a26443074a87a8171b9e88
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
|
|
Change-Id: I3ede73420af9cb95820a9bec4fe7305f1107e22d
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
|