Premium support for our pure JavaScript UI components


Post by peterjc »

Hi, I found that in my Ionic application that used the scheduler, the context menu item selections do not work when using a touch screen.

I get the same behaviour running you online basic demo in Edge on the same tablet.

It works when you use the mouse, but not when using the screen (tap). This is a problem in both Edge and Chrome.

I have attached a video (low quality to make small, but should be able to see) demonstrating this.

Would there be any sort of work around for this?

Thanks in advance.

Attachments
PXL_20230503_005938098_x264.mp4
(729.16 KiB) Downloaded 20 times

Post by johan.isaksson »

Hi Peter,

We tried the online demos on a Asus ZenBook Duo 14" that has touch, and we could activate context menu items on it. What kind of touch screen/laptop are you using? OS?

Best regards,
Johan Isaksson

Post by Animal »

Ionic seems to be very opinionated on this. It takes over the HTMLElement's addEventListener method, and does its own polyfill for context menu.

We have our own polyfill which invokes the contextmenu handler on a longpress gesture.

Ionic also seems to break other APIs. Notice that the scrollbar is not matched in the header in https://bryntum.com/products/calendar/examples/frameworks/ionic/ionic-4/dist/

It could be that ResizeObserver is also broken by Ionic which is how we detect overflow changes.

Very difficult to debug because the app is completely obfuscated. I do not know how to run the Ionic example with the regular codebase to test it.


Post by Animal »

The scrollbar thing is caused by the tag class b-visible-scrollbar not being added to the Calendar widget.

Obviously Ionic somehow got in there when that was being evaluated. DomHelper.scrollbarWidth was read as zero at the time the Calendar was initialized.


Post by Animal »

Ionic sets document.body to display:none. So measuring doesn't work


Post by peterjc »

johan.isaksson wrote: Thu May 04, 2023 1:31 pm

Hi Peter,

We tried the online demos on a Asus ZenBook Duo 14" that has touch, and we could activate context menu items on it. What kind of touch screen/laptop are you using? OS?

Hi, yes, we have tried this on the 2 surface models we have in office

A Microsoft Surface Pro 4 (running Windows 10.0.19045 build 19045)
A Microsoft Surface Go 2 (Windows 10 Pro)

It seems weird if it works on the other device (Zenbook) but not the Surface tablets


Post by johan.isaksson »

Hi again,

Have access to a Microsoft Surface Laptop 4 with Windows 11, and "unfortunately" it works well on it too. Recorded a small video on it.

Not sure what the difference might be, perhaps it is a Windows 10 issue.

Attachments
IMG_2307.mov
(6.37 MiB) Downloaded 17 times
Best regards,
Johan Isaksson

Post by peterjc »

Hi Johan,

yes we can see it works for you. We tried again (using 2 fingers as you did), and amazingly, we got it to work one or 2 times, but then it stopped again. We thought maybe it's how hard and long we pressed, but could not find the how we got it to work.

Perhaps Windows 11 handles something better.

For now, we have worked around the problem in our app, we now invoke a popup on single tap, and avoid the use of the tap and hold. Once we get use it it, we think this will be fine for our users, so we won't take up any extra time on this for now (and hopefully users will be happy).

Thanks for looking into this.


Post by johan.isaksson »

Hi,

Sorry I cannot be of more help for the time being, hard to fix or give suggestions when I cannot reproduce it. But if I get my hands on another touch laptop I will try it there too.

Ideally you would not need to work around it, but hope it will work out well for you for now.

Best regards,
Johan Isaksson

Post by peterjc »

Yes, we understand if you cannot reproduce, very hard/impossible to fix.
Cheers


Post Reply