-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
exitEvents should Fire for all touch like Pointers #1156
Comments
@arouinfar, do you think that buggy hover behavior like the video in phetsims/ratio-and-proportion#352 should block publication? If so should this be a fix that get's propagated to older versions of the sim? Presumably there would be the potential for incorrect pen hover states in sims for quite some time. We may decide that this is not worth an MR, and instead just fix this on master and for sims moving forward. We think that it is best for a designer to determine this. |
I will proceed with the fix on master now. |
In the above commits I did these two items. My biggest worries were with
709262c#diff-19425a8432045348468723394f3f65c8511637a0a5e8dbbded246fb6e718a854R1976 is influenced by this decision, and will need to be changed in pen areas are different from touch areas. @arouinfar will you please tell us if you think pen areas can be the same as touch areas?
@jessegreenberg will you please to a general review and try out this logic with your pen/iPad system? Please make sure that phetsims/ratio-and-proportion#352 is fixed and nothing else seems wrong. In summary of jobs for this issue:
Thanks all! |
|
This doesn't seem like something that needs a MR. I don't think we officially support stylus use, and this isn't a sim-breaking issue. Using the touch areas for pen input also sounds reasonable to me. |
Changes look good, I don't see any more usages of |
The bug was specific to logic in HomeScreenButton for the custom touch over behavior. Should be fixed in the above commit by doing the same work with penover as well. Back to @zepumph to review this change but otherwise things look good. |
Touch areas seem like a different feature than touch-snag. I think this is a good question for the designers. |
@arouinfar do you have any thoughts about this, should touch-snag happen when using a pen/stylus? |
A stylus isn't an officially supported device or something we QA test on. I don't have an opinion about whether it should have touch-snag or not. My recommendation would be to do whatever requires the least amount of dev time/effort. |
OK sounds good, between @arouinfar and @jonathanolson comments I think that means the answer to
is that we should not change these. @jonathanolson reassigning back to you to review changes to SimpleDragHandler and ClosestDragListener (from #1156 (comment)) |
The changes above look good.
I'm fine without a lint rule here, but @zepumph what do you think? |
Recently @arouinfar said we don't support pen, and with that in mind, we likely won't devote many resources to testing on Pen. Any small thing we can do to improve Pen experience without incurring more cost sounds like a win to me. Is the above commit ok with you? Feel free to close. |
Agreed! |
The commit looks good, closing! |
From phetsims/ratio-and-proportion#352 we found that
Input.exitEvents
is currently not called for Pointers of type Pen. One result of this is PressListeneroverPointers
are not updated, So things may still think they have a Pointer over them when they do not.For example, see dragging a stylus across the navigation bar screen buttons - they look highlighted even when the stylus leaves the button.
https://user-images.githubusercontent.com/60749003/108002416-cbd93580-6fac-11eb-9388-c629864243dc.gif
In a meeting with @jonathanolson and @zepumph we identified that these exit events are specifically prevented for all pointers other than Touch
We came up with a game plan to address this:
isTouchLike
, to be ovderridden by subtypes - returns true for Touch and Penpointer instanceof Touch
and probably replace with isTouchLike.This has likely been an issue for some time, so I don't know if it is blocking or needs to be cherry-picked into existing RCs. Or if it needs to go out to all sims in a batch maintenance release. Adding blocking label until we learn one way or another.
The text was updated successfully, but these errors were encountered: