phetsims / fourier-making-waves

"Fourier: Making Waves" is an educational simulation in HTML5, by PhET Interactive Simulations.
GNU General Public License v3.0
6 stars 3 forks source link

Waveform changes to 'custom' when you open any amplitude keypad. #203

Closed pixelzoom closed 2 years ago

pixelzoom commented 2 years ago

For phetsims/qa#711, and related to https://github.com/phetsims/fourier-making-waves/issues/200 ...

As soon as you open the keypad for any amplitude, the Waveform combo box switches to 'custom'. You don't actually have to change the value.

For example:

  1. Go to the Discrete screen
  2. Select 'wave packet' from Waveform combo box
  3. Click in the A1 NumberDisplay
  4. Note that the Waveform combo box immediately changes to 'custom'

It would probably be more "polite" to only change to "custom" if the user enters a (new?) value for the amplitude. But that's a heck of a lot more work, which is why I problably thought this was good enough. Or maybe I didn't think of this case. Anway...

@arouinfar Do you think we need to change anything here? I'm OK leaving this as is, if you are. But I wanted to point this out, so that we're making a conscious decision.

arouinfar commented 2 years ago

As soon as you open the keypad for any amplitude, the Waveform combo box switches to 'custom'. You don't actually have to change the value.

The same thing happens if you click on a slider thumb without changing the value, which is basically the same interaction from the user's perspective. They initiated an action to change the value of an amplitude but aborted. (I realize that clicking on a slider thumb probably does change the value, but that's not what it feels like to the user.)

It would probably be more "polite" to only change to "custom" if the user enters a (new?) value for the amplitude. But that's a heck of a lot more work, which is why I problably thought this was good enough.

I agree that it's not the most polite thing to do, but I don't think we're causing any real inconvenience. I think the current behavior is good enough, so closing.