Problem/Motivation
In node forms there is considerable space between the primary form and the meta on the right. In several issues and discussions, this presentation is considered aesthetically less than ideal, and it's also punishing to users with compromised motor function due to it requiring the pointer to travel unnecessarily long distances to access all relevant parts of the form.
Here's how it looks currently
In the not-yet-committed issue #3092296: Improve email address field description at /user/register, the solution will likely be limiting the width of form elements, which makes this chasm even more apparent.
Proposed resolution
Limit width of the main column to 768px. Fix width of the meta column to 360px. Align the meta column to right and center the main column within the area that is left.
Remaining tasks
Agree on approach
Design
Implement
User interface changes
API changes
Data model changes
Release notes snippet
Comment | File | Size | Author |
---|---|---|---|
#34 | nested-paragraphs-wysiwyg.png | 29 KB | katherined |
#33 | Screen Recording 2020-10-16 at 14.59.07.mov | 4 MB | Gábor Hojtsy |
#33 | BartikClaroNode.png | 1.46 MB | Gábor Hojtsy |
#31 | Screenshot 2020-10-16 at 14.08.06.png | 58.07 KB | lauriii |
#29 | 3158854-29.patch | 5.76 KB | Gábor Hojtsy |
Comments
Comment #2
DyanneNovaTo keep a consistent experience with Umami, we would max width everything (content and header area) to 1200px at the 1280px breakpoint.
I think that makes sense, and would keep all of the elements close for pointer travel and eye movement.
Comment #3
bnjmnmHere's a first stab at the approach in #2
Comment #4
lauriiiThere was a similar discussion in the Seven issue queue which might be worth checking for some of the arguments for both sides: #2486453: Set maximum width on Seven.
Comment #5
yoroy CreditAttribution: yoroy at Roy Scholten commentedOn first glance this max-width + centering appears to be the most elegant approach. I remember that Cristina wanted to look at this more closely as well, I hope she can chime in here.
Thanks for linking the similar issue for Seven Lauriii, there's good arguments for and against. Also:
- We might also consider this as an optimisation for this specific page?
- Who would like to do a bit of competitor benchmarking and collect some screenshots for how other systems approach this?
- Contrib modules that extend this page should be taking into account. It was an important factor in *not* limiting width on this page: https://www.drupal.org/project/drupal/issues/2486453#comment-10627774
Comment #6
KondratievaS CreditAttribution: KondratievaS at Skilld commentedTested patch from #4 and result is following:
1. Edit node page is OK now Screenshot
2. Content on all pages is centered now Screenshot
3. Popin takes whole width (i am not sure this is related to changes here, but need to be be checked)
Comment #7
KondratievaS CreditAttribution: KondratievaS at Skilld commentedComment #8
saschaeggi+1 on the idea to max-width and center the content.
Basically the next thing which is a far outcry to implement layers at some point 😉
That's also basically what Gin uses currently (including the layers to better distinguish the regions).
The end result at a later stage should look more like this:
(As an example, ignore the sidebar nav approach and fixed header for now).
Comment #9
bnjmnmRe #6, this is definitely not an issue with modal/dialogs in general
It looks like the screenshots are from Paragraphs or a Paragraphs-related module, I'm unsure as I don't routinely use those. It's obviously not part of core, but if you provided steps to reproduce we could determine if it needs to be addressed with the module or the theme (or something inbetween)
Comment #10
bnjmnmAfter reading #5 and the long list of pros/cons in #2486453: Set maximum width on Seven, I think I need to -1 my patch in #3 #3 in favor of a different approach, probably one that targets the node form. A few things that contributed to this were:
Another option for addressing the node form is max-widthing the meta column and setting it to
float: left;
so it is always adjacent to the main column.Comment #11
lauriiiI did a bit of analysis on what our competitors are doing. I tested Wordpress, Contentful, Prismic and Strapi. I have following remarks from that:
If we wanted to implement something similar to what most of the competitors are doing, we could implement this layout for the content edit form:
This would allow users with large monitors to take advantage of the horizontal space on Views UI as well as pages that have large tables.
Comment #12
saschaeggi@lauriii this is basically exactly what Gin is already doing 😉🙂
Comment #13
lauriiiHere's patch for the approach proposed in #11 for further testing.
Comment #14
lauriiiDiscussed this with @ckrina, @bnjmnm, @katherined, @shaal, @yoroy, @saschaeggi and @nod_ as part of the Claro call today. We agreed that while the solution proposed in #11 isn't perfect, we think it's improvement to the status quo. Main concern on the solution was that it could create disconnect between the title and the content on wide screens. The group thought unanimously that the benefits outweigh the downsides and we should move forward with this, and try to come up with a better solution as part of #3076820: [META] Layout redesign.
Comment #15
effulgentsia CreditAttribution: effulgentsia at Acquia commentedAs part of testing #13, could someone upload a screenshot of what it ends up looking like if you're using Paragraphs, including nested paragraphs?
Comment #16
effulgentsia CreditAttribution: effulgentsia at Acquia commentedAlso, what happens (and what do we want to happen) when you switch between the "Edit", "Translations", and "Layout" tabs? Any other local tasks (from popular contrib modules) that we should also consider?
Comment #17
lauriiiSome clean up on top of #13 which was mainly created for demonstration purposes.
#15: +1 to testing with Paragraphs. We should also test with Metatag module because it is commonly used contrib project that is adding form elements to the meta column.
#16: I think the assumption right now is that they shouldn't be impacted by this change since this change is only about the Node edit form layout. I think it's good idea to check that this change doesn't have impact on those pages.
Comment #19
lauriiiComment #20
anu.a_95 CreditAttribution: anu.a_95 at Zyxware Technologies commentedApplied patch #17 successfully.
The chasm issue is better now. Space between primary form and meta area is reduced considerably. Also the width of meta section is also reduced.
The comparison is made by applying Claro theme (for administration also) in a Drupal 9.1.x-dev instance with the "Umami" demonstration site. The same recipe shown in the issue screenshot is chosen for better understanding.
Before patch
After patch
Comment #21
DyanneNovaI've tested patch #17 with Paragraphs and Metatag and think this looks good to go. I initially worried that the misalignment with the header and the form might be jarring, but after comparing a couple other large CMS projects, I think this pattern is closer to the expected norm right now.
Paragraphs
Metatag
Comment #22
DyanneNovaComment #24
bnjmnmTest failure is an unrelated test infamous for failing intermittently. Switching back to the rtbc from #22
Comment #25
bnjmnmReroll
Comment #27
bnjmnmGuess what?
Test failure is an unrelated test infamous for failing intermittently. Switching back to the rtbc from #22 😄
Comment #28
bnjmnmMeant to switch that back to RTBC
Comment #29
Gábor HojtsyRerolled as it did not apply anymore to the info file (as per testbot result as well). Keeping RTBC awaiting testbot.
Comment #30
Gábor HojtsyReviewing the comments above #16 was not yet answered. What is the experience for this case?
Comment #31
lauriiiAny local tasks would still use the full-width layout. In my opinion it makes sense because they are using a single column layout. We might make changes to that layout in #3076820: [META] Layout redesign. I believe that was also the consensus that was documented in #14.
Here's a screenshot of how paragraphs look with the new layout. I don't know how many levels we should be testing, but form elements have around 550px width left when nested 3 times. The layout width is similar to what user with a 1300px wide viewport would width. 1366x768 is the most popular screen resolution based on https://gs.statcounter.com/screen-resolution-stats so it's a screenwidth that Claro and all contrib modules should be able to accommodate any way.
We agreed as part of discussion mentioned in #14 that the solution here is no means perfect, but that it would be a great next step. We also agreed that we would be willing to adjust this based on feedback from users.
Comment #32
Gábor HojtsyYeah I think @alex.bronstein was referring to the jumping around of the left side of the page between different admin tabs even on the node page. Eg. Revisions or Translate would be differently positioned and the centering only applies to the node editing form and even then only to the left side of it. I'll try this out for myself.
Comment #33
Gábor HojtsyHere are comparison screenshots with Seven:
It may be strangeness of the new experience, and jumping from the node list does not feel like a problem. But coming from the translation table from the same admin list feels odd:
https://www.drupal.org/files/issues/2020-10-16/Screen%20Recording%202020-10-16%20at%2014.59.07.mov
Comment #34
katherinedFor reference, here are nested paragraphs with a CK Editor long text field, similar to the test in #31.
Comment #37
effulgentsia CreditAttribution: effulgentsia at Acquia commentedCrediting reviewers mentioned in #14.
Comment #40
effulgentsia CreditAttribution: effulgentsia at Acquia commentedComment #43
effulgentsia CreditAttribution: effulgentsia at Acquia commentedI asked @Gábor Hojtsy if he thinks #33 should block commit, and he said no, and I agree.
All my other concerns earlier in this issue have been addressed as well (thank you for #34).
Therefore, pushed to 9.2.x and 9.1.x. I'm happy to see this make it into the 9.1 alpha, and I'm curious what the feedback will be from people who test it.