Long-tapping doesn't work on any control

Bug #1365471 reported by Matthew Paul Thomas on 2014-09-04
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubuntu-ui-toolkit (Ubuntu)
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.

Related branches

description: updated
description: updated
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) on 2014-10-01
Changed in ubuntu-ui-toolkit (Ubuntu):
status: New → Triaged
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.

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?

Zsombor Egri (zsombi) wrote :

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

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) on 2014-11-17
no longer affects: ubuntu-ui-toolkit (Ubuntu)
Zoltan Balogh (bzoltan) on 2014-11-24
Changed in ubuntu-ui-toolkit (Ubuntu):
assignee: nobody → Zsombor Egri (zsombi)
importance: Undecided → High
status: New → Triaged
Zoltan Balogh (bzoltan) on 2014-11-24
no longer affects: ubuntu-ui-toolkit
Zsombor Egri (zsombi) on 2015-08-19
Changed in ubuntu-ui-toolkit (Ubuntu):
status: Triaged → In Progress
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  Edit
Everyone can see this information.

Other bug subscribers