summaryrefslogtreecommitdiffstats
path: root/src/compositor/extensions/qwaylandwlshellintegration_p.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix crash when assigning nullptr to ShellSurfaceItem.shellSurfaceJohan Klokkhammer Helsing2017-03-231-0/+1
| | | | | | | | | This also fixes a memory leak when switching shellSurfaces. Task-number: QTBUG-59591 Change-Id: I196ea7238d9139c8ac281f82bbae8dd066b1fcd7 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Andreas Cord-Landwehr <cordlandwehr@kde.org>
* Replace all occurrences of Q_DECL_OVERRIDE with overrideJohan Klokkhammer Helsing2017-01-231-2/+2
| | | | | Change-Id: I16b7b23efe944b49d1fcc9e7588cdb0a991cebd1 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Add support for running compositors with custom device pixel ratioJohan Klokkhammer Helsing2016-12-161-0/+1
| | | | | | | | | | And add a manual test for showing that it works with different scale factors as well. Task-number: QTBUG-55303 Change-Id: Ib842ea51cfb62a2d46713e95d56b8a9da445d14d Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
* Don't crash when surface is destroyedPaul Olav Tvete2016-11-171-1/+1
| | | | | Change-Id: I082c3bb0003265c625d165e1463951842a730c11 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Compositor: implement wl_shell maximize and fullscreenPier Luigi Fiorini2016-09-301-0/+14
| | | | | Change-Id: Iabdad67adfb9ef9574c89b1a72d1bf12406d985e Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Compositor: Base shell classPier Luigi Fiorini2016-09-301-0/+2
| | | | | | | | | | | | 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>
* Compositor API: Add closeAllPopups method to QWaylandWlShellJohan Klokkhammer Helsing2016-09-201-3/+0
| | | | | | | | | | 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>
* Rename QWaylandSurface::isMapped to hasContentJohan Klokkhammer Helsing2016-08-221-1/+1
| | | | | | | | | | | | | It was potentially misleading, since "mapped" is already used with a slightly different meaning in the Wayland protocol. In the protocol, mapped means that the surface should be rendered. The renamed property, on the other hand, is true if the surface has a buffer with contents attached and committed. In some cases this is not the same, i.e. the drag icon after dropping, or xdg_popups after popup_done. Change-Id: Idc359433c6130e3815de57b21d4edb13e318887d Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
* Compositor API: rename QWaylandInputDevice to QWaylandSeatJohan Klokkhammer Helsing2016-08-111-5/+5
| | | | | | | | | | | | 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>
* Fix potential crash on surface destructionPaul Olav Tvete2016-05-311-1/+3
| | | | | | | | | Make sure we don't try use the surface object after we get the surfaceDestroyed signal. Change-Id: I9b266bdb7c6ba1b4d1cb738e0c1bd79ca031a4fc Reviewed-by: Johan Helsing <johan.helsing@qt.io> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
* Fix for popupsPaul Olav Tvete2016-05-311-5/+0
| | | | | | | | | | | Introduce a singleton event filter that keeps working if the popup is deleted. Move the event filter class to qwaylandquickshellsurfaceitem, so it can be used by the XDG shell. Change-Id: I58998a7e62697bf6f54536d2c2e2732ceb4d970e Reviewed-by: Johan Helsing <johan.helsing@qt.io> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
* Create a general ShellSurfaceItem to avoid duplicationJohan Klokkhammer Helsing2016-05-201-0/+114
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>