Acknowledged

onTap() is implemented for data fields on newer watches, but only on real devices and not the simulator

This seems to apply to most or all CIQ 4+ watches with a touchscreen (e.g. fr955, fr965, fenix7*, etc.)

While the new support for onTap() in data fields on watches is welcome, there's a few problems:

- the documentation still says that input is not supported for wearables (watches)

https://developer.garmin.com/connect-iq/api-docs/Toybox/WatchUi/InputDelegate.html

> Note that on wearable products, input events are not supported for data fields.

This is somewhat contradicted by:

https://developer.garmin.com/connect-iq/core-topics/input-handling/

> Not all app types have full access to input. A watch face can only know if it has been pressed and data fields can only know if they have been tapped. Widgets and glances can receive input (may be limited on some devices) while watch-apps will have the most input capability.

But even this doc does not clarify that not all devices support onTap() in data fields.

- onTap() does not work in the simulator for data fields with devices that actually support onTap irl

- there's no documentation to indicate which devices actually support onTap() in a data field

- there doesn't seem to be a way for a data field app to determine whether onTap() is supported at runtime. (One dev stated they would find this ability useful, so their data field could behave differently depending on whether onTap() is supported or not.)

This has come up in the forums a few times recently, including:

https://forums.garmin.com/developer/connect-iq/f/discussion/404827/datafield-touch/

It was only because of the forums that I found out that watches can now support onTap().

Parents
  • > - there doesn't seem to be a way for devices to determine whether onTap() is supported in a data field at runtime. (One dev stated they would find this ability useful, so their data field could behave differently depending on whether onTap() is supported or not.)

Comment
  • > - there doesn't seem to be a way for devices to determine whether onTap() is supported in a data field at runtime. (One dev stated they would find this ability useful, so their data field could behave differently depending on whether onTap() is supported or not.)

Children
No Data