Long-tapping doesn't work on any control

Bug #1365471 reported by Matthew Paul Thomas
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubuntu-ui-toolkit (Ubuntu)
Fix Released
High
Zsombor Egri

Bug Description

Problem occurs with: Ubuntu 14.10 r22
Does not occur with: iOS 7, Windows Phone 8.0

1. Long-tap on any control: for example, a button, switch, checkbox, or page stack item.
2. Let go.

What happens: Nothing.

What should happen: Unless the control has a specific action for long-tapping, it should activate just as if you did a short tap.

Fixing this would be one way of fixing bug 1289329.

Tags: listitem

Related branches

description: updated
description: updated
Revision history for this message
Zsombor Egri (zsombi) wrote :

I will assign this to the new list item, as we have there much more flexibility to handle clicks and long presses.

Changed in ubuntu-ui-toolkit (Ubuntu):
assignee: nobody → Zsombor Egri (zsombi)
Changed in ubuntu-ui-toolkit:
assignee: nobody → Zsombor Egri (zsombi)
importance: Undecided → High
status: New → Triaged
tags: added: listitem
Zoltan Balogh (bzoltan)
Changed in ubuntu-ui-toolkit (Ubuntu):
status: New → Triaged
Revision history for this message
Zsombor Egri (zsombi) wrote :

Ah, just realised that the bug refers to any component. Actually the problem is, that this is due to the way a MouseArea works. All components you listed here are derived from AbstractButton, and that component also has pressAndHold() signal. Now, that signal is a forwarded signal from the MouseArea the component uses. And here comes the problem: MouseArea does NOT emit clicked event if the pressAndHold signal is connected/implemented. And we have that. So a release after a long press actually causes a pressAndHold to be emitted, and clicked signal to be suppressed. This is a behaviour we cannot really change.

Revision history for this message
Matthew Paul Thomas (mpt) wrote :

Does "And we have that" mean that pressAndHold is "connected/implemented" for AbstractButton regardless of whether it's used for anything in the specific control?

Revision history for this message
Zsombor Egri (zsombi) wrote :

Yes, because we have to proxy it to the AbstractButton API.

Revision history for this message
Zsombor Egri (zsombi) wrote :

We could have a fix for this though... The only issue to find is how to detect whether a signal si connected or not. If that is solvable, we can have the pressAndHold() on AbstractButton invoked only if someone connects to it.

Zoltan Balogh (bzoltan)
no longer affects: ubuntu-ui-toolkit (Ubuntu)
Zoltan Balogh (bzoltan)
Changed in ubuntu-ui-toolkit (Ubuntu):
assignee: nobody → Zsombor Egri (zsombi)
importance: Undecided → High
status: New → Triaged
Zoltan Balogh (bzoltan)
no longer affects: ubuntu-ui-toolkit
Zsombor Egri (zsombi)
Changed in ubuntu-ui-toolkit (Ubuntu):
status: Triaged → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-ui-toolkit - 1.3.1627+15.10.20150908-0ubuntu1

---------------
ubuntu-ui-toolkit (1.3.1627+15.10.20150908-0ubuntu1) wily; urgency=medium

  [ Zsombor Egri ]
  * Implement list item expansion.
  * Turn AdaptivePageLayout page creation to be asynchronous.
  * Fix ListItem swipe handling when gesture is initiated over an overlay
    MouseArea which does not accept pressed event. Fixes LP: #1484545
  * AbstractButton to C++. Fixes LP: #1365471, LP: #1458028
  * Haptics singleton moved to C++.
  * ActionItem moved to C++.
  * Making columns resizable in an AdaptivePageLayout.
  * Introducing column configuration into AdaptivePageLayout.

  [ Benjamin Zeller ]
  * Fix build inside qt and shadowbuild.

  [ Tim Peeters ]
  * Remove old and unused header-related files, and update unit test filenames.
  * Don't unset the subheader style when Page.head changes because that unsets
    the parent of Page.head.contents. Fixes LP: #1488922
  * Fix the theming of the MainView.
  * Fix the background color of the overflow panel.

  [ Christian Dywan ]
  * Include change signals with arguments in .api.
  * A public QML type with no version is an error. Rather than silently breaking
    as QML does normally at least apicheck can make this fatal.
  * UbuntuShape shouldn't emit redundant deprecation warnings. Fixes LP: #1481791
  * Update .bzrignore to new upstream style layout. Fixes LP: #1433308
  * Revert unnecessary change of Popover minimumWidth. Fixes LP: #1483708

  [ Ken VanDine ]
  * Fixed a few typos in the api docs for StateSaver.

  [ Olivier Tilloy ]
  * Take custom key indexes into account to allow sorting on custom roles.
    Fixes LP: #1485674

  [ Albert Astals Cid ]
  * Properly free shapeTextures[index] The old code assumes that the UbuntuShape
    will still be around when the opengl context is destroyed, but that seldom
    happens so connect the signal to a lambda that will be there and does the
    cleanup properly. Without this patch testDirectionalDragArea from unity8 was
    hitting the qFatal because it ran out of space in shapeTextures.

  [ Richard Huddie ]
  * Remove all usage of the autopilot simulated keyboard when the OSK is being
    used. Fixes LP: 31483668

  [ Gerry Boland ]
  * Compensate for Qt's device pixel ratio multiplier.
    Fixes: LP: #1207270, LP: #1275748, LP: #1468402

  [ Nick Dedekind ]
  * Added relative date time i18n.

  [ CI Train Bot ]
  * Resync trunk.

 -- Zoltan Balogh <email address hidden> Tue, 08 Sep 2015 04:10:50 +0000

Changed in ubuntu-ui-toolkit (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.