summaryrefslogtreecommitdiffstats
path: root/src/compositor/compositor_api/qwaylandquickitem_p.h
Commit message (Collapse)AuthorAgeFilesLines
* Replace all occurrences of Q_DECL_OVERRIDE with overrideJohan Klokkhammer Helsing2017-01-231-5/+5
| | | | | Change-Id: I16b7b23efe944b49d1fcc9e7588cdb0a991cebd1 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Send touch cancel event when QWaylandQuickItem::visible is set to falseJohan Klokkhammer Helsing2017-01-121-0/+1
| | | | | | | | Task-number: QTBUG-57927 Change-Id: I8b6a5aaa9337222286382ffbeee13b794bec125c Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Add support for running compositors with custom device pixel ratioJohan Klokkhammer Helsing2016-12-161-1/+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>
* Only send mouse move event when mouse movesPaul Olav Tvete2016-11-221-0/+1
| | | | | | | | | Qt Quick recently changed to send hover events 60 times per second even if the mouse doesn't move. Make sure we only send mouse move events over the Wayland protocol if the mouse actually moved. Change-Id: Ic196512dde1718de461eb2c64cec2e95e220ce89 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Compositor: Set view output in QWaylandQuickItem::init()Johan Klokkhammer Helsing2016-11-141-0/+2
| | | | | | | | | This fixes a crash when the constructor of QWaylandXdgPopupV5Integration tries to access the output scale factor. Change-Id: I3cafee7a47b18e1025044b35d4578c7a6258eee4 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* QML Compositors: Switch touch events on by defaultJohan Klokkhammer Helsing2016-11-011-1/+1
| | | | | | | | | Previously sending multi-touch to clients would only be possible after setting touchEventsEnabled on ShellSurffaceItem. Change-Id: I53b9d024ceee0abfe35d9761a5ddbec2b91a37db Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
* Refactor buffer handlingPaul Olav Tvete2016-10-011-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Include headers with full pathPier Luigi Fiorini2016-10-011-2/+1
| | | | | | | Fix build of programs using the private API outside QtWayland. Change-Id: Ib43ed1be8df8be3cc7b67588003cd7f0a6ff6eb1 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Remove QWaylandView from the QML APIPaul Olav Tvete2016-08-221-1/+3
| | | | | | | | | | 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>
* Initial drag and drop support for QML compositorsJohan Klokkhammer Helsing2016-06-101-0/+2
| | | | | Change-Id: I3328387d925dcb2f586dc69867fd3c4e58ef5e51 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
* Fixed eglStream compositingDominik Holland2016-05-181-0/+5
| | | | | | | | | | | | | | | | | | | | | | | When creating the eglStream from the fd we also need to create the texture and call stream_consumer_gltexture. Otherwise the wayland client can't create the wayland client surface. Fixed the qwindow-compositor example to use the texture associated to the QWaylandBufferRef when compositing a EXTERNAL_OES target. QML compositing only works when QSG_RENDER_LOOP is set to basic as we need to generate a texture from the gui thread. As the texture is created by the bufferintegration it might end up in a different gl context than the quick item using it. The texture is also deleted together with the buffer, which prevents the use of the texture afterwards. Both problems need to be fixed in follow up commits. Task-number: QTBUG-50850 Change-Id: Ifec67bbe9e4b2a680c871dc4aced37b71b7b6f80 Reviewed-by: Louai Al-Khanji <louai.al-khanji@qt.io> Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
* Let inputEventsEnabled control mouse press/releasePaul Olav Tvete2016-05-121-7/+14
| | | | | | | ...in addition to hover events Change-Id: Ibf434acc5e39637dd701f52d867d582339b93de3 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
* QtWaylandCompositor: Add support for different EGL buffer formatsLouai Al-Khanji2016-04-291-0/+36
| | | | | Change-Id: Idfeeedbf247fa81dccdf28a1aa04f878900ed262 Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
* QML compositor: Adjust for scale factor when handling mouse eventsJohan Klokkhammer Helsing2016-04-291-0/+3
| | | | | | | | | | | Problem: We expose a scaleFactor property on QWaylandOutput, but it's not taken into account when handling mouse events. Resulting in wrong position for clicks, incorrect resizing etc. Solution: Divide by scale factor where appropriate. Change-Id: I21f54b7d2d212a320098fea5c9ae9751e79a0141 Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
* QML API for subsurfacesPaul Olav Tvete2016-04-201-0/+1
| | | | | | Task-number: QTBUG-49809 Change-Id: I433fd5ee4d920e6fc6696627b45738631ab329c4 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
* Add warning to private headersPaul Olav Tvete2015-10-231-0/+11
| | | | | | | We mean it. Change-Id: I7381c7aad198dcca485d488571fd12296d07f980 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Hook up the QWaylandQuickItem::surfaceDestroyedJørgen Lind2015-09-181-0/+1
| | | | | Change-Id: I8551318190782a2426ff9d03fbe881a0cdc7016a Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Remove the parent pointer for the view in QWaylandQuickItemJørgen Lind2015-09-181-1/+1
| | | | | | | Its a scoped pointer and will be deleted by QWaylandQuickItem Change-Id: Ief881cc4dd83780da49c3d70d886389b7a10c33d Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Add sizeFollowsSurface property to QWaylandQuickItemJørgen Lind2015-09-181-2/+2
| | | | | Change-Id: I416f5689679d08b9ba89dceceac5c2ed9128ed9a Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Make QWaylandQuickItem use pimplJørgen Lind2015-09-161-0/+114
Change-Id: Ic2c0707d8576f72e1c6ae6e8c2e026882a5733b6 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>