ListItem calls onClicked handler even when press is cancelled
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical System Image |
Fix Released
|
High
|
Unassigned | ||
ubuntu-ui-toolkit (Ubuntu) |
Fix Released
|
High
|
Cris Dywan |
Bug Description
To reproduce:
* Run the attached qml file
* press the mouse/finger on the ListItem in the center (don't release)
* drag the mouse/finger outside the listitem
* release
=> you'll see a "Clicked!!!" message printed to stdout
expected: when the user decides not to click an item and cancels it by moving outside the mouse area to release, the clicked signal should not be emitted.
This is also what the QML MouseArea does. From it's docs: "A click is defined as a press followed by a release, both inside the MouseArea (pressing, moving outside the MouseArea, and then moving back inside and releasing is also considered a click)."
The current behavior causes some nasty usability issues in some apps as the user is used to be able to cancel a click this way, but ListItems behave differently than all the other elements. I.e. the Ubuntu Button behaves the same as the MouseArea etc.
Related branches
- ubuntu-sdk-build-bot: Approve (continuous-integration)
- Zsombor Egri: Approve
-
Diff: 72 lines (+25/-0)2 files modifiedsrc/Ubuntu/Components/plugin/uclistitem.cpp (+2/-0)
tests/unit_x11/tst_components/tst_listitem13.qml (+23/-0)
Changed in ubuntu-ui-toolkit (Ubuntu): | |
assignee: | nobody → Christian Dywan (kalikiana) |
importance: | Undecided → High |
status: | New → In Progress |
Changed in canonical-devices-system-image: | |
status: | New → Fix Committed |
importance: | Undecided → High |
milestone: | none → ww08-2016 |
Changed in canonical-devices-system-image: | |
status: | Fix Committed → Fix Released |
This bug was fixed in the package ubuntu-ui-toolkit - 1.3.1872+ 16.04.20160308- 0ubuntu1
--------------- 16.04.20160308- 0ubuntu1) xenial; urgency=medium
ubuntu-ui-toolkit (1.3.1872+
[ Timo Jyrinki ]
* Fix gles unit test skipping.
* Add s390x to the unit test skipping architectures
* UITK test plan - wily -> xenial. Fixes LP: #1544490
[ Christian Dywan ] visible flakes on non-arm. Fixes LP: #1534651 Test::doubleCli cked. Fixes LP: #1542215
* Print errors when QuickUtils fails to create a component.
* unit tests shouldn't use deprecated Dialog.callera
* Correctly count only test case results. The result= value is used in suites
and results.
* Skip tst_pagehead_
* Skip flaky tst_mousefilter
* Suppress click signal if releasing outside of ListItem. Fixes LP: #1541148.
* Use gdb in runtest.sh to produce backtraces.
* Arrow keys change value of a Slider. Fixes LP: #1523824.
* Only use Maliit when enabled explicitly in the environment
[ Oliver Tilloy ] ress".
* Do not try to assign to non-existent property "activeFocusOnP
Fixes LP: #1532953
* Bubble up ESC key press event if there is no popover to close.
Fixes LP: #1546627
[ Loïc Molinari ]
* Added private items and nodes for the new component styles.
Fixes LP: #1523836
* Made use of new private Frame item for the focusing.
* Fixed performance monitor crash because of a NULL timer pointer dereference.
Fixes LP: #1546986
* Fixed performance monitor dangling pointer crash. Fixes LP: #1546984
* [ProportionalShape] Ensured width/height ratio is correct with default values.
Fixes LP: #1546546
* Added a workaround to prevent a crash while changing the QPA scale factor.
[ Florian Boucault ]
* Always on performance monitor that logs frames that too long to render.
* MainView: proceed to selecting the theme automatically at startup too.
Fixes LP: #1535819
* MainView: when no gradient color is needed for the background, rely on
QQuickWindow's GL clear color. Lessens overdraw considerably for most
apps. Fixes LP: #1439133.
* Panel: MathUtils used without import prefix was leading to undefined
reference.
* Label: use native rendering on low dpi screens (GRID_UNIT_PX <= 10) for
sharper looking text.
* Gallery: added palette browser to Colors page.
[ Tim Peeters ]
* Support scrolling in ListViews with horizontal orientation to the
qquicklistview CPO.
* Add background to AppHeader and remove contents clipping from MainView.
Fixes LP: #1531016, LP: #1531457.
* Hide AppHeader when using AdaptivePageLayout. Fixes bug 1531871.
Fixes LP: #1531871.
* Implement horizontal flicking in the flickable autopilot CPO.
* Re-order to list of pages in the gallery to be alphabetical.
* Fix the autopilot failures introduced with the horizontal scrolling in
the Flickable CPO.
* Update documentation for MainView, Page, AdaptivePageLayout to use the new
PageHeader in all examples. Deprecate old properties. Fixes LP: #1540574
* Add 'animate' property to new internal AppHeaderBase, and do not show a
header animation when starting an app without header.
Fixes LP: #1518002, LP: #1524901.
...