| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Task-number: QTBUG-70264
Change-Id: Idd4c6b2b7bb032241555a08e2b3e420b1312aa35
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
| |
It's an implementation detail, so shouldn't be exposed as a property.
Change-Id: Ib0a5b7dd92403cf45e1067710d1aad330a7a340f
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
| |
This makes WaylandCursorItem automatically move the cursor hotspot when the
scale factor or dpr changes
Task-number: QTBUG-70134
Change-Id: I146ad81e92fe708a6141271ea173bf053b5e05c8
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
setCursor would sometimes be called on null objects causing a JavaScript error.
Use Connections instead which will disconnect the signal automatically if
either side is destroyed or in case seat is reassigned.
Change-Id: I70686937b510ab516f27f1e61b2f2a921e74f4b3
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes a source incompatibility introduced in 9ebba7c3a. In Qt 5.11 it was
possible to have the following code:
XdgShellV6 {
property XdgToplevelV6 top
onToplevelCreated: top = toplevel
}
After, 9ebba7c3a, however, this would fail because XdgToplevel refers to
QWaylandXdgToplevelV6ParentClass, while QWaylandXdgShellV6::toplevelCreated
emits a QWaylandXdgToplevelV6.
It would also break instanceof, i.e.:
onToplevelCreated: console.log(toplevel instanceof XdgToplevelV6)
This patch reverts to C++ and QML using the same type (no subclassing for QML
types), but still lets the items have children in QML by putting the macro
inside each class instead.
Task-number: QTBUG-70090
Change-Id: I8efa8f68ebc4dc2289b4a9b96402b0c00d45547d
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
| |
And add an example with server-side window decorations.
Task-number: QTBUG-69934
Change-Id: Ic3984b50cf7574cae5135dea51eb4b1c80bb45a7
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[ChangeLog][Compositor API] Added APIs for xdg-shell stable.
Code copied from the V6 implementation with suffixes and prefixes removed.
Otherwise a few minor edits, such as renaming xdg_shell to xdg_wm_base, and
handling the anchor and gravity edges no longer being bitfields.
Examples that used v6 have been updated to use stable instead, or, in some
cases, to support both.
Task-number: QTBUG-66784
Change-Id: Ia619b478a938fdcd9b47af8a8df2d7fcc4406204
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
| |
This macro gives items the ability to hold children.
Use the new macro on various types to let compositors
declare children from QML.
Change-Id: I291cc69fc11653bc3d677d148e002330a3245173
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Applied automatic fixes using clang-tidy's modernize-use-override.
This adds the "override" keyword where it's possible and also removes the
"virtual" keyword when redundant.
Change-Id: I899950e5cf8782785d30a245a9c69c1720905d50
Reviewed-by: Paul Olav Tvete <paul.tvete@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>
|
|
|
|
|
|
|
|
|
|
| |
[ChangeLog][Compositor] Add a tech preview for a plugin-based hardware layer
API and a VSP2 implementation (for Renesas R-Car M3 and H3).
Task-number: QTBUG-64600
Task-number: QTBUG-64604
Change-Id: Ia4abfb6343cf4f006ba408d293ec9464cd6f31b7
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
| |
It must be installed on the filesystem. Duplicating it in resources
was always wrong but now causes an error in 5.10.
Task-number: QTBUG-64285
Change-Id: Ia8a9e11f92ea68977808bb6e87a818c0ca8d1208
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This adds QML and C++ support for xdg-shell-unstable v6 on the compositor side.
A couple of things are still missing for complete support, but can be added
implemented later without breaking the API.
Task-number: QTBUG-56174
Change-Id: I08d7c05aa4f40f00377d92f2519d89ab416daaf4
Reviewed-by: Paul Olav Tvete <paul.tvete@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>
|
|
|
|
|
| |
Change-Id: I13d72f83cbb53d72ad602df43abf1a2779f96e5b
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Don't assume that no-draganddrop implies no-clipboard. Introduce
a new private feature wayland-datadevice which contains the
common functionality. This feature cannot be controlled independently,
but is automatically disabled when both clipboard and draganddrop are
disabled.
Change-Id: I6aac09c7ee524e3b11f0a1caa4a6c62fc3f1d10f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
src/hardwareintegration/client/brcm-egl/qwaylandbrcmglcontext.h
Change-Id: Ie45a13d3c866d0503e6e31b2a53b70f3420c5066
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QWaylandWlShellSurface::createIntegration is a virtual function that is removed
if QT_WAYLAND_COMPOSITOR_QUICK is not defined. This macro is defined in
src/compositor/... and needs to be replicated here. It is set
unconditionally here, since having imports implies having Qt Quick.
Change-Id: I563c6de01af12721b0b5f2ec2e9faf787adf6794
Task-number: QTBUG-57838
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-57869
Change-Id: I7a38a5d4360aa470cb4c05375225c025804f8297
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I16b7b23efe944b49d1fcc9e7588cdb0a991cebd1
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: If244e7ac58133ae6fbefacfa243d47fa210140be
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|/
|
|
|
|
|
|
| |
Accessing the shell property of QWaylandXdgSurfaceV5 results in an
error because QWaylandXdgShellV5 is not registered.
Change-Id: I72504508b860c720d26057c0da21d303345ace41
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
| |
Get rid of almost all DEFINES += ... in the pro files,
instead use the proper QT_CONFIG() macro to determine
whether a feature is available.
Change-Id: I867769be2085c6ba93b6815e223e2b89edcb245d
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: I65504503f07477b05f7e645ee61544e62e728bdc
Reviewed-by: Paul Olav Tvete <paul.tvete@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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
This frees the QWaylandXdg name for the hopefully coming stable
version of xdg-shell.
Change-Id: I9beb9b035c6497fb45bee5c9104485b564ca0619
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
| |
Use a variable that expands to the latest plugin version instead of
hard-coding the string.
Change-Id: Ie90ed0bec0cb6fabec0c1292969b35f593b1a87a
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
QWaylandQuickItem already encapsulates the view. Also rename
the confusing 'discardFrontBuffers' property to
'allowDiscardFrontBuffer'
Change-Id: Ibd74ad54bfe3d5187c2ed91ff0378b45e144e109
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The name QWaylandInputDevice could be confusing and misleading:
- A QWaylandInputDevice was not one input device, but a collection of many.
- Classes that sounded like they should inherit from it did not, i.e:
QWaylandKeyboard, QWaylandPointer and QWaylandTouch.
- The Wayland protocol already has another term for this, which is seat.
Change-Id: I9d9690d5b378075d9dddaeb8cf18395c7f47603e
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
* createSurface -> surfaceRequested
* createXdgSurface -> xdgSurfaceRequested
* createXdgPopup -> xdgPopupRequested
* createShellSurface -> wlShellSurfaceRequested
* shellSurfaceCreated -> wlShellSurfaceCreated
Change-Id: I715a927242130d7504955002a6a64a2bac516d46
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
|\
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
examples/wayland/minimal-qml/main.qml
Change-Id: Ic34029a6aa77f2b359f40258a05421d82efd5b37
|
| |
| |
| |
| |
| |
| |
| | |
Added 2 cpp.ignoretokens statements
Change-Id: I0f86ba94682b6f9fc0e76484a14ece7c39ff436a
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I20add5c8b12e1345ce50c009d8bae80fde9806e1
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I683d568b8161828aa47ecc4e7f90741189ac4bae
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: I688f8c5d6781d695d3554aaec0c11be95cec371b
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: Ide6605b7bd05f739976ed603c19e030ec74d2a2a
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
| |
| |
| |
| |
| |
| |
| | |
What WS stood for may not have been obvious.
Change-Id: Ib2a3f566e4e49d8be0c14c4937e7356b51718e44
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: Ia3e0fa53579ee0d28b1d6b7384b9c6def2761a2b
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
|
| |
| |
| |
| |
| |
| |
| | |
So we can access QWaylandView::output.
Change-Id: Iafba812072adb52134765ed0b58f2cc2e3ab3ee0
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It doesn't make much sense to use the exact same class for the uncreatable
type and the shell surface type.
Remove the base uncreatable types.
Change-Id: Id155c8131b0b46b6b0b7b200ee44331a295ad76d
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I6a719351823ba9335e8ee8a6f54d59bd87eab2f6
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ic4a4d0bb7c6f7e8c9dfe9384c1263b6337893fbf
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* QWaylandWindowManagerExtension become QWaylandQtWindowManager
* WindowManager become QtWindowManager
Follow naming convention already established for other extensions
like QWaylandWlShell and avoid confusion that might arise with
a name as generic as WindowManager.
Use QWaylandClient rather than wl_client.
Also the Wayland protocol definition has been renamed
to qt-windowmanager.xml
Change-Id: I941621ce229327c21eff9e80c7e92205cc60e8eb
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
| |
Change-Id: I8f67aea3e0ecb0d691ab416eab8e689c348ab58d
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
XdgSurfaceItem and WlShellSurfaceItem have been removed in favor
of the more general ShellSurfaceItem. An XdgSurface or a WlShellSurface
can be assigned to the shellSurface property of a ShellSurfaceItem
and leaves open the possibility for additional shells.
A shared base class for QWaylandXdgSurface and QWaylandWlShellSurface
has been added which has a factory method for creating
a QWaylandQuickShellIntegration for that shell implementation.
The property "shellSurface" on the ShellSurfaceItem allows QML code to
attach to signals regardless of whether it's a WlShell or XdgShell
client. The pure-qml example has been updated to take advantage of this.
Change-Id: I9d3427586e100d6c44a24f319dd8e1486ff062ee
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
|
|
|
|
|
|
|
| |
Since we have QWaylandClientExtension
Change-Id: Ie8d60322c8e730bda651e06ed5db0fe1359d946e
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the shell surface emits the QWaylandShell::setPopup signal the
QWaylandQuickWlShellSurfaceItem will move it self into its popup-parent,
and also remove all transforms (rotation, scaling, etc.), our new
parent already have the same transforms set.
During the time a popup is active it installs a filter
which handles the closing of popups if the user clicks
outside the popup. This requires that the background item of the
compositor accepts mouse press.
Change-Id: I3e4c3c8728795d4b38a30a9bce178dc315643de2
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|