XamarinCommunityToolkit icon indicating copy to clipboard operation
XamarinCommunityToolkit copied to clipboard

[Bug] TouchEffect Command and LongPressCommand not triggered

Open taenito opened this issue 4 years ago • 1 comments

Description

TouchEffect will not trigger Command and LongPressCommand in some case

Native (IsAccessibilityMode = false)

# Double tap Double tap and holding
Command Trigger Command :heavy_check_mark: Trigger Command :heavy_check_mark:
LongPressCommand Trigger nothing :heavy_check_mark: Trigger LongPressCommand :heavy_check_mark:
Command and LongPressCommand Trigger Command :heavy_check_mark: Trigger LongPressCommand :heavy_check_mark:

Tap event :

  • [0:] OnTouch = Down (IsAccessibilityMode = False)
  • [0:] OnTouch = Up (IsAccessibilityMode = False)
  • [0:] OnClick (IsAccessibilityMode = False)

Long press event :

  • [0:] OnTouch = Down (IsAccessibilityMode = False)
  • [0:] OnTouch = Move (IsAccessibilityMode = False)
  • [0:] OnTouch = Move (IsAccessibilityMode = False)
  • [0:] OnTouch = Up (IsAccessibilityMode = False)
  • [0:] OnClick (IsAccessibilityMode = False)

Talkback (IsAccessibilityMode = true)

# Double tap Double tap and holding
Command Trigger Command :heavy_check_mark: Trigger Command :heavy_check_mark:
LongPressCommand Trigger nothing :x: Trigger nothing :x:
Command and LongPressCommand Trigger nothing :x: Trigger nothing :x:

Tap event :

  • [0:] OnClick (IsAccessibilityMode = True)

Long press event :

  • [0:] OnTouch = Down (IsAccessibilityMode = True)
  • [0:] OnTouch = Move (IsAccessibilityMode = True)
  • [0:] OnTouch = Move (IsAccessibilityMode = True)
  • [0:] OnTouch = Up (IsAccessibilityMode = True)
  • [0:] OnClick (IsAccessibilityMode = True)

Keyboard navigation (IsAccessibilityMode = false)

# Double tap Double tap and holding
Command Trigger nothing :x: Trigger nothing :x:
LongPressCommand Trigger nothing :x: Trigger nothing :x:
Command and LongPressCommand Trigger nothing :x: Trigger nothing :x:

Tap event :

  • [0:] OnClick (IsAccessibilityMode = False)

Long press event :

  • [0:] OnClick (IsAccessibilityMode = False)

Keyboard navigation with Talkback activated (IsAccessibilityMode = true)

# Double tap Double tap and holding
Command Trigger Command :heavy_check_mark: Trigger Command :heavy_check_mark:
LongPressCommand Trigger nothing :x: Trigger nothing :x:
Command and LongPressCommand Trigger nothing :x: Trigger nothing :x:

Tap event :

  • [0:] OnClick (IsAccessibilityMode = True)

Long press event :

  • [0:] OnClick (IsAccessibilityMode = True)

Switch access (IsAccessibilityMode = false)

# Double tap Double tap and holding
Command Trigger nothing :x: Trigger nothing :x:
LongPressCommand Trigger nothing :x: Trigger nothing :x:
Command and LongPressCommand Trigger nothing :x: Trigger nothing :x:

Tap event :

  • [0:] OnClick (IsAccessibilityMode = False)

Long press event :

  • [0:] OnClick (IsAccessibilityMode = False)

Switch access with Talkback activated (IsAccessibilityMode = true)

We can't activate Switch access and Talk Back together

taenito avatar Sep 24 '21 14:09 taenito

I am currently facing the issue that TouchEffect.LongPressCommand is not working for TalkBack and is even breaking the functionality of TouchEffect.Command. Please see the example app for reference.

XF Version: 5.0.0.8221 XCT Version: 2.0.2

Edit: It does not depend on NativeAnimation being used or not. I think @AndreiMisiukevich has been working on this issues, excuse me if I am wrong! :)

ChainsLunatic avatar May 30 '22 08:05 ChainsLunatic