aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickmousearea.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Explicitly call setCursor in the QQuickMouseArea constructorDaiwei Li2013-08-271-0/+6
| | | | | | | | | | | | | | QQuickItemPrivate has a boolean hasCursor that is used by QQuickWindow to determine whether to use the cursor for an item. QQuickMouseArea has a default cursorShape of Qt.ArrowCursor that is ignored due to hasCursor not being set. Thus, call setCursor in the QQuickMouseArea constructor to sync the cursor state of the QQuickItem and the MouseArea. Task-number: QTBUG-33157 Change-Id: I56402564bd72bdc89d6ef8e5bc75bfd07c096202 Reviewed-by: Josh Faust <jfaust@suitabletech.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* Fix hover after press eventFrederik Gladhorn2013-04-271-1/+2
| | | | | | | | | | | | | | | When a mouse press event was rejected, we would unconditionally cancel the hover and claim that the mouse is not contained any more. Instead check if the mouse left and only then cancel the hover state. Task-number: QTBUG-30783 Change-Id: I5fac6f3a1f2807ef03e07982c603492d40d2a249 Reviewed-by: Florian Boucault <florian@boucault.net> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* Simplify setting of hoverFrederik Gladhorn2013-04-261-5/+1
| | | | | Change-Id: I620dad5a07749a25c97f5c17e8f7f552593cfd2d Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Smooth dragging an item with MouseArea.Andrew den Exter2013-03-141-0/+1
| | | | | | | | | | Calculate drag distance relative to the mouse position when a drag is detected rather than the press position so there isn't a large change in position on the first move. Task-number: QTBUG-30188 Change-Id: I5c2269c2228668a3842e18f65167637497b3beb4 Reviewed-by: Joona Petrell <joona.petrell@jollamobile.com>
* MouseArea shouldn't grab the mouse until there is an effective drag.Andrew den Exter2013-02-221-30/+19
| | | | | | | | | | A MouseArea shouldn't prevent a parent MouseArea or Flickable from handling a drag event unless it is going to do something useful with it. Task-number: 29717 Change-Id: I24016994f6cf9116382ef7faeb50b10e5716e10e Reviewed-by: Alan Alpert <aalpert@rim.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-101-1/+1
| | | | | | Change-Id: I6c3bd7bebe3d62d1cfd0fa6334544c9db8398c76 Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Compile with QT_NO_WHEELEVENT.Volker Krause2012-12-191-0/+2
| | | | | | | | Change-Id: I2fbe6f45ba50e3db75bd02cfca47ddabfcd5fc49 Reviewed-by: Tasuku Suzuki <stasuku@gmail.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Add a hidden XandYAxis enum valueAlan Alpert2012-12-151-2/+2
| | | | | | | | | For Qt 5 XandYAxis is being renamed to XAndYAxis to more consistently follow capitalization rules. Add an undocumented XandYAxis variable to ease porting. Change-Id: Id9e41dd5578373f5f557937da889a9326ff12e53 Reviewed-by: Martin Jones <martin.jones@jollamobile.com>
* Renamed QQuickItem::pos property to positionShawn Rutledge2012-11-291-4/+4
| | | | | | | | | Abbreviated property names are less descriptive so we don't have many of them. Might as well be consistent. QWindow::pos was already renamed. Change-Id: Ib52673e68e7dc902b2f8942dba6b899074b2538b Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Remove interim compatibility measuresAlan Alpert2012-10-161-1/+1
| | | | | | | | Also update some variables in qtdeclarative which failed to update rootItem->contentItem. Change-Id: Id34e29546a22a74a7ae2ad90ee3a8def6fc541d3 Reviewed-by: Alan Alpert <416365416c@gmail.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-231-24/+24
| | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix uses of various qml doc commandsBea Lam2012-08-081-2/+2
| | | | | | | | | | | | | | Signals documented with \qmlsignal should indicate handler name, i.e. 'onSignal' rather than 'signal'. Methods documented with \qmlmethod do not need to document 'void' return values. Also the name of any documented attribute should be qualified with 'QtQuick2::<qmltype>'. Change-Id: I206dd9e8f39c3b84e029ae9d4101b05d0bfb3478 Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
* MouseArea doc improvementsBea Lam2012-08-071-24/+59
| | | | | | | | | Add example for propagateComposedEvents, and shorten the description of this property in the main type docs as it's discussed in detail in the property docs. Change-Id: I6bc0acd537184c9dd8b5a22bcbc3fd044e10a2cd Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Doc: QQuickMouseArea::acceptedButtons() accepts ALL MouseButtonsstockton2012-08-031-10/+10
| | | | | | | | | | | | setAcceptedButtons() can make a MouseArea respond to any/all of the Qt::MouseButtons defined in Qt5. (27 possible buttons, not just Qt::LeftButton | Qt::RightButton | Qt::MiddleButton) Task-number: QTBUG-26735 Change-Id: Ib48e5b02eb64c65050b9020b99d917e472328a30 Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com> Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Doc: Changed \qmlclass to \qmltype and added \instantiates.Jerome Pasion2012-07-301-1/+2
| | | | | | | | | | -To simplify QDoc, \qmlclass is now \qmltype. -'\instantiates <C+++ class>' is for the types that are defined in C++. Change-Id: I29242d33daf7b972d8b86a356b9689638866b950 Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Bea Lam <bea.lam@nokia.com> Reviewed-by: Martin Smith <martin.smith@nokia.com>
* Fix resolution of cursor when items are overlapping.Andrew den Exter2012-07-261-17/+8
| | | | | | | | | | | | If MouseArea with cursorShapes are overlapping then cursor shape of the foremost item under the mouse cursor should be shown, but because the hover events are delivered to the foremost items first the opposite is occuring. This makes QQuickWindow responsible for correctly setting its own cursor instead of relying on items to work it out amongst themselves. Change-Id: Iedf144c583dfa3d1ff441e19db9601b5e171902a Reviewed-by: Martin Jones <martin.jones@nokia.com>
* QQuickCanvas renamesAlan Alpert2012-07-171-12/+12
| | | | | | | | | | | | | | | | QQuickCanvas is now called QQuickWindow QQuickCanvas::rootItem is now QQuickWindow::contentItem QQuickItem::canvas is now QQuickItem::window QQuickItem::ItemChangeData::canvas is also renamed window QQuickCanvas::grabFrameBuffer is now QQuickWindow::grabWindow The functions related to the color property have dropped the clear from their names. The first three changes have interim compatibility measures in place to ease the transition. Change-Id: Id34e29546a22a74a7ae2ad90ee3a8def6fc541d2 Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Change Quick docs to refer to "types" rather than "elements"Martin Jones2012-07-161-4/+4
| | | | | | Task-number: QTBUG-24785 Change-Id: I223479b879514abaacb123852323c1cfada7a5e1 Reviewed-by: Bea Lam <bea.lam@nokia.com>
* MouseArea: use current value of drag.axisAlberto Mardegan2012-07-161-13/+9
| | | | | | | | | | | | | If the drag.axis is changed while a drag operation is in progress, put it into action immediately. This allows, for example, start a dragging operation out of an item in a scrollable ListView to anywhere on the screen. See the linked bug number for an example. Task-number: QTBUG-26440 Change-Id: Id4219d44d1066dd962319086ac1f2a2a75bb2525 Reviewed-by: Damian Jansen <damian.jansen@nokia.com> Reviewed-by: Martin Jones <martin.jones@nokia.com>
* pressed and pressedButtons don't work when multiple buttons are pressedMartin Jones2012-07-111-35/+52
| | | | | | | | | | | | | | | The pressed property would react to any mouse event, regardless of whether it was in acceptedButtons, or there were other buttons still pressed. It will now remain true while any button in acceptedButtons is pressed. The pressedButtons property could contain buttons not in the acceptedButtons mask. It will now only contain buttons that are in the acceptedButtons mask. Task-number: QTBUG-26458 Change-Id: I6b25cc36a58c113de062d530761dc179d7ef4a5a Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
* Report correct mouse position when made visible with hoverEnabled.Michael Brasser2012-07-041-1/+9
| | | | | | Task-number: QTBUG-24282 Change-Id: I778b2db18c28e2b33690531ec19eb24ecf444a38 Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Allow mouse interaction with 0 opacity items.Andrew den Exter2012-07-041-2/+0
| | | | | | | | | | | Don't filter event delivery to items with 0 opacity, and update the documentation the for opacity, visible and enabled properties and how each affects event delivery. Task-number: QTBUG-19193 Change-Id: Id48e4af763c9a7bbcc13b303342d303155dcadc9 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com> Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Add mouse cursor shapes to MouseAreaFrederik Gladhorn2012-06-251-0/+78
| | | | | | | | | This adds a new property that uses the enum from the Qt namespace to allow setting of custom cursor shapes for mouse areas. Change-Id: I4d1ac6339b69dc9ea7855a8b8b6aa9276c71a90d Reviewed-by: Jeremy Katz <jeremy.katz@nokia.com>
* Make qtdeclarative compile with QT_NO_DRAGANDDROPTasuku Suzuki2012-06-241-2/+36
| | | | | | Change-Id: Ie92455495979b065b574f013d95fac17739fa40e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Jeremy Katz <jeremy.katz@nokia.com>
* Create new documentation structureChris Adams2012-06-211-1/+1
| | | | | | | | | | | | | | | | | | | | The documentation currently has no clear separation between Qt QML and Qt Quick. With recent commits like: 6c8378eaf1edbbefe6aaa3672b0127816a004fd7 and ab1e510121c8a679fdaca12ccd30e0f7ac12a26b the separation between the language definition and implementation, provided by Qt QML, and the standard library for the QML language, provided by Qt Quick, is clear. This commit creates a new documentation structure that is more navigable and separates concepts into logical categories, with clear separation between QtQML and QtQuick. It also provides a more generic QML Application Developer Resources page which contains links to information for QML application developers. Change-Id: Ia807ccfbfd24ffa0e1c7f0a51ed9d2ed3aa6a733 Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Avoid string-based lookup in IS_SIGNAL_CONNECTEDKent Hansen2012-06-101-4/+4
| | | | | | | | | | Specify the signal as a member function suitable for passing to QMetaMethod::fromSignal(), and use the new function QMetaObjectPrivate::signalIndex(QMetaMethod) to get the index in the signal range. Change-Id: If16daa24c2699f7749a17decb611cf395d89d0c4 Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
* Fixing MouseArea::onWheel event docLuís Gabriel Lima2012-06-071-1/+1
| | | | | Change-Id: Ice5698ead44a6ca04f55739714818dd5d1da123a Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
* Utilize StartDragVelocity style hint in FlickableLaszlo Agocs2012-06-061-4/+5
| | | | | Change-Id: I96924b08aede57a0622ea3f7419e8f73a9f18f5d Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Doc: Grouped Qt Quick types into several groupsJerome Pasion2012-06-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -created new groups and converted some overviews into group pages -edited type documentation and added \ingroup -articles still need title fixes and link fixes Groups: qtquick-visual-types qtquick-item-graphics qtquick-shaders qtquick-canvas qtquick-text qtquick-text-validator qtquick-interaction qtquick-positioners qtquick-transformations qtquick-states qtquick-animation-define qtquick-animation-properties qtquick-animation-control qtquick-animation-modifiers qtquick-images-sprites qtquick-images qtquick-models qtquick-containers qtquick-views qtquick-paths qtquick-utility Task: QTBUG-25685 Change-Id: I81d4df3320bf5daad5cabb5e42408013fb24f464 Reviewed-by: Bea Lam <bea.lam@nokia.com> Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
* Fix doc snippets paths and parsing errorsBea Lam2012-05-311-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qtqml.qdocconf and qtquick.qdocconf now refer to the correct snippets and source directories. Snippet paths in .qdoc and .cpp files have been updated to refer to the new shortened path references, e.g. \snippet qml/file.cpp instead of \snippet doc/src/snippets/qml/file.cpp. This also deletes snippets from src/qml/doc/snippets that belonged under src/quick/doc/snippets (and were already duplicated there anyway) and restores some snippet files that shouldn't have been deleted. Also fixes some inline snippets to use \code .. \endcode instead of \qml .. \endqml as they contained javascript or partial QML snippets that were causing parsing errors from qdoc. There are still snippet errors arising from qmlintro.qdoc as the qmlintro snippets directory that it refers to cannot be located. There are also two references to a removed snippet identifier in examples/qml/cppextensions/plugins/plugin.cpp that need to be fixed in conjunction with the related docs in a later commit as the relevant code has changed and the docs are now invalid. Task-number: QTBUG-25721 Change-Id: I50c665245a74c140470c58a32546591d187dfe4b Reviewed-by: Chris Adams <christopher.adams@nokia.com>
* Doc: Sanitized QML typesNico Vertriest2012-05-241-1/+1
| | | | | | | | | | -modified \brief -checked QML modules -added qml directory to the qdocconf file -added particles directory to the qdocconf file Change-Id: I589e32d3106cda37c7fa4d55a941afd9876fc2b2 Reviewed-by: Geir Vattekar <geir.vattekar@nokia.com>
* Fix setting drag properties in mousePress.Andrew den Exter2012-05-141-5/+5
| | | | | | | | | Cache the dragX and dragY properties after the onPressed signal has been emitted to allow for deferred creation of the drag object or changes to the axis property in the handler. Change-Id: If154e661359c82e957fcf0cbc11ccc1f75bee919 Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Doc: Moving Qt Quick docs for new doc structureGeir Vattekar2012-05-091-6/+6
| | | | | | | | | | | | | | | -moved documentation from doc/src/qtquick2 doc/src/localstorage doc/src/particles to src/quick/doc/ -fixed qdocconf file -fixed snippets, images, and other qdoc errors related to the new directories -fixed links in the main Qt Quick page Change-Id: Ie3408c2624f623c17de07e5635d5c7284d02b973 Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
* Rename absorb to enabled.Frederik Gladhorn2012-04-301-15/+15
| | | | | | | | | This makes the code easier to read. Change-Id: Id0deca6e9bdbcf7291eaa30fda0ec5b76bbf5bf6 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@nokia.com> Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
* Also check notifier endpoints when checking whether a signal is connected.Michael Brasser2012-04-231-8/+6
| | | | | | | This is required for the QQmlBoundSignal optimizations. Change-Id: I63540b96cd7d4523ec49973a2540054c83d82b12 Reviewed-by: Chris Adams <christopher.adams@nokia.com>
* Add contains method to QQuickItem public APIAdriano Rezende2012-04-191-8/+8
| | | | | | | | This method can be overwritten in order to provide fine grained control over the mouse events handled by the item. Change-Id: I23cb61958d3ac0b2f5091c47fa9e0ed07dc5e5d0 Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Remove the usage of deprecated qdoc macros.Casper van Donderen2012-03-131-12/+12
| | | | | | | | | | QDoc now has support for Doxygen style commands for italics, bold and list items. This change applies that change in QDoc to the actual documentation. Task-number: QTBUG-24578 Change-Id: I62d203f21df63a95ee236e578b10418fd9680707 Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
* Add mouse wheel events handler to MouseAreaLuis Gabriel Lima2012-03-101-1/+36
| | | | | | | | | | | | This patch was based on the attached patch in QTBUG-7369. It basically exposes the wheel events to MouseArea via the onWheel signal. The current API is based on the new QWheelEvent API introduced by this patch: http://codereview.qt-project.org/#change,12532 Task-number: QTBUG-7369 Change-Id: Id58513715c2d0ae81e3a69e9e1ed400bbae07507 Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
* Handle MouseArea.enabled = false after mouse is pressed.Martin Jones2012-03-051-6/+6
| | | | | | | | | | | | | Currently this leaves the MouseArea in a broken state, i.e. still in pressed state, and the next press after it is re-enabled is ignored. In this case we now allow subsequent mouse move or release events to continue. Following the release, no further press will be accepted. Change-Id: I65a890da90e2166ad568505fffdbd3db6c97165b Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
* Rename QDeclarative symbols to QQuick and QQmlMatthew Vogt2012-02-241-7/+7
| | | | | | | | | | | | | Symbols beginning with QDeclarative are already exported by the quick1 module. Users can apply the bin/rename-qtdeclarative-symbols.sh script to modify client code using the previous names of the renamed symbols. Task-number: QTBUG-23737 Change-Id: Ifaa482663767634931e8711a8e9bf6e404859e66 Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Reduce size of QQuickItemPrivateAaron Kennedy2012-02-211-2/+2
| | | | | Change-Id: I02653536f68cfef3dfc06acaf30e2565a97dc194 Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
* Provide visual debugging for MouseArea and TouchAreaYann Bodson2012-02-171-0/+23
| | | | | | | | | Display MouseAreas and TouchAreas as semi transparent rectangles when the environment variable QML_VISUAL_TOUCH_DEBUGGING is set. Task-number: QTBUG-24283 Change-Id: Iec8482a79ed1d4b802c29a5f7104af4e0a6eab7d Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-301-1/+1
| | | | | | | | | | As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: If39bd256b0fa85eba17ea30f8ab87ea27d758908 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update obsolete contact address.Jason McDonald2012-01-231-1/+1
| | | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I6a730abc0c396fb545a48b2d6938abedac2e3f1c Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com> Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
* Update copyright year in license headers.Jason McDonald2012-01-051-1/+1
| | | | | Change-Id: I0a8d99909cac867dce72da70b1bbcb649989a51b Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Say hello to QtQuick moduleKent Hansen2011-12-021-0/+1168
This change moves the QtQuick 2 types and C++ API (including SceneGraph) to a new module (AKA library), QtQuick. 99% of this change is moving files from src/declarative to src/quick, and from tests/auto/declarative to tests/auto/qtquick2. The loading of QtQuick 2 ("import QtQuick 2.0") is now delegated to a plugin, src/imports/qtquick2, just like it's done for QtQuick 1. All tools, examples, and tests that use QtQuick C++ API have gotten "QT += quick" or "QT += quick-private" added to their .pro file. A few additional internal QtDeclarative classes had to be exported (via Q_DECLARATIVE_PRIVATE_EXPORT) since they're needed by the QtQuick 2 implementation. The old header locations (e.g. QtDeclarative/qquickitem.h) will still be supported for some time, but will produce compile-time warnings. (To avoid the QtQuick implementation using the compatibility headers (since QtDeclarative's includepath comes first), a few include statements were modified, e.g. from "#include <qsgnode.h>" to "#include <QtQuick/qsgnode.h>".) There's a change in qtbase that automatically adds QtQuick to the module list if QtDeclarative is used. Together with the compatibility headers, this should help reduce the migration pain for existing projects. In theory, simply getting an existing QtDeclarative-based project to compile and link shouldn't require any changes for now -- but porting to the new scheme is of course recommended, and will eventually become mandatory. Task-number: QTBUG-22889 Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Change-Id: Ia52be9373172ba2f37e7623231ecb060316c96a7 Reviewed-by: Kent Hansen <kent.hansen@nokia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>