summaryrefslogtreecommitdiff
path: root/src/compositor/wayland_wrapper
Commit message (Collapse)AuthorAgeFilesLines
* Port from container::count() and length() to size()Marc Mutz2022-10-101-2/+2
| | | | | | | | | | | | | | | | | | | | | This is a semantic patch using ClangTidyTransformator as in qtbase/df9d882d41b741fef7c5beeddb0abe9d904443d8: auto QtContainerClass = anyOf( expr(hasType(cxxRecordDecl(isSameOrDerivedFrom(hasAnyName(classes))))).bind(o), expr(hasType(namedDecl(hasAnyName(<classes>)))).bind(o)); makeRule(cxxMemberCallExpr(on(QtContainerClass), callee(cxxMethodDecl(hasAnyName({"count", "length"), parameterCountIs(0))))), changeTo(cat(access(o, cat("size"), "()"))), cat("use 'size()' instead of 'count()/length()'")) a.k.a qt-port-to-std-compatible-api with config Scope: 'Container', with the extended set of container classes recognized. Change-Id: I574208abc90a8042b500b3f96e3862b0ff339eb6 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Check m_dragFocusResource for nullptr in DataDevice::dragMoveRoman Genkhel2022-06-301-2/+2
| | | | | | | | | | | | We encounter situation where 'dragMove' was called for DataDevice`s instance, but 'data_device_start_drag' did not called or 'drop' was called before, because even all m_drag* pointers including m_dragOrigin were nullptr Pick-to: 6.3 Change-Id: Ic435286a77e273167b1aa812cbf18a7fbf3489f2 Reviewed-by: Elvis Lee <kwangwoong.lee@lge.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Use SPDX license identifiersLucie Gérard2022-06-1014-392/+28
| | | | | | | | | | | 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: includemocsLiang Qi2022-06-011-0/+2
| | | | | | | Pick-to: 6.3 6.2 5.15 Task-number: QTBUG-103295 Change-Id: I2311465d5341fc5902981d80ab0a117dd2df002d Reviewed-by: Marc Mutz <marc.mutz@qt.io>
* wayland: do not rely on transitive includesFabian Kosmale2022-03-111-0/+1
| | | | | Change-Id: I149e04d31ef3e897e25a91450427237069af4c34 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Make sure all private headers include at least one otherThiago Macieira2022-03-082-2/+4
| | | | | | | | | | See script in qtbase/util/includeprivate for the rules. Since these files are being touched anyway, I also ran the updatecopyright.pl script too. Change-Id: Ib056b47dde3341ef9a52ffff13ef677e471674b6 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QtWaylandCompositor: use cmake-generated export headersMarc Mutz2022-02-143-4/+4
| | | | | | | | 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 race condition with shared memory buffersPaul Olav Tvete2021-10-071-1/+8
| | | | | | | | | | | | SharedMemoryBuffer::image() returns an image that references the shared memory buffer directly. This creates a race condition if the image is used in a different thread. To avoid this, make sure that we mark the memory as in use as long as the image exists. Fixes: QTBUG-97245 Pick-to: 6.2 Change-Id: Ie740953a7f4fa1cecedfb0edb2bd71846896b3a3 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Support EGL protected contentYoungjin Kim2021-03-151-0/+3
| | | | | | | | | | If a buffer has a protected content like DRM decoded video, the EGL Protected content extension allows GPU to operate on the buffer. With that, wayland-egl can get EGL image and texture from protected content. Change-Id: Ia687fc4ebc348cb03450e06713040acaa34b1cab Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Support multiple buffer integrationsPaul Olav Tvete2020-08-262-9/+22
| | | | | | | | | | | | | Allow compositors to support more than one type of hardware client buffer integration. [ChangeLog][QtWaylandCompositor] QtWaylandCompositor now supports multiple client buffer integrations. QT_WAYLAND_CLIENT_BUFFER_INTEGRATION will now accept a semicolon-separated list. Fixes: QTBUG-68846 Change-Id: Iff1fa0a45b01f6a45dd744c37a89bac7d5e70658 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Update connects to QSocketNotifier::activatedMårten Nordheim2020-04-211-1/+1
| | | | | | | | | | The int-overload will in some cases truncate the descriptor. So it's being replaced. On Linux it won't truncate, so the slot can stay as int, but we still update which signal to connect to. Task-number: QTBUG-70441 Change-Id: I516a453c381e8d29464febabfd69c788e58db5fe Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Update QtWaylandCompositor license headers to GPL 3v5.14.0-beta2Paul Olav Tvete2019-10-1614-210/+70
| | | | | | | | | | | | 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: Respect wl_shm format when converting to a QImageJohan Klokkhammer Helsing2019-09-031-4/+6
| | | | | | | | | | | | | | | [ChangeLog][Compositor] Fixed a bug where compositors would advertise support for numerous wl_shm pixel formats and then blindly assume everything to be ARGB32_Premultiplied. Note that this may cause expensive conversions if the format of the client and the screen differs. The solution is probably to add API for letting the compositor opt in to the formats it wants to support (except for argb8888 and xrgb8888 which are mandatory). Fixes: QTBUG-75635 Change-Id: I07ca3dd4ef9633222d53361860fc0ab99f02eae7 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Port from implicit to explicit atomic operationsMarc Mutz2019-07-161-1/+1
| | | | | | | | | | | | The old code used the implicit conversions from QAtomicInteger<T> to T, and vice versa. The semantics of these differ from the ones std::atomic uses, so we're going to deprecate these, like we did for load() and store(), too. This patch fixes some users of these APIs before we deprecate them. Change-Id: Iab07e00d5f59d5de73233571bca723f94f76a265 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Eradicate Q_FOREACH loops [1/2]: trivial casesMarc Mutz2019-05-212-4/+6
| | | | | | | | | | | | | | | In this patch, we port Q_FOREACH loops to C++11 ranged-for loops. All cases are trivial in the sense that either the argument is already const or is trivially marked as const, either by qAsConst(), or, in the case of rvalues, by storing to a const auto temporary first. In addition, all loop bodies are clear enough to confirm that the container we iterate over is not changed under iteration. This does not exclude cases where a loop is prematurely exited just after calling a modifier on the container, as that is safe, if not especially elegant. Change-Id: I87a63f07797437d421567d60e52305391a3c4f21 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* drop qwaylandxkb and share the logic with X11Gatis Paeglis2019-04-251-4/+2
| | | | | | | | | | | | | QtWayland can benefit from sharing code with X11. This will fix issues that have been reported and fixed on XCB a long time ago. Task-number: QTBUG-65503 Fixes: QTBUG-71301 Fixes: QTBUG-66497 Change-Id: I09cbf8e1c9cf29e8d7f46b97bc2f11d6e91b61a5 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Client: Initialize m_retainedReadIndexJohan Klokkhammer Helsing2019-01-181-1/+1
| | | | | | Change-Id: I9ae028cda8f8a874eb8379f16a9ef7facf0ed85d Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Merge remote-tracking branch 'origin/5.12' into devLiang Qi2018-12-221-2/+2
|\ | | | | | | | | | | | | | | Conflicts: README src/hardwareintegration/client/xcomposite_share/xcomposite_share.pri Change-Id: I7cbbf39916821f0f1749e3ccab3151f68f4aa1ac
| * use new feature name xkbcommon_evdev -> xkbcommonGatis Paeglis2018-12-051-2/+2
| | | | | | | | | | | | | | | | | | The xkbcommon configure logic was refactored in qtbase/c3a963da1f9e7b1d37e63eedded61da4fbdaaf9a. For more details see the relevant commit. Change-Id: Ic1aa26846ab8266c589f6e92dc8b81aba36df58a Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | Compositor: Implement linux-dmabuf-unstable-v1Andreas Cord-Landwehr2018-12-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Compositor] Added support for linux-dmabuf-unstable-v1. Implement client side DMABUF buffer sharing support by supporting the linux-dmabuf-unstable-v1 (version 3) protocol. For enabling DMABUF, set the following environment variables for the compositor: QT_QPA_PLATFORM=eglfs QT_WAYLAND_CLIENT_BUFFER_INTEGRATION=linux-dmabuf-unstable-v1 The current implementation supports the following DRM buffer formats: - RGB and RGBA - YUYV This implementation requires Mesa with the following patch applied. Otherwise, textures are not updated. The patch is contained in Mesa 18.1.5. See https://patchwork.freedesktop.org/patch/238080/ Fixes: QTBUG-66288 Fixes: QTBUG-67845 Change-Id: Id4d90337dbe0be956b0f964426ebed3f281c6c30 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | Add convenience for converting wl_resource * to wrapper typesJohan Klokkhammer Helsing2018-11-212-4/+5
| | | | | | | | | | Change-Id: Ieb2f9706ac707ff878165d3f9001e4a28b8ff1ce Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Don't include system versions of wayland protocolJohan Klokkhammer Helsing2018-10-033-4/+4
|/ | | | | | | | | | | | | | | | | | | | | wayland-client.h and wayland-server.h includes protocol generated for the version of wayland.xml corresponding to the libwayland version. This becomes a problem when we want to support a version of wayland.xml that's newer than the system libwayland. The solution is to include wayland-client-core.h and wayland-client-server.h instead. These headers don't include any wayland-scanner generated code, so we can safely compile and link code generated against the version of wayland.xml that we ship. [ChangeLog] Code generated by qtwaylandscanner now includes wayland-client-core.h and wayland-server-core.h instead of wayland-client.h and wayland-server.h. This might break source compatibility for code using custom wayland extensions. Fixes: QTBUG-70553 Change-Id: Ice0cdb60ecc4f936acc0e158b96f7978549f62c1 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Don't use members of wl_resourceJohan Klokkhammer Helsing2018-09-183-4/+4
| | | | | | | | | When we switch to only including core wayland headers, wl_resource will be an opaque type. Use the getters and setter functions instead. Task-number: QTBUG-70553 Change-Id: I7d84d48a4ee3586f231a331cd15716686dcee775 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Compositor: Fix nullptr dereferences in fromResource functionsJohan Klokkhammer Helsing2018-08-291-1/+3
| | | | | | | | | If there was no resource for the given wl_resource*, don't try to dereference it. Change-Id: I3a27a5805699148bb26029e8b4179042c3c1117a Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Disable the -Wmissing-field-initializers warning for Clang tooThiago Macieira2018-05-231-0/+1
| | | | | | | qwldatadevicemanager.cpp:277:1: warning: missing field 'finish' initializer [-Wmissing-field-initializers] Change-Id: I052407b777ec43f78378fffd15311263e7498287 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Use override when applicableJohan Klokkhammer Helsing2018-02-283-3/+3
| | | | | | | | | | 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>
* Use default member initialization for raw pointersJohan Klokkhammer Helsing2018-02-284-6/+6
| | | | | | | | Initialize to nullptr to prevent undefined behavior. Change-Id: I7753c0be77a886d62ecb1cd7b86fc8c98340b0b8 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Init variables where they are declared when possible (clang-tidy)Johan Klokkhammer Helsing2018-02-279-42/+19
| | | | | | | | | | | | | | | | | | | | 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>
* Use nullptr instead of 0 or NULLJohan Klokkhammer Helsing2018-02-204-21/+21
| | | | | | | | 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>
* Disable the GCC warning about missing initializersThiago Macieira2017-06-221-0/+2
| | | | | | | | | New fields are appended to the structure, so we can't initialize them as we would lose compatibility with earlier versions of libwayland. So just disable the warning. Change-Id: Ia3e896da908f42939148fffd14c4806ce3468e56 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Set size and format in SharedMemoryBuffer::toOpenGlTextureJohan Klokkhammer Helsing2017-06-161-0/+3
| | | | | | | The texture returned previously would have size (1,1) and format NoFormat Change-Id: Ic627b7ff9d10cc87cd9307f5f18ea96458fae212 Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
* Fix licensingv5.9.0-beta4Jani Heikkinen2017-05-0414-168/+210
| | | | | | | | | | 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>
* Fix warning about inconsistent use of override keywordv5.9.0-beta2Thiago Macieira2017-04-041-1/+1
| | | | | | | | | qwaylandshmbackingstore_p.h:93:19: warning: 'paintDevice' overrides a member function but is not marked 'override' [-Winconsistent-missing- override Change-Id: I27b55fdf514247549455fffd14b1791d4dd6b6b3 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Don't redefine symbols from system librariesPaul Olav Tvete2017-03-281-1/+1
| | | | | | | | The system library versions may contain driver-specific functionality. Change-Id: Iaaa71bff7d2c305cb47798920a5977aaa2a3ac8a Task-number: QTBUG-58299 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Clean up draganddrop and clipboard featuresPaul Olav Tvete2017-03-236-23/+55
| | | | | | | | | | | | 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>
* Replace all occurrences of Q_DECL_OVERRIDE with overrideJohan Klokkhammer Helsing2017-01-236-18/+18
| | | | | Change-Id: I16b7b23efe944b49d1fcc9e7588cdb0a991cebd1 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Fix build with -no-openglJohan Klokkhammer Helsing2017-01-191-0/+2
| | | | | Change-Id: I8340a4d2efe4f3d4a9bd5aaedda6db1b55009951 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Use the feature system internallyLars Knoll2016-11-234-9/+6
| | | | | | | | | 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-231-6/+2
| | | | | | | | | | | | | 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>
* Expose native buffer handlesPaul Olav Tvete2016-10-031-2/+2
| | | | | | | | | This is required for making accelerated compositors that do not use OpenGL. Change-Id: I76c735a971dc62344080aececc087c0495925b87 Reviewed-by: Louai Al-Khanji <louai.al-khanji@qt.io> Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Refactor buffer handlingPaul Olav Tvete2016-10-016-304/+424
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Compositor API: rename QWaylandInputDevice to QWaylandSeatJohan Klokkhammer Helsing2016-08-113-16/+16
| | | | | | | | | | | | 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>
* Compile with -no-openglJohan Klokkhammer Helsing2016-07-202-0/+12
| | | | | | | | | | | | | | QtWayland has not compiled without OpenGL for a while. This patch fixes the compilation issues and removes the old config variable, "QT_WAYLAND_GL_CONFIG" and instead checks for the presence of "opengl" in "QT_CONFIG". A new define is also introduced, QT_WAYLAND_COMPOSITOR_QUICK, because it may eventually be possible to use create a QtQuick compositor without OpenGL. Task-number: QTBUG-54322 Change-Id: Ica7b3b320212d4ae1f8b1053725b73c83739c73c Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
* Compositor: Rename shm to sharedMemoryJohan Klokkhammer Helsing2016-07-112-5/+5
| | | | | | | | sharedMemory is much clearer and will increase the readability of the code and API. Change-Id: Ibb6d7424fa8d44a94a0f4ddf476a564eb235323f Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
* Rename QT_COMPOSITOR_WAYLAND_GL to QT_WAYLAND_COMPOSITOR_GLJohan Klokkhammer Helsing2016-07-011-1/+1
| | | | | | | | Qt Wayland Compositor is the name used for the module elsewhere. Change-Id: I28813d50f1aed86f49a31aa54d27ea4ed2770d6a Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
* Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-06-112-2/+12
|\ | | | | | | | | | | | | Conflicts: src/compositor/wayland_wrapper/qwldatadevice.cpp Change-Id: I2f555f969ec36b3e9b4123d758ae4176c5c90164
| * Compositor API: Clear drag icon when droppingJohan Klokkhammer Helsing2016-06-092-2/+12
| | | | | | | | | | Change-Id: I81f9645d1bc959e31f7663ab89bda285951331e7 Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
* | Add dragStarted signal to QWaylandSurfaceJohan Klokkhammer Helsing2016-06-071-2/+4
| | | | | | | | | | | | | | This signal is emitted when starting to drag from the surface Change-Id: Ia949253833c7a0c6773810525ac1066e0db955fc Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* | Store and expose origin surface in QWaylandDragJohan Klokkhammer Helsing2016-06-032-1/+10
|/ | | | | Change-Id: Ic2bcc88f4ff375019ff7c6fe80ae4ec72205ca2d Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Send data_source.cancelled event when dropping on nothingJohan Klokkhammer Helsing2016-05-301-0/+2
| | | | | | | | | | | I.e. on the wallpaper. This will fix a bug where dragging things onto the wallpaper in qwindow-compositor would make the drag icon stay there indefinitely. Change-Id: I19cb4e268346c3b4b624839939f295f64bf97aaf Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com> Reviewed-by: Erik Larsson <erik@ortogonal.com> Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>