| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: I7883470e22deb089240d86df7dc2d625a107a53e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
| |
Change-Id: If1c57250e2dc9e0d55767bbdfb15c3e3f5d9b333
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes the undefined behavior in tst_WaylandClient::touchDrag and mouseDrag
Note: The test still fails if run twice in a row, but it appears to be
deterministic.
Task-number: QTBUG-56187
Change-Id: Ib45d82224f004d1324f2ce4d6b7df05ee36c04f5
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
| |
Change-Id: Ia7dd13f629439b116f494ff8b7432020a65ea1df
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
| |
This example shows how shell surfaces can move across outputs in order to
create traditional multi-monitor desktop functionality.
Change-Id: Ie7c0aa1dc47c0c1a944dffcce5237dee92785396
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
|
|
|
|
|
|
|
|
|
|
| |
And make sure QWaylandWlShellIntegration and QWaylandXdgShellV5Integration only
send configure events if they have the primary view.
Also add a convenience, QWaylandView::isPrimary.
Change-Id: Ib3a9615f46c8c43897c7fac22f832d2581190c0a
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
| |
Focus less on how the function is implemented and more on what
it does.
Change-Id: I3fff4a142e730431056cac1d2173e0d82440f8ec
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
| |
Change-Id: Id584a74d1d0805034b10ea68ee7bf9bf8acccb63
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
|
|
|
|
|
|
|
|
| |
Don't try to destroy the callback from two different threads. This
caused a crash with brcm-egl.
Change-Id: Idcb18fca9ed7f84902b88212c0cebd67932a59d3
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
We need to check whether the buffer has content. Having a reference to
a null buffer is just as bad as not having a buffer at all.
Change-Id: I0bd31d0a70da2e21cda69e67d75ea5c8659c7c2a
Task-number: QTBUG-56377
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
QWaylandWindow::deliverUpdateRequest() may trigger a new requestUpdate, so we
must clear the mUpdateRequested flag first, so we don't accidentally clear the
flag that belongs to the next update.
Fixes missing updates on brcm-egl.
Change-Id: Ib0decd5e8eb58505ccb94e93de494163ce0fd2ec
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
| |
Unfortunately the QPA plugin for Qt Wayland does not have a dedicated
help, which is why everything is right now crammed into the compositor
documentaton.
Change-Id: Iddc4d67a817f2cc3bb334b2f040fa55230b5da4f
Reviewed-by: Topi Reiniƶ <topi.reinio@theqtcompany.com>
|
|
|
|
|
|
|
|
| |
A compositor with two areas, clients are maximized on one of those areas
depending on their ivi surface id.
Change-Id: I2dbb20b47e38680e14465d3a4a8147d64817de63
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
| |
Change-Id: I37087d2ec0905c63cdbb4783daf4a5e34b50ad12
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
| |
Change-Id: I981ba99a33a5cb6dc5494ef3f72e70f1dfabfdbe
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
| |
Change-Id: I65504503f07477b05f7e645ee61544e62e728bdc
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Outputs usually have more than one mode, add an API to support them.
When sizeFollowsWindow is true, modes are replaced by one with the
window size and refresh rate. In that circumstance the mode changes
when the window is resized.
The sizeFollowsWindow property default value is no longer true.
The setGeometry() method is gone as it doesn't make sense now, the
setWidth() and setHeight() methods are now private slots to resize
the resolution as the window resizes (and sizeFollowsWindow is true).
Refresh rate is expressed in mHz rather than Hz just like the
Wayland protocol.
A compositor implementation may choose to add modes if it has access
to hardware information, it will call addMode() for each mode and
then invoke the setCurrentMode() method that sends the modes list
to the client. The preferred mode is indicated with a boolean
parameter to the addMode() method.
Change-Id: Iffed4784ccef695c276ebd800172957f4cff3324
Task-number: QTBUG-49814
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
| |
Remove "preliminary" and add "since 5.8". Also remove notice from readme about
the API being in tech preview.
Change-Id: I4ef1ffa4e23661f5a1e28c9e3207678be5b0435c
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This changes the API so that QWaylandTouch does not make assumptions
about touch focus, and consequently enables writing compositors where
multiple clients can receive touch input at the same time.
Task-number: QTBUG-56237
Change-Id: I21fe6d9b5ac65e9f910f64cc4a02824119571c52
Reviewed-by: Nedim Hadzic <nedim.hadzic@pelagicore.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
| |
This is required for making accelerated compositors that do not
use OpenGL.
Change-Id: I76c735a971dc62344080aececc087c0495925b87
Reviewed-by: Louai Al-Khanji <louai.al-khanji@qt.io>
Reviewed-by: Johan Helsing <johan.helsing@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>
|
|
|
|
|
| |
Change-Id: I923d42ecc85e798d8f848cd77f847e2a7c9a9559
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
| |
Fix build of programs using the private API outside QtWayland.
Change-Id: Ib43ed1be8df8be3cc7b67588003cd7f0a6ff6eb1
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
| |
Change-Id: Iabdad67adfb9ef9574c89b1a72d1bf12406d985e
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
| |
This makes it possible to use defaultSeat declaratively by allowing it to be
uninitialized until the QWaylandCompositor::create has been called.
Change-Id: I962cc7cc82a0bbc9240abb50cf92dee77e4a0ba6
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
| |
Define a protocol that does something visible.
Change-Id: I29133eeffbb2c98a61ee59b241dcf6a6a0f543cb
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
| |
Note, this is only an implementation of the ivi-application extension,
not ivi-controller which contains layer management interfaces.
Task-number: QTBUG-53149
Change-Id: Ic5a31156de1768f846b714a9aee9bbf8a945cbbe
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
| |
A wrong static_cast QWaylandSurface to a QWaylandCompositor led to
wl_display_next_serial() incrementing an arbitrary value.
Change-Id: I6ff92b8fd86fcef38fb10db2524dcf5aefae6d0a
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
| |
With b7075b72200b7b087e2c34fa449737970981ccea the QWaylandSurface::isMapped
property was renamed to hasContent but this example wasn't updated.
Change-Id: I9b13fa3a17ffcc3d6d8be19b59552f61b25bb64b
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Standard shell class with focus policy shared by all protocol
implementations.
The automatic focus policy gives focus to windows automatically as they
are created, while the manual policy allows a compositor to decide
what to do.
Change-Id: Ica71271174b30e28217e31c53f1c8dd576752c5e
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
| |
Update xdb-shell.xml file to one from tag v1.9.0
in qtwebengine-protocols.git. This includes switch to
MIT license, and also some doc updates.
Change-Id: Ia4a565d73f2b25f8a2c41d0cde4c48ac5a793279
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
| |
This updates the license to MIT, which all of Wayland
moves to.
Change-Id: I91080d787f2930620941b421bf44164e02fcf637
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Note that sendFullTouchEvent does not return any serial, because it might
result in multiple events being sent with different serials, choosing one
doesn't make sense and returning a vector of them seems a little over the top
since they won't be used most of the time.
Change-Id: Ie38b57dae1c7553668b04d4a62f5a074d78f63dd
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
| |
Change-Id: Idbfa41edc7bad23dcd606da56b99a85367006fe8
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
| |
This example shows how one application can be displayed full screen spanning
two screens. The intended use case is for running applications with lots of
scrolling content, such as a web browser.
Change-Id: Icba2715aa7ccd79c9d44c7e1d621bfdd9e51e66c
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
src/compositor/extensions/qwaylandxdgshell.cpp
Change-Id: Ic45b930e01fec803287d63b6f2347f45b7638ffc
|
| |\
| | |
| | |
| | | |
Change-Id: If43a69c30682eab4a40149a03c619047e84c9f6d
|
| | |\
| | | |
| | | |
| | | | |
Change-Id: I011101285c6aa594aea81271c86887c669a41e9e
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Change-Id: Ibb98081ddd226187212936949ca70bf1339c05aa
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The accessibility() function is ifdef'd in the base class,
which makes build fail when Q_DECL_OVERRIDE is used here.
Change-Id: Ic3d800ccf32b39f5bc8d3f94d222bc0d34457057
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| | |/
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-55343
Change-Id: I38e94a70585ba93d40de22698fda80530cf2156d
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-54453
Change-Id: Ie8fadd89797cd7c9ff5bf00924706bd662bbd22d
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-53147
Change-Id: I9d806a3ba7cdd8deec6e3928c157b43409c82630
Reviewed-by: Topi Reiniƶ <topi.reinio@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Allow property binding from QML and add a created property that is
set to true after the initialization.
Change-Id: I923eedc793660b4ea18372eb0182eae0bcca436d
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The WlShell implementation now matches xdg shell. Also adds a
convenience method to QWaylandWlShell to get all popups.
QWaylandWlShellIntegration and qwindow-compositor uses this new API.
Change-Id: Ibfe3323ad7f56d43379785582b9be6801905a485
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ibbf6acab4af45a6b17089bd3809c33a199dc89f6
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: I014269a19ca569298df91c2c329193e5ee5ff9c5
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Don't crash if we ask for the surface before the window is created.
Also clean up NULL/0/nullptr and a c-style cast.
Change-Id: I2a5a66ee76a3a12c8ca32847dbe30cc640e924c2
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
setFlags() works just like setWindowState(): we have to use the supplied
parameter because the window's state hasn't been updated yet.
Change-Id: I223e01ef192f30911697e449669e745f0ad59d99
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Don't confuse people by creating the extension inside a platform plugin.
It's only necessary when modifying Qt's default behaviour, and we're not going
to teach that in this example.
Also remove the load/unload extension logic from the qml example. Don't make
people believe that they have to use a loader.
Change-Id: Id263bb7d77fba176bfb8b6843a6ece9a0a203754
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
|