Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(5P) FSE: Implement alternate template selector design #35232

Closed
obenland opened this issue Aug 8, 2019 · 14 comments
Closed

(5P) FSE: Implement alternate template selector design #35232

obenland opened this issue Aug 8, 2019 · 14 comments

Comments

@obenland
Copy link
Member

obenland commented Aug 8, 2019

If we can't find a way to improve BlockPreview performance enough for it to be shippable (#34976), let's update the design of the template selector to mitigate that concern.

@apeatling
Copy link
Member

This is large dynamic single preview, with screenshots for small previews.

@obenland obenland changed the title FSE: Explore alternate template selector design FSE: Implement alternate template selector design Aug 12, 2019
@obenland obenland changed the title FSE: Implement alternate template selector design (5P) FSE: Implement alternate template selector design Aug 12, 2019
@apeatling
Copy link
Member

apeatling commented Aug 12, 2019

I suggest this as a rough reference mockup for this next iteration using the design that already exists in the modal:

Screen Shot 2019-08-12 at 10 57 00 AM

The left smaller thumbnails scroll, the right large preview stays static.

@getdave
Copy link
Contributor

getdave commented Aug 13, 2019

@Automattic/ajax I'd like to flag some issues I've noticed with hover experience is here.

Issues:

  1. Doesn't meet a11y guidelines
  2. You cannot scroll the large preview because as soon as you mouseout from the thumbnail the large preview disappears.
  3. It takes a noticeable amount of time to render/load the preview (as a user I don't care how many milliseconds, I just know it's not instant). Even subsequent returns to the same preview are slow.

@apeatling
Copy link
Member

This is the next iteration designs without the modal from @shaunandrews #35248

@apeatling
Copy link
Member

apeatling commented Aug 13, 2019

If hovering proves to be too big of an issue, here's Shaun's option B applied to the modal, also addressing the concern about not noticing the button showing on the template thumbnail:

Screen Shot 2019-08-13 at 1 44 32 PM

If you click blank, just dismiss the modal.

@marekhrabe
Copy link
Contributor

Small detail but I wanted to share that Modal component already has a native support for buttons which we should leverage in case we add the confirmation step (I'm all for adding it)

These are the docs that mention it and show what it looks like - it takes bottom right of the window. https://github.com/WordPress/gutenberg/tree/master/packages/components/src/modal

Our modal is a bit more complex than examples but I think we should aim to stick with standards

@apeatling
Copy link
Member

Makes sense, thanks for the link. Here's an update:

Screen Shot 2019-08-13 at 4 12 45 PM

@apeatling
Copy link
Member

If you really want to stick with standards, you might also want to remove the [x] in the top right, and add a cancel button next to the "Use template" button. Then make the buttons persistent with the "use template" button disabled until a template is selected.

@getdave
Copy link
Contributor

getdave commented Aug 14, 2019

Thanks for this @apeatling. I'm not completely clear on the interaction model though.

  • Are we still using hover to show the preview?
  • If "yes" to above then how can you scroll the large preview?
  • If "yes" to above then how can I ever reach the blue Use this Template button on the large preview?

Drawing on existing interaction models

Perhaps we could use the existing WP-Admin Themes model for guidance here?

With this approach you:

  • See a selection of Theme thumbnails
  • Hover to see a set of actions
  • Button available to immediately activate
  • Clicking on a thumbnail brings up a large preview (see below)

Screen Shot 2019-08-14 at 09 09 20

Screen Shot 2019-08-14 at 09 09 36

To be clear I'm not suggesting we copy this design/UX verbatim. Rather I"m saying we can learn from the interactions. Namely:

  • Hover shows more details on thumb but does not activate the preview
  • Click is used to display the preview
  • Action buttons are available for immediate selection without preview

Interested in everyone's thoughts...

We should also be mindful of this UI response time research when working on the UX for this:

https://www.nngroup.com/articles/response-times-3-important-limits/

@frontdevde
Copy link
Contributor

Quoting @shaunandrews:

The second one (B) is similar, but the interactions are different. Instead of hovering, you'd click on a thumbnail to populate the preview area. Then, you'd click on the newly appearing "Use this template" button to select the template.

I assume that is what Andy had in mind in terms of the interactions for the new mockups.

I would agree with @getdave that there should be some form of visual response when hovering over a thumbnail. Mainly to indicate that they can/should be clicked.

@frontdevde
Copy link
Contributor

If you really want to stick with standards, you might also want to remove the [x] in the top right, and add a cancel button next to the "Use template" button. Then make the buttons persistent with the "use template" button disabled until a template is selected.

@apeatling The "x" comes with the standard Gutenberg modal. If we set isDismissable to false it disappears but then the Modal also can't be dismissed with ESC or clicking outside of the modal. If we do want to remove the "x" we'd probably just want to visually hide it.

@getdave
Copy link
Contributor

getdave commented Aug 14, 2019

Another thought: how much do we need to "care" about the fine details of the modal if it's going to go anyway? Just thinking...

@apeatling
Copy link
Member

apeatling commented Aug 14, 2019

Yes, let's not overthink this. What I presented was what Shaun presented for the iteration outside of the modal (option B). It would allow us to more easily move to the non-modal iteration next.

@apeatling
Copy link
Member

The visuals I presented came with the caveat: "If hovering proves to be too big of an issue".

My suggestions for the above are to:

  • Highlight a small preview thumb with the blue outline when hovering, do not change the large preview.
  • On click show the large preview and adjust the view as shown here: (5P) FSE: Implement alternate template selector design #35232 (comment)
  • On click of "blank" just close the modal and select blank.
  • On click of any "Use this template" button, close the modal and load the template.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants