| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
If layering is enabled we should return the texture provider of the
base class into which any child items are drawn.
Change-Id: I13e6634860e8ccfec6511870f1b3cd36a5079225
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@theqtcompany.com>
|
|
|
|
|
|
|
|
|
| |
This matches the name and value defined in the wayland protocol
(wayland.xml)
Change-Id: I562d14b637c615550d3467d469e147488b4b4340
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Erik Larsson <erik@ortogonal.com>
|
|
|
|
|
|
|
|
|
| |
Don't use references to temporary objects.
Change-Id: I786c90273ac835309fe5ac4ecc3372de185e490e
Reviewed-by: Erik Larsson <erik@ortogonal.com>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Johan Helsing <johan.helsing@theqtcompany.com>
|
|
|
|
|
|
|
|
|
| |
QOpenGLContext changed the getProcAddress overload to use const char*
instead of QByteArray in commit (qtbase
29d8159c4478a5275d2ea102daf270a91ed7e92e).
Change-Id: Idce613ebd06daeb111fd76ebee89a82182d028d5
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous fix (93ca929fb9caf347150) would always crash on client exit.
It tried use the same destroy_listener on several buffers. Due to the
way linked lists are implemented in Wayland, a listener can only
be listening to one signal at the time.
The correct way to do this is to create a new listener for each buffer.
Change-Id: Ie94dd8cd2d3dc7f93a0526c5c585a8feab3b7354
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
|
|\
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
src/compositor/compositor_api/qwaylandquicksurface.cpp
Change-Id: Ic5e4217549c6c08740dba5ac1794d0a8e53f3a47
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Shell surfaces are now created for windows with BypassWindowManager
set, unless the environment variable
QT_WAYLAND_USE_BYPASSWINDOWMANAGERHINT is also set.
This means that in case you need a window to not create a wayland
shell_surface (perhaps because you do not want to use wl_shell or
xdg_shell), you can set the environment variable and get the same
behavior as before. Meaning the surfaces of windows with the flag set
will not be assigned a role.
Task-number: QTBUG-49272
Change-Id: Idf969540497d6b4e54395b97472d99d2e068be93
Reviewed-by: Giulio Camuffo <giuliocamuffo@gmail.com>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
| |
| |
| |
| |
| | |
Change-Id: I3ebcb49a4acf230b9515c0317aab2307dcb9270b
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Let Ctrl+A cause a key event with text Ctrl+A (0x01), like we do on
the other platforms. Previously we would use 'A', which would confuse
some applications.
Task-number: QTBUG-50398
Change-Id: Ie3def4bd9c96e538b2572b88fae029d347e08814
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This was too aggressive, if there is a queued buffer the current one
needs to be invalidated or the compositor will hold references to
both buffers while the scene graph is stopped which will block
clients in eglSwapBuffers.
This reverts commit 438063af85d0999f9dead6f04a3285edb175e24c.
Change-Id: I3247cfc94e12322fcccc07b5dd64146b055ab431
Reviewed-by: Giulio Camuffo <giuliocamuffo@gmail.com>
|
|\ \
| | |
| | |
| | | |
Change-Id: I1fee11c75d15fa3d31832b09f663824e64881382
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
IVI-shell provides a shell interface for Weston, which maps the GENIVI
API (http://www.genivi.org) for In-Vehicle Infotainment as Wayland-Ivi-Extension
(http://wiki.projects.genivi.org/index.php/Wayland_IVI_Extension_Design).
This patch is included in two protocol. The first is ivi-application protocol
which provided by weston. Next is ivi-controller protocol which provided by
Genivi's wayland-ivi-extension.
In IVI use case, the client create and destroy surface with the unique ID
by using ivi-application protocol. On the other hand, the controller such as
HMI Controller control some properties, which are visibility, position, size,
etc, with created the unique ID by using ivi-controller protocol.
It means the unique ID is necessary to create and control the ivi-surface and
the the ivi-layer. However Qt has no API to set the some surface or layer ID.
In this ivi-shell plugin, the unique ID can be set via the environment
parameter so that we can control the ivi-surface and ivi-layer. The
name of environment parameter is QT_IVI_SURFACE_ID.
QT_IVI_SURFACE_ID will be used as ivi-surface and ivi-layer. If application
needs more than two surfaces, ivi-surface IDs will be incremented.
When QT_IVI_SURFACE_ID isn't set, ivi-surface and ivi-layer ID will be
generated internally. The ID consists of the process ID and the surface
ID which is incremented in ivi-shell plugin.
The process ID is used as lower 22 bit per 32bit. 23 to 32 bit is used as
the surface IDs in a process.
e.g. When the process ID is 0x765 and create two surfaces,
ivi-layer ID is 0x765 and ivi-surface IDs are 0x765 and 0x00400765.
+------------+---------------------------+
|31 23|22 0|
+------------+---------------------------+
|0000 0000 00|00 0000 0000 0000 0000 0000|
|<- ID ->|<- process ID ->|
+------------+---------------------------+
We can set QT_WAYLAND_SHELL_INTEGRATION of the environment
parameter to "ivi-shell" to use IVI-shell.
Change-Id: Iddcfb3de89dc022530c0285524cf6bbf640147b6
Reviewed-by: Giulio Camuffo <giuliocamuffo@gmail.com>
|
|/ /
| |
| |
| |
| |
| |
| | |
Change-Id: Ieb65b66f28986845f50647ae338678f0a1e7a153
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Erik Larsson <erik@ortogonal.com>
Reviewed-by: Johan Helsing <johan.helsing@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| | |
It must be callable by the user so it must be public API.
Change-Id: Ic028843189148130a57a21e6e64840bd400dc7dc
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
| |
| |
| |
| |
| |
| |
| | |
Move it to qtbase. QtPlatformHeaders would otherwise conflict.
Change-Id: I9fdabc64fb59f6190ca8c12e22f09912ef6a2fe1
Reviewed-by: Giulio Camuffo <giuliocamuffo@gmail.com>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-49809
Change-Id: Id62ddea68c89b6999b66d3df8eeeffd858ae844f
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| | |
Change-Id: I3efd23284392e0ff587f86c7c163c0e4ffadb1f1
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
On Mesa/Intel apparently querying a buffer's size can return bogus
values if an EGLImage was not created from it yet.
Change-Id: I186dcc70f64d310ef3f5e9f908267a8c28b113f2
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I30369e22e727487d91ea770259f2a8d96d62b87c
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Wayland protocol sends mouse presses without position, relying on
mouse moves to be sent first. Qt sends positions with mouse events.
Make sure that the position is correct by sending a move event for
each press event.
Change-Id: I6a1a9ee8b130011f0d180c878a7d273e11f72fa2
Reviewed-by: Mikko Levonmaa <mikko.levonmaa@bitfactor.fi>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This adds support for subsurfaces to QWaylandCompositor and
QWaylandSurface.
Task-number: QTBUG-49809
Change-Id: I2fa9ee4dcd1f48a2a28dab536f9cd6edc716e42b
Reviewed-by: Giulio Camuffo <giuliocamuffo@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Remove it from the list in the callback, not when a new buffer
is created later on.
Change-Id: I2328edec9728752d18efaecede19eb4527d0f578
Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
|
| |
| |
| |
| |
| | |
Change-Id: I02d5bd98e9cf0c3ba5094bb2862ba4d6663efe6c
Reviewed-by: Giulio Camuffo <giuliocamuffo@gmail.com>
|
| |
| |
| |
| |
| | |
Change-Id: I170089d87a56e56e12360a60bf76a142343b47f4
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is important for the build system esp. in prefixed builds when
cross-compiling. Otherwise compositor apps will complain not finding
libQt5Quick.so.
Change-Id: Idfd5a2f0ab02d63d761ed69e60310525cb8cdf9e
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Some embedded SDKs will not have pkg-config available for Wayland.
Hence we need to keep the manual LIBS+=... path functional.
Change-Id: I3815267254ce5c137918e817ade434cffba9f20b
Reviewed-by: Erik Larsson <erik@ortogonal.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
From Qt 5.7 -> LGPL v2.1 isn't an option anymore, see
http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/
Updated license headers to use new LGPL header instead of LGPL21 one
(in those files which will be under LGPL v3)
Change-Id: I76ae5d3e64f096eb3163d6163a38d68c7c1ca756
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The available geometry is a portion of the output so starting from the
output global coordinates is wrong, it should start from 0,0 by default.
Warn when coordinates outside the output are set.
Update the documentation accordingly.
Change-Id: Ia93481ad092c9daab3837321b62831f51fce9e57
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Fix typo and send X and Y coordinates not X twice.
Change-Id: I830287201d3ae9f9baf25abb9597bcc09cb8ce92
Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| | |
Emit the signal and send the Wayland event to clients.
Change-Id: I68a33746057e85bb6606a6217a2cdb890b6a641a
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since qtbase 61ad604ad41607be97efea5a18cd4d9fb7ddca73, QGuiApplication
has got a new property: desktopFileName.
Applications can now specify the desktop file name.
In that case we have a reliable information: use it for the appId
removing the ".desktop" suffix.
Otherwise, just use the logic we previously established.
Change-Id: I03c89009620b33bc68ee97ed414cfee1c1794632
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Setting a null window used to crash the compositor, but is a supported
use case so we shouldn't make any assumption on the window being
always available.
Change-Id: I9d7cd763427e3910cd36b38ac098cdf217f6b41b
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This requires a couple of null pointer checks because of the platform
plugin that qmlplugindump uses.
Change-Id: Icb7c0ac1c71ddf69f6c3d9e0013dd6b5e2ef5ab9
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
qmake assumes that the conf file name and the project name
are same, so 'make docs' fail if they are different.
Change-Id: Ic4784524c50cd085096fbf8853138b48d818fd61
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Wayland unit of measurement for refresh rate is mHz, multiply by 1000
to send the correct value when the client is bound.
Also use qreal for the refreshRate because the API deals with Hz.
Change-Id: Ib1cf82c4e9469fa2e8e21b577d74cf7e74ef8b5e
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
This introduces the new compositor API, removing the
old API (which was never officially supported).
Change-Id: I1dc01f0fb4edc749e34ed8356e56ad87d7d64913
|
| |\|
| | |
| | |
| | | |
Change-Id: Ie70fdd03e1259a8cb75bbdbf1324e3e4a2b51807
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Wayland clients might implement an older interface version, in that
case we don't want to send unsupported requests.
To ensure that we pick the lower version between the one asked by
the client and the one we actually implement on the server.
Change-Id: I4865780505db171295897fc7f6567c6f88e598fa
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I2a1f9dee1bc7f29a8e81b2429f49748ee477bd4f
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I0f45e4b510e898d4107b80b1a61d64c86513ec85
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add getter and setter for repeat rate and delay.
This has no effect until the compositor has support for Wayland 1.6
which has not yet been done due to CI lacking a recent library version.
Change-Id: I55a9c48dcb974d5fff437fd79148ce02d74beccb
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ie23f7c01331d5e52dcf30952d7ad9ade6ef5a5e0
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Make setPopup signature consistent with setTransient and fix
potential issues with QML since "parent" is special.
Change-Id: Ib3736af63d106f50379b3e296b73d8690d9bc09f
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The waylandcompositor API will be part of Qt so the docs for it
should use the Qt reference documentation URL and version. The
index page for the module cannot be named 'index.html' as it
conflicts with the Qt reference doc main page.
Change-Id: I3d8c45dac7a896e9bd6a2ab5f1c6d4f7018810ed
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Wayland linked lists are implemented by having next and prev pointers
in the objects themselves. This means that an object can only be in
one list at the time. If the object is not removed from a list before
being inserted into another, the original list is corrupted.
Change-Id: Idc6cfc507f7d7ff30a365fda01c4f9729335ae09
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Old copyright headers were accidentally used for some new code.
Change-Id: I0230d350e59701bc6b383c7c8151d52e34e8e75a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Some platforms require that the platform plugin creates the
wl_display. If so, use that one.
Change-Id: Ice7e0f79d525c0c7c1f79794dd6719ff8c3c7c80
Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
| |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
qwindow-compositor changes from 5.6 will be adapted separately.
The traditional wayland-egl path is tested and is functional like before.
The EGLStream support will be verified separately once the qwindow-compositor
changes are ready.
Conflicts:
examples/wayland/qwindow-compositor/qwindowcompositor.cpp
examples/wayland/qwindow-compositor/textureblitter.cpp
examples/wayland/qwindow-compositor/textureblitter.h
examples/wayland/server-buffer/client/client.pro
examples/wayland/server-buffer/compositor/compositor.pro
src/compositor/compositor_api/qwaylandbufferref.cpp
src/compositor/compositor_api/qwaylandbufferref.h
src/compositor/hardware_integration/qwlclientbufferintegration_p.h
src/compositor/wayland_wrapper/qwlkeyboard.cpp
src/compositor/wayland_wrapper/qwlkeyboard_p.h
src/compositor/wayland_wrapper/qwlsurfacebuffer.cpp
src/compositor/wayland_wrapper/qwlsurfacebuffer_p.h
src/hardwareintegration/compositor/wayland-egl/waylandeglclientbufferintegration.cpp
src/hardwareintegration/compositor/wayland-egl/waylandeglclientbufferintegration.h
src/plugins/hardwareintegration/compositor/wayland-egl/wayland-egl.pro
Change-Id: Ic2e3a6e8f74606c35b1e27cd4016fa133527d7ba
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This adds some preliminary documentation for the Qt Wayland Compositor.
There are a few classes which remain undocumented. The documentation
in some areas may be a bit minimal, but this can be expanded gradually
with code examples and more details.
Change-Id: I5d285a5a25e8602ac2fdddc84c3fd217e7b77c95
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Change-Id: I858887830fbacc09ed96e4509d4dc257a31bd0ae
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|