Page MenuHomePhabricator

Move action buttons to bottom of dialogs by default
Open, Needs TriagePublic

Description

Action buttons (cancel/apply) by default show up at the top of the dialog. They should instead appear at the bottom.

This is because:

  • Flow of content - the user reads from the top down. A user starts with using the content of the dialog (reading text, filling out a form, etc), and then at the end, selects what they want do with it. The end should be at the bottom, as that's where their eyes will be at this point. Thus the buttons should be at the bottom.
  • Consistency with user expectations based on other interfaces - standard practice is to put such buttons at the bottom. A popup dialog appears in an OS, the buttons are usually at the bottom, after the content/text. Right now, using Phabricator's quick create task, the buttons are at the bottom, after the form. As an example of why this is a problem in VE, it's quite common to hit the diff button on accident when intending to submit, especially when first trying to edit, as it appears where the submit button would normally be on a different interface. Given that VE is the recommended apprach for new editors in order to simplify the experience, this confusion is particularly worth avoiding.

Event Timeline

As an example of why this is a problem in VE, it's quite common to hit the diff button on accident when intending to submit, especially when first trying to edit, as it appears where the submit button would normally be on a different interface.

Would you rather hit the save button on accident when intending to see the diff? :)

Toying with user expectation in any direction is bad.

This came up at an editathon last week - a woman was trying to save her edit and couldn't figure out how to get from the preview to the actual save. The top (before all the content in the dialog) wasn't even a place she considered looking.

This was complicated even further by her being a new user and having to re-enter the captcha every time a different button was tried.