We have a problem here: there's no way for us to know whether the overlaid MouseArea did or did not accept mouse events. childMouseEventFilter acts prior the MouseArea's mousePressed() is handled, so the event is still in accepted state. As result of onPressed: mouse.accepted = false, ListItem is also getting the mouse event, but the accepted state is still true.
We could rely on mouseEvent() being caught when overlaid items do not accept mouse events, after all all accepted events are suppressed and ListItem's event handler won't be called anymore... -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to ubuntu-ui-toolkit in Ubuntu. https://bugs.launchpad.net/bugs/1484545 Title: [listitem] swiping doesn't work when a mousearea on top doesn't accept the mouse event Status in ubuntu-ui-toolkit package in Ubuntu: Confirmed Bug description: staging r1603 ListItem { MouseArea { onPressed: mouse.accepted = false } } When a MouseArea doesn't accept a mouse event, the ListItem becomes non-swipable. After discussing this with kalikiana, we agreed that this behaviour is not intended and should be fixed. Not accepting a mouse event from within the listitem shouldn't stop the swiping mechanism from activating. The same applies to ListItem highlight or click, they should not be stopped by a MouseArea which is inside the listitem if that mouse area doesn't accept the mouse event To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/ubuntu-ui-toolkit/+bug/1484545/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp