|
| 1 | +# Modal UX |
| 2 | + |
| 3 | +This section will have recommendations when using a Modal Dialog - Blocking UI. If the plugin needs to run an action before the user starts a new action then the modal would be recommended for that use case. |
| 4 | + |
| 5 | +- Specs and UX Requirements |
| 6 | +- Modal Dialog UI |
| 7 | +- Dialog Buttons and Key Commands |
| 8 | + |
| 9 | + |
| 10 | + |
| 11 | +---------- |
| 12 | + |
| 13 | + <br /> |
| 14 | + |
| 15 | +# Specs and UX Requirements |
| 16 | + |
| 17 | +## MacOS example |
| 18 | + |
| 19 | + |
| 20 | + |
| 21 | +## Specs |
| 22 | + |
| 23 | +**Padding** |
| 24 | +The modal will have padding built-in (ex: MacOS modal will |
| 25 | +have a 40px padding). Additional padding shouldn’t be added. |
| 26 | + |
| 27 | +**Configurable content** |
| 28 | +This is what the user can interact with before executing the plugin action. |
| 29 | + |
| 30 | + |
| 31 | +## UX Requirements |
| 32 | + |
| 33 | +**Header** |
| 34 | +Have a clear header for the dialog. e.g. “name of plugin”, “description of workflow” |
| 35 | + |
| 36 | + |
| 37 | +**Dialog Buttons** |
| 38 | +Include a modal dismissal button to allow the user to cancel/close the modal and a call to action button (blue) to highlight the primary action. |
| 39 | + |
| 40 | + |
| 41 | +## Best Practices |
| 42 | + |
| 43 | +**Plugin Icon**. |
| 44 | +You can include a plugin icon to let the user know they are interacting with your plugin in the modal dialog |
| 45 | + |
| 46 | + <br /> |
| 47 | + |
| 48 | +# Modal Dialog UI |
| 49 | + |
| 50 | +## Modal dialog plugin UI |
| 51 | + |
| 52 | + |
| 53 | + |
| 54 | +## Step process three buttons |
| 55 | + |
| 56 | + |
| 57 | + |
| 58 | +## Step process loader |
| 59 | + |
| 60 | + |
| 61 | + |
| 62 | + <br /> |
| 63 | + |
| 64 | +# Dialog buttons and key commands |
| 65 | + |
| 66 | +## Buttons |
| 67 | + |
| 68 | + |
| 69 | + |
| 70 | +**Use cases**. |
| 71 | +**Call to action** |
| 72 | +The call to action button communicates strong emphasis and is reserved for encouraging critical actions. There should only be one visible call to action button per section. |
| 73 | + |
| 74 | +**Primary** |
| 75 | +The primary button is used for medium emphasis. It should be used in place of a call to action button when the action requires less prominence, or if there are multiple primary actions of the same importance on the page. It can be displayed either in standard style (visible stroke) or in quiet style. |
| 76 | + |
| 77 | +**Secondary** |
| 78 | +The secondary button is for low emphasis. It is meant to be paired with other button types to surface less prominent actions, and should never be the sole button in a group. It can be displayed either in standard style (visible stroke) or in quiet style. |
| 79 | + |
| 80 | +**Negative** |
| 81 | +The negative button is for high emphasis of negative or destructive actions. It should be used sparingly. It can be displayed either in standard style (visible stroke) or in quiet style. |
| 82 | + |
| 83 | +## Best practice |
| 84 | + |
| 85 | +**Button Group Overflow** |
| 86 | +When horizontal space is limited, button groups stack vertically. |
| 87 | +They should appear in ascending order based on importance, with the most critical action |
| 88 | +at the bottom. |
| 89 | + |
| 90 | +**Use 2 button styles maximum** |
| 91 | +The top-level action within a button group should be a call to action, primary, or negative button. The subsequent buttons should always be secondary buttons of the same style (standard or quiet). Don’t combine more than 2 button styles in a button group. |
| 92 | + |
| 93 | +## Button labels |
| 94 | + |
| 95 | +Button labels should be clear about the intention of the action. Button text should be 1 to 2 words and consider the number of characters. |
| 96 | + |
| 97 | + |
| 98 | + |
| 99 | +## Key Commands |
| 100 | + |
| 101 | +**Esc key** |
| 102 | +Dismisses the dialog. This is equivalent to choosing “Cancel”. |
| 103 | + |
| 104 | +**Enter key** |
| 105 | +Executes the primary button action. |
| 106 | + |
| 107 | + |
0 commit comments