summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* compositor: Add QWaylandXdgPopupV5 position property notifyv5.8.0Pier Luigi Fiorini2017-01-092-1/+3
| | | | | | | | | The property changes at initialization time hence it needs to notify changes. Change-Id: I5f6bc51da69abce387ac31cecfff4c7362501eb0 Reviewed-by: Johan Helsing <johan.helsing@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Fix virtual table mismatch in QWaylandWlShellSurfacePaul Olav Tvete2017-01-091-0/+2
| | | | | | | | | | | | 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>
* Don't call wl_surface::destroy if the surface was never initializedJohan Klokkhammer Helsing2017-01-051-1/+2
| | | | | | | Task-number: QTBUG-57757 Change-Id: I85b74a3445c8d9df1a89b16760ce57e45204d2c6 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Fix crash when starting clientsJohan Klokkhammer Helsing2017-01-031-1/+4
| | | | | | | | | | | Don't send wl_surface::set_input_region requests before the wl_surface has been initialized. The shapedclock example used to crash in wl_proxy_marshal prior to this fix. Task-number: QTBUG-57757 Change-Id: I0a459d374bfb88fb22d048eda3722a41112d67a4 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Register XdgPopupV5 typePier Luigi Fiorini2017-01-031-0/+1
| | | | | | | Task-number: QTBUG-57869 Change-Id: I7a38a5d4360aa470cb4c05375225c025804f8297 Reviewed-by: Johan Helsing <johan.helsing@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Fix build for brcm graphicsv5.8.0-rc1Johan Klokkhammer Helsing2016-12-081-1/+1
| | | | | Change-Id: I301487ad58181a739146139862fe66fec432da9a Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Add changes file for 5.8.0Paul Olav Tvete2016-12-071-0/+84
| | | | | Change-Id: Ibea1e96ef239f60ab7e6010c7c332c8c0e7d0f37 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Unify getProcAddress behavior in xcomposite-glxLaszlo Agocs2016-12-062-2/+9
| | | | | | Task-number: QTBUG-57326 Change-Id: I6e49cce16a3bcda0de2f1a9c9ce97acb0a27c4da Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Unify getProcAddress behavior in the brcm backendLaszlo Agocs2016-12-063-3/+10
| | | | | | Task-number: QTBUG-57326 Change-Id: Ie3df866507e591b47e0e65a1867313b0ab388635 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Fix crashing in non-core GLES functions on some systemsLaszlo Agocs2016-11-291-2/+7
| | | | | | | | | | | | The 5.7 refactoring for QOpenGLFunctions introduced new requirements for the QPlatformGLContext::getProcAddress implementations. Implementations outside of qtbase were unfortunately forgotten. QtWayland's implementation does not derive from the common EGL version so it needs its own patch. Task-number: QTBUG-57326 Change-Id: Ie2ad22bf5986870aac74adc1e4c654c616091034 Reviewed-by: Risto Avila <risto.avila@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Make qwindow-compositor look different than pure-qmlPaul Olav Tvete2016-11-291-1/+2
| | | | | Change-Id: I8aac99dd98be943909f5a6dc254a4f79e83e61d9 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Don't crash when trying to run on a compositor without outputsJohan Klokkhammer Helsing2016-11-281-0/+5
| | | | | | Change-Id: I164ad71f42dff1ad92576729040608016497a56a Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com> Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
* Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-11-262-0/+50
|\ | | | | | | Change-Id: Ida15dd3247ae5690685fc66005cbebe58fca5d10
| * Merge remote-tracking branch 'origin/5.7.1' into 5.75.7Liang Qi2016-11-242-0/+50
| |\ | | | | | | | | | Change-Id: I3aaa6641fb0b941d1fcadd796fb43edf15f34be9
| | * Add changes file for 5.7.1v5.7.1Jani Heikkinen2016-10-281-0/+49
| | | | | | | | | | | | | | | Change-Id: I04f2b68c41c5a0946707956d2efbc4384797b807 Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
| | * Client: Remove windows from keyboard focus list when destroyedJohan Klokkhammer Helsing2016-10-253-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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> (cherry picked from commit 0049240a2b7d8691f09224e1542919ddbbb0d864) Reviewed-by: Johan Helsing <johan.helsing@qt.io>
| | * fix namespaced build. *again*Oswald Buddenhagen2016-10-171-0/+1
| | | | | | | | | | | | | | | | | | Change-Id: I3cbc3efdac61a9f329d0796c64885e6565bd0b77 Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | | Fix crash on client exit with popupPaul Olav Tvete2016-11-251-1/+1
| | | | | | | | | | | | | | | Change-Id: Ideb7a07dbeae5829334a8d8ce685c6bbdfd495d2 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | Doc: Drop the dummy "Tech. Preview" node from the navigation breadcrumbVenugopal Shivashankar2016-11-241-1/+0
| | | | | | | | | | | | | | | | | | | | | Qt Wayland Compositor is a fully supported add-on module now. Change-Id: Icd742e019be4b516227f9e4a976dcd87014e3251 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Fix crash when destroying focus windowPaul Olav Tvete2016-11-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure we don't try to disable input for a window that has already been destroyed. Change-Id: I1224599b3c43e2315b3571f01c5896a001614dc4 Reviewed-by: Johan Helsing <johan.helsing@qt.io> Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com>
* | | Fix crash on exitPaul Olav Tvete2016-11-231-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure that QWaylandDrag and QWaylandClientBufferIntegration are destructed before the QWaylandDisplay. Change-Id: I606154c9861a51d7cf3e5afb16d4f805ab9368b8 Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com> Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | Use new feature system, part 2Lars Knoll2016-11-2334-85/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | Convert all uses of QT_NO_FOO to proper QT_CONFIG(foo) checks. Change-Id: Id0f0b3325c246567a43d6b2d71b0d69e5535e648 Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | | Use the feature system internallyLars Knoll2016-11-2397-224/+333
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | Move qtwayland over to use the new configuration systemLars Knoll2016-11-2350-557/+341
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Re-use configuration results from qtbase where possible and move all pkg-config handling over to be done at configuration time. Since waylandclient and waylandcompositor are two independent libs, this required some duplication of features and libraries used by both in the configure.json files. Change-Id: I1f3ec56c85cb780324cc7634a3ad7951125853a0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Only send mouse move event when mouse movesPaul Olav Tvete2016-11-222-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | Fix build of brcm-egl clientDonald Carr2016-11-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Addendum to 3443483c9efdcfbfe049f96c83f83a5bf1d81e61 Change-Id: I915495d506efaa23f8f901293ee12ef5ec1736de Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Make sure we send leave events in the c++ examplePaul Olav Tvete2016-11-221-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | The code was there, but an unfortunate null pointer check made us skip sending leave events. Change-Id: I3095949ac41330fc10e2a97c025d94d47bc6ea4e Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | Don't reset the cursor at every mouse moveGiulio Camuffo2016-11-224-7/+19
| | | | | | | | | | | | | | | Change-Id: I67f9a0d171da403ebb124ab584c2510891da80fc Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Client: Close popups on xdg_popup::popup_doneJohan Klokkhammer Helsing2016-11-182-0/+10
| | | | | | | | | | | | | | | Change-Id: I6d3b1ec5c22e6d07ed87948074d886cc9aa126ef Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Create and destroy the shell surface when showing and hidingGiulio Camuffo2016-11-1717-78/+110
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes the shell surface handling for windows, and instead of creating the shell surface at initialization time, and then attaching a null buffer to hide it, it creates the shell surface on setVisible(true), and destroys it on setVisible(false). This fixes hiding when using xdg_shell, as that interface defines that attaching a null buffer to an xdg_surface is an error. Also this should help with bugged EGL drivers which attach a buffer after eglSwapBuffers() returns, which used to cause a newly hidden window to get a new valid buffer after we attached a null one, showing it again. Task-number: QTBUG-47902 Change-Id: I8e0a0442319a98cc1361803ea7be1d079b36fc8c Reviewed-by: Johan Helsing <johan.helsing@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Don't crash when surface is destroyedPaul Olav Tvete2016-11-175-16/+17
| | | | | | | | | | | | | | | Change-Id: I082c3bb0003265c625d165e1463951842a730c11 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | Fix crash with nested xdg popupsPaul Olav Tvete2016-11-172-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Popups that are children of popups would get a null parent in pure-qml. This would cause a crash in XdgPopupV5Integration. This change fixes pure-qml to set the parent correctly, and also adds null pointer checks to XdgPopupV5Integration. Change-Id: Ica5bd6c1a0853fbec1b30bc6ffff806b2cfd15f8 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | Rename qwaylandxdgpopup_p.cpp to qwaylandxdgpopup.cppJohan Klokkhammer Helsing2016-11-162-1/+1
| | | | | | | | | | | | | | | Change-Id: I4bffaafdae07db96d4fcca7d2a0751941a2e635f Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
* | | Fade-out animation for menusPaul Olav Tvete2016-11-151-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Since child items don't get transformation animations, enable an opacity transformation for them. Change-Id: I4ab77bc10d61602a0df72f5927cde4ebbcad27ce Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | Declare QWaylandOutputMode as a movable typePaul Olav Tvete2016-11-151-0/+1
| | | | | | | | | | | | | | | | | | | | | Based on API review comment from Lars. Change-Id: Id48a24218a3bce18d002fc4555b3c332b4b0fa49 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | Add missing override to initialize in QWaylandIviSurfaceRobert Loehning2016-11-141-1/+1
| | | | | | | | | | | | | | | Change-Id: I341a8969bcdf31a84e29778312e249277797e510 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | Add a QML client manual testPier Luigi Fiorini2016-11-144-0/+173
| | | | | | | | | | | | | | | | | | | | | | | | This little program can be useful to test window states in clients and compositors. Change-Id: I8eadc0d83906805a909032fb9341037491f6d379 Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
* | | Compositor: Set view output in QWaylandQuickItem::init()Johan Klokkhammer Helsing2016-11-142-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | Remove useless method QWaylandShmBackingStore::hiddenJohan Klokkhammer Helsing2016-11-113-8/+0
| | | | | | | | | | | | | | | | | | Change-Id: I8e28d3c1dc2c2bbff4517ffe3b2f63c2ac86b95f Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Remove QWaylandWindow::shellManagesActiveStateJohan Klokkhammer Helsing2016-11-1011-18/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If m_shellSurface was deleted, there was no way for QWaylandDisplay to know whether the shell handled window deactivation or not. The shell integration now always handles the window active state. The default implementation of QWaylandShellIntegration will make a window active on keyboard focus. Change-Id: I80cfce9976b1d3c57094fdd8980c9110b873f239 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Follow the protocol for nested xdg_popupsJohan Klokkhammer Helsing2016-11-102-4/+21
| | | | | | | | | | | | | | | | | | | | | | | | The previous implementation sent the wrong parent for nested popups and used a new serial for each popup instead of reusing the one for the current grab. Change-Id: I22b1cbe997a64562d47275821c9146157c51bc42 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Merge remote-tracking branch 'qt/5.7' into 5.8Paul Olav Tvete2016-11-1023-31/+110
|\ \ \ | |/ / | | | | | | Change-Id: Ibfe6fe6ed983b537d55544883b7dc75e5cc3fc37
| * | Merge remote-tracking branch 'qt/5.6' into 5.7Paul Olav Tvete2016-11-1023-30/+121
| |\ \ | | | | | | | | | | | | Change-Id: I1efd16d6c5f939d61001376c3b010eae1927595b
| | * | Client: Cleanup mouse state after dragJohan Klokkhammer Helsing2016-11-102-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes an issue where dragging with the mouse would cause the next touch event to not generate a synthesized mouse press event. The touchDrag test can now be run directly after the mouseDrag test without failing. Task-number: QTBUG-56187 Change-Id: I53cc5f90fc8d8672936b23f54a017687d41c31fc Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| | * | Client: Fix touch getting stuck after drag-and-dropJohan Klokkhammer Helsing2016-11-093-1/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | wl_touch.up is not sent by compositors when dragging, so release all touch points when the drag ends. Task-number: QTBUG-56187 Change-Id: I1c3d03c72e75a551355c50bb5d82433f5e2e35f0 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| | * | Don't create new xdg surfaces in updateTransientParentJohan Klokkhammer Helsing2016-11-091-1/+3
| | | | | | | | | | | | | | | | | | | | Change-Id: I1644a75269fec40644f02eeb275d9e6b98995c0e Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| | * | Fix build when some features are disabledPaul Olav Tvete2016-11-0720-13/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make QtWaylandClient compile when Qt is configured with: -no-opengl -no-accessibility -D QT_NO_CLIPBOARD -D QT_NO_DRAGANDDROP -D QT_NO_SESSIONMANAGER Task-number: QTBUG-56192 Change-Id: Idc6aae6b36a35515109a27bed31a22e3e909ef27 Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
| | * | remove dependencies from sync.profileOswald Buddenhagen2016-11-061-11/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | the CI obtains them from the qt5 super repo nowadays. Change-Id: I93b3231e94c15b93544b53bcfe72a18e4309903c Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
| | * | Client: Call parent requestUpdate after changing subsurface positionJohan Klokkhammer Helsing2016-10-261-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling setPosition on a child window would not send the appropriate commit request after the wl_subsurface.set_position request. Task-number: QTBUG-52118 Change-Id: I792016ce7e0a5a2efd3a32a98727b43ee0275b0e Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
| | * | Client: Remove windows from keyboard focus list when destroyedJohan Klokkhammer Helsing2016-10-243-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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> (cherry picked from commit 0049240a2b7d8691f09224e1542919ddbbb0d864) Reviewed-by: Johan Helsing <johan.helsing@qt.io>