Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I guess such interactive elements always show the current state of the system, and when they are interacted with, it changes the state it was in, examples: 1. Social media buttons for upvotes/likes/dislikes 2. on/off toggle switches for features 3. microphone/speaker buttons on desktop OSes


The YouTube play/pause button shows the action it will do, not the state that it is in.


I miss the old convention of showing a button with shadows indicating it's been pushed in vs. showing it with just a flat plane when it's not pushed in. A button that shows that it's been pushed in with a triangle icon means it's playing, clicking or touching it will stop it from playing. A button that doesn't indicate it's been pushed in with a triangle icon is not playing, clicking or touching it will start it playing. Bonus points if there is a small virtual led that turns on when it's pushed in.

Fewer and fewer devices we have access to these days have physical switches on them, though.


As someone who has built media players, the established convention seems to be that the play/pause button shows what the button will do. It hurts me to do "button shows what it will do" every time. But all the other media players I'm familiar with do it this way.

Does anyone know of a major media player where the play/pause button shows what the state is, rather than what the button does?


Why not just have separate play/pause buttons and highlight the active one?


>> The YouTube play/pause button shows the action it will do, not the state that it is in.

A lot of physical play/pause buttons show both symbols. Also in a lot of cases you can tell if a video is playing.


Not if it's buffering because you know that you have a bad internet connection. Around here, I often see people skip to an earlier portion of the video to check if it is playing or not.

And that is anyway besides the point of consistent UIs' toggle switches describing their state, not their action.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: