phetsims / faradays-law

"Faraday's Law" is an educational simulation in HTML5, by PhET Interactive Simulations.
http://phet.colorado.edu/en/simulation/faradays-law
GNU General Public License v3.0
1 stars 7 forks source link

Zoom feature does not follow magnet while using keyboard navigation #198

Closed brooklynlash closed 4 years ago

brooklynlash commented 4 years ago

Test device Lenovo ThinkPad

Operating System Windows 10

Browser Chrome

Problem description This is for https://github.com/phetsims/QA/issues/568 While you're zoomed in and using the keyboard navigation feature, if you move around the magnet out of frame, it does not follow the magnet.

Visuals faradayzoom

Troubleshooting information: !!!!! DO NOT EDIT !!!!! Name: ‪Faraday's Law‬ URL: https://phet-dev.colorado.edu/html/faradays-law/1.4.0-dev.65/phet/faradays-law_en_phet.html Version: 1.4.0-dev.65 2020-10-27 23:56:15 UTC Features missing: applicationcache, applicationcache, touch Flags: pixelRatioScaling User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36 Language: en-US Window: 852x808 Pixel Ratio: 2.25/1 WebGL: WebGL 1.0 (OpenGL ES 2.0 Chromium) GLSL: WebGL GLSL ES 1.0 (OpenGL ES GLSL ES 1.0 Chromium) Vendor: WebKit (WebKit WebGL) Vertex: attribs: 16 varying: 30 uniform: 4095 Texture: size: 16384 imageUnits: 16 (vertex: 16, combined: 32) Max viewport: 32767x32767 OES_texture_float: true Dependencies JSON: {}

brooklynlash commented 4 years ago

Under more investigation, it follows the magnet every direction except at random times it does not follow it typically in the vertical direction, and using the 1,2,3 buttons the magnet is not followed

KatieWoe commented 4 years ago

I've been doing some experimentation too. It seems like if the magnet is going faster than the panning screen (which seems to occur more when moving vertically) and the magnet gets off screen, the screen stops trying to follow it. If the magnet moves back on screen, the screen starts following it again. If you move the magnet slow enough that it stays on screen the whole time it seems to keep panning to follow, but with enough zoom, this can actually be a bit difficult in the vertical direction.

KatieWoe commented 4 years ago

Replicated in Firefox and Safari. I noticed while testing in Safari that when zoomed in enough it was actually fairly easy to get this to occur with horizontal movement as well. I also wanted to add on to what @brooklynlash mentioned with the 1, 2, and 3 buttons. It is not that this movement is too fast to follow, it doesn't even seem to try to follow the magnet at all in that case.

jbphet commented 4 years ago

@jessegreenberg - this seems like it would be in your wheelhouse.

jessegreenberg commented 4 years ago

While you're zoomed in and using the keyboard navigation feature, if you move around the magnet out of frame, it does not follow the magnet.

This was fixed in the above commit, thanks for catching this.

using the 1,2,3 buttons the magnet is not followed

This is currently not something that is supported by the zoom feature, but can be added. Currently it only pans to the node if dragging keys are pressed. Seems like we need to support following a node under any circumstance.

jessegreenberg commented 4 years ago

I think this is working well now, @KatieWoe would you mind checking on master?

KatieWoe commented 4 years ago

Looks solved on master. Magnet can still move faster than panning, but panning does catch up.

jessegreenberg commented 4 years ago

OK thanks @KatieWoe. I think this is correct. The behavior is that if the magnet is outside of the edge of the screen we will try to pan to it. The sim doesn't move unless the object approaches the edge of the screen. I think this is why it may seem slightly behind. Closing.