Open Bug 1673218 Opened 5 years ago Updated 5 years ago

XP-Pen Star G640S doesn't work on Windows without dom.w3c_pointer_events.dispatch_by_pointer_messages

Categories

(Core :: DOM: UI Events & Focus Handling, defect, P3)

Firefox 83
Desktop
Windows 10
defect

Tracking

()

UNCONFIRMED

People

(Reporter: lolrepeatlol, Unassigned)

References

(Blocks 1 open bug)

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.16; rv:84.0) Gecko/20100101 Firefox/84.0

Steps to reproduce:

I tried using a website like https://www.tutorialspoint.com/whiteboard.htm.

Actual results:

Using my tablet on the website did not work. Drawing on the tablet did not do anything. Scrolling on websites worked fine though.

Expected results:

It should have worked from the get-go. I should have been able to draw on that website.

I turned on dom.w3c_pointer_events.dispatch_by_pointer_messages and it started working, though (including pressure sensitivity.) (Scrolling stopped working though, and I reported on that here. https://bugzilla.mozilla.org/show_bug.cgi?id=1670446)

Tested on Windows 10 2004 in Nightly 83 and Beta 82. My current user agent does not reflect the operating system I am using right now, to clarify (I am typing this in macOS but this happened on Windows). In macOS on Nightly 84 and beta 83, my tablet works fine without dom.w3c_pointer_events.dispatch_by_pointer_messages, so this is a Windows issue.

Component: Untriaged → DOM: UI Events & Focus Handling
OS: Unspecified → Windows 10
Product: Firefox → Core
Hardware: Unspecified → Desktop

:echen: can you please help prioritizing this issue?

Flags: needinfo?(echen)

(In reply to Alexei Solonari from comment #0)

Tested on Windows 10 2004 in Nightly 83 and Beta 82. My current user agent does not reflect the operating system I am using right now, to clarify (I am typing this in macOS but this happened on Windows). In macOS on Nightly 84 and beta 83, my tablet works fine without dom.w3c_pointer_events.dispatch_by_pointer_messages, so this is a Windows issue.

How do other browsers behave, e.g. Chrome? So the main different between with and without the pref (dom.w3c_pointer_events.dispatch_by_pointer_messages) is,

  • without pref: OS generates touch event for stylus input .
  • with pref: currently we generate mouse event for stylus input.

IIRC, Chrome generates touch events for stylus input, so I expect you would get same result on Chrome?

Flags: needinfo?(echen) → needinfo?(alexei.solonari)
Blocks: 1631377
See Also: → 1670446

(In reply to Edgar Chen [:edgar] from comment #2)

(In reply to Alexei Solonari from comment #0)

Tested on Windows 10 2004 in Nightly 83 and Beta 82. My current user agent does not reflect the operating system I am using right now, to clarify (I am typing this in macOS but this happened on Windows). In macOS on Nightly 84 and beta 83, my tablet works fine without dom.w3c_pointer_events.dispatch_by_pointer_messages, so this is a Windows issue.

How do other browsers behave, e.g. Chrome? So the main different between with and without the pref (dom.w3c_pointer_events.dispatch_by_pointer_messages) is,

  • without pref: OS generates touch event for stylus input .
  • with pref: currently we generate mouse event for stylus input.

IIRC, Chrome generates touch events for stylus input, so I expect you would get same result on Chrome?

I tested myself and I'm not sure how it works, but from what I've seen, I think it dynamically changes on Chromium browsers (in this case, Vivaldi (I also tested on Edge))? Take a look yourself in this comparison I made: (hopefully this video isn't confusing!)

Flags: needinfo?(alexei.solonari)

(Sorry, not an attachment because the video is too big for BZ unfortunately.)
Comparison of Vivaldi 3.3.2022.47 Stable vs Firefox 83.0b5 on Windows 10 2004.

In the beginning of the video, I have dom.w3c_pointer_events.dispatch_by_pointer_messages enabled, and then disable it partway through.
https://streamable.com/xcr915

Thanks for your help and the video. From the video and my test locally, yes, stylus input on https://awwapp.com/ doesn't work without dom.w3c_pointer_events.dispatch_by_pointer_messages. And enable dom.w3c_pointer_events.dispatch_by_pointer_messages would make scrolling gestures stop working, I think this is because we generate mouse event instead of touch event, and we are investigating.

(In reply to Alexei Solonari from comment #0)

I tried using a website like https://www.tutorialspoint.com/whiteboard.htm.

One more request, since the original website you report this issue is on https://www.tutorialspoint.com/whiteboard.htm.
And per comment #2, I test Chrome or Vivaldi, using stylus input on https://www.tutorialspoint.com/whiteboard.htm don't work, either.
Could you also confirm this? Thanks!

Flags: needinfo?(alexei.solonari)

(In reply to Edgar Chen [:edgar] from comment #5)

Thanks for your help and the video. From the video and my test locally, yes, stylus input on https://awwapp.com/ doesn't work without dom.w3c_pointer_events.dispatch_by_pointer_messages. And enable dom.w3c_pointer_events.dispatch_by_pointer_messages would make scrolling gestures stop working, I think this is because we generate mouse event instead of touch event, and we are investigating.

(In reply to Alexei Solonari from comment #0)

I tried using a website like https://www.tutorialspoint.com/whiteboard.htm.

One more request, since the original website you report this issue is on https://www.tutorialspoint.com/whiteboard.htm.
And per comment #2, I test Chrome or Vivaldi, using stylus input on https://www.tutorialspoint.com/whiteboard.htm don't work, either.
Could you also confirm this? Thanks!

Ah, you're right, interestingly, it doesn't work on Vivaldi, so that seems to be a bad example. But I can list some more that work in Vivaldi and Firefox to show you this is not just an https://awwapp.com/ thing (with dom.w3c_pointer_events.dispatch_by_pointer_messages enabled, and not when it is disabled):

Flags: needinfo?(alexei.solonari)
Severity: -- → S3
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.