summaryrefslogtreecommitdiff
path: root/src/compositor/extensions/qwaylandshell.h
Commit message (Collapse)AuthorAgeFilesLines
* Use SPDX license identifiersLucie Gérard2022-06-101-28/+2
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I106d3a5d1a7b96250380b6f51a48f3b19d10e4d9 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* QtWaylandCompositor: use cmake-generated export headersMarc Mutz2022-02-141-2/+2
| | | | | | | | Pick-to: 6.3 Change-Id: Ifda9223dbf9d7c615de6540250a23a6687daecd7 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Fix QtWayland build without qtdeclarativeAllan Sandfeld Jensen2020-09-151-1/+2
| | | | | | | Add qtwaylandqmlinclude.h indirection to define replacement defines. Change-Id: I0f319035f1a21a77a46f3397870be588ffa9a78a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Port QtWayland.Compositor to new QML extension APIEskil Abrahamsen Blomfeldt2020-08-201-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | In order to add new properties and types in Qt 6, we need to port everything over to the new extension API in QML. This is generally more type safe and needs less manual maintenance, but there is some work involved in porting. The previous version exposed some types from the QtWaylandCompositor C++ library, extended a few of them with Qt Quick-specific subclass, added one additional C++-implemented type (QWaylandMouseTracker) and two additional QML-implemented types. We need all types to be defined in the same place for the automatic generation of plugins.qmltypes to work. Therefore all the additional types are moved from the plugin into the library, but still not exposed through public API. The plugin still exposes the types, so for the user this change will be transparent. Fixes: QTBUG-85512 Change-Id: I46e9e80424c9299c3eaee92773d233b1ec29cf2c Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-261-15/+5
|\ | | | | | | Change-Id: I25e65c392612cc1c379bd408adb60559b1d8a498
| * Update QtWaylandCompositor license headers to GPL 3v5.14.0-beta2Paul Olav Tvete2019-10-161-15/+5
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Compositor: Remove deprecated QWaylandShell constructorsJohan Klokkhammer Helsing2019-10-031-4/+0
|/ | | | | Change-Id: I3cb158e0d2b9fbdbe414ce1af3d09ccaf24c564f Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Compositor: Fix compilation problems for qwaylandshell.hJohan Klokkhammer Helsing2019-04-171-2/+6
| | | | | | | | | | | d65783c broke compilation for code that includes qwaylandshell.h, but not qwaylandshell_p.h, because QWaylandShellPrivate is an incomplete type and we don't know that it's convertible to QWaylandCompositorExtensionPrivate by just looking at the public header. And we can't move the QWaylandShellTemplate constructors to the cpp file because it's a template class. Change-Id: Ia2d093de74429ace33d08b91743cbc8b7e7befa8 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* compositor: fix QWaylandShell private objects inheritanceChristophe Chapuis2019-04-031-2/+2
| | | | | | | | | | If the public API has inheritance relationships, this should be reflected in the private classes too. Otherwise the d_func will cast to a wrong type, leading to crashes. Change-Id: Iad2dccad4b63326e6b108a44c708ab51f0784678 Reviewed-by: Johan Helsing <johan.helsing@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Fix licensingv5.9.0-beta4Jani Heikkinen2017-05-041-12/+15
| | | | | | | | | | 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>
* Replace all occurrences of Q_DECL_OVERRIDE with overrideJohan Klokkhammer Helsing2017-01-231-1/+1
| | | | | Change-Id: I16b7b23efe944b49d1fcc9e7588cdb0a991cebd1 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Compositor: Base shell classPier Luigi Fiorini2016-09-301-0/+107
| | | | | | | | | | | | 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>
* Rename compositor Shell to WlShellJohan Klokkhammer Helsing2016-04-051-155/+0
| | | | | | | | | | | | | | | | | | | | | * QWaylandShell -> QWaylandWlShell * QWaylandShellSurface -> QWaylandWlShellSurface * QWaylandQuickShellSurfaceItem -> QWaylandQuickWlShellSurfaceItem * Shell -> WlShell (QML) * ShellSurface -> WlShellSurface (QML) * ShellSurfaceItem -> WlShellSurfaceItem (QML) This is done to avoid confusion with XdgShell and will hopefully help clarify that some of the examples only support wl_shell and not xdg_shell. Additionally, this makes "Shell" an available name in the compositor API, which may in turn enable the creation of a more general abstraction hiding the details of the shell backends (i.e. xdg_shell, wl_shell, and eventually ivi_shell). Change-Id: Iebac1f36505084bfaaea68838005d54db6c55e21 Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
* Add QWaylandShellSurface::fromResource()Giulio Camuffo2016-03-291-0/+2
| | | | | | | | | | Also make sure that the generated *::Resource::fromResource() code returns null if it doesn't own the resource or if the interface is wrong. Change-Id: I904e0dd49dd6e535ef8cab6687c6869e1000048d Reviewed-by: Johan Helsing <johan.helsing@theqtcompany.com> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
* Rename QWaylandShellSurface::DefaultEdge to NoneEdgeJohan Klokkhammer Helsing2016-03-021-1/+1
| | | | | | | | | 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>
* Use WaylandCompositor module name for export macroPaul Olav Tvete2016-02-151-2/+2
| | | | | | | 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>
* Expose a method to send ping events in QWaylandShellSurfaceGiulio Camuffo2016-02-121-0/+4
| | | | | | | 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>
* Add surface roles backGiulio Camuffo2016-02-111-3/+6
| | | | | | Task-number: QTBUG-49809 Change-Id: Id62ddea68c89b6999b66d3df8eeeffd858ae844f Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Rename setPopup surface argumentPier Luigi Fiorini2015-11-271-1/+1
| | | | | | | | | 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>
* Fix copyright headersPaul Olav Tvete2015-11-091-1/+1
| | | | | | | | 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>
* Implement resize/move for pure-qmlJørgen Lind2015-09-161-10/+18
| | | | | Change-Id: I7919f7715486fa2d8cfe35c08095f6c33757a515 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Remove global coordinatesJørgen Lind2015-09-141-29/+41
| | | | | | | | | This involves removing: - pickView and mapView from QWaylandOutput - requestedPos[X,Y] from QWaylandView Change-Id: Ie53eef434ac6ae7d0d5474f649f78a59ae857167 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Rename QtCompositor to QtWaylandCompositorJørgen Lind2015-09-101-1/+1
| | | | | | | enable building QtWaylandCompositor by default Change-Id: I7cf34052b304ca9fef55b7e30ef6a6367b5d75f1 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* Add missing QT_X_NAMESPACEJørgen Lind2015-09-041-0/+4
| | | | Change-Id: I76d82f2e0d201a9b3079ae49e88b3383530b9756
* Make it possible to create the shell surface from qmlJørgen Lind2015-08-281-2/+8
| | | | Change-Id: I83dceff36d1027b24c1dafb3bc44e07f7502bc54
* Make the default wl_shell available from QMLJørgen Lind2015-08-281-0/+116
This finaly ties together how to use QWaylandQuickItems with different shells It was required to decouple QWaylandView from the QWaylandQuickItem since QML doesn't play to well with muliple inheritance. The QWaylandQuickItem can be retrieved from the QWaylandView which is now conveniently a QObject. Also the QWaylandQuickItem owns the QWaylandView. This architecture also leaves room for creating a QWaylandWidget :) Change-Id: Ib8a00e6f17f0f1bfc3ff244753f021c76db22cb1