Problem/Motivation
There is some display options candidates for removal as they create more complexity and untested path than resolve real UX concerns.
As well as logic of grouping to challenge for UX benefits.
- Library panels > Show library tabs as [label, icon, icon+label]
- Remove: label only, keep flatten to discard tabs
- View panels > Show panels as
- Remove: label only
- Toolbar buttons > State buttons [label, icon, icon+label, hidden]
- Keep only: label
- Hidden is a strange behavior as it hide the action but do not check access on API level, if we need to 'disable' an action it should be based on permissions, not UI tricks
- Revert is a 'power user' option not very well explained, we should have an option to disable (Yes it contradict previous statement)
- Toolbar buttons > Controls
- Remove: hidden (same reason as above)
- Unrelated actions (expand, help, theme): split?
- Toolbar buttons > History [label, icon, icon+label, hidden]
- Removed (partially?) in #3613490: Misclick on controls states and history
- Toolbar buttons > Back
- Disable by default, evaluate later for value
- Contextual panels > Show contextual tabs as [label, icon, icon+label]
- Remove: label only
Issue fork display_builder-3616033
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #2
mogtofu33 commentedComment #3
pdureau commentedHi,
My 2 cents.
✅ During #3576683: [meta] UX refresh, when I was promoting the move from a boolean to an Icon / Label / Icon & Label enumeration for
library_tabs_display&contextual_tabs_display, it was a storage recommendation, for feature proofing, not an UX opinion.So, if you want to restrict the available values at UI level, even switch to a checkbox sometimes to avoid a 2 items select list, it is fine, as long as we are still using the unified
display_builder.panels_display(which can be used indisplay_builder.toolbar.buttontoo) storage side.✅ I totally agree, it was the topic of this ticket #3548769: Security: availability of endpoints according to islands which may be closed if we remove
hiddenhere.⚠️ ControlsButtons is a different case. Each button is its own specific feature, we have grouped them for better management: #3545608: Merge some buttons into a Controls island. So removing
hiddenis enforcing the feature to the users and it is better to be careful. I guess not everybody wantsexpand(by the way, still making sense since #3542003: Responsive viewports with iframes which is always displaying the Display Builder UI Full page and is moving the chrome to the preview panel),themeandhelpdisplayed for every profiles.⚠️ Do we have another way of leaving the Display Builder UI? If not, why not keeping it for now? Is it not something people always need?
Comment #4
mogtofu33 commentedComment #5
mogtofu33 commentedI want to remove the option completely so we have only label.
Imho on UX side it makes sense only for library panels because of the wrapping tabs and sidebar default width (17rem) which wrap the tabs.
I am ok to remove it here too for sake of simplicity, so we need to change left sidebar default width to ~20rem.
For
ControlsButtonsthat's why I offer split to fix this issue and have hidden obsolete.So theme switch can be disable by default, expand and help are enabled by default.
Yes the admin navigation/toolbar,
so candidate for removalbut if expand is on it need 2 clicks...The first intent of 'back' was to answer:
Could be pages conditions and for others only profile. Entity override goes to front (? need a fix it seems
EntityViewOverride::getDisplayUrlFromInstanceId()).But it is clearly too convoluted, not clear on UX, and Instances list should be the place with a possible link to display settings.After more thought seems we can keep back.
Comment #6
mogtofu33 commentedIn review for feedback and possible warning before doing the work.
Comment #7
pdureau commentedOK that's great, it will simplify logic and admin UI.
OK
Indeed, it like that since day one:
Maybe it worth adding tests for DisplayBuildableInterface::getDisplayUrlFromInstanceId()
OK
Comment #8
mogtofu33 commentedNote, the
EntityViewOverride::getDisplayUrlFromInstanceId())issue is cited in #3616313: Check static methods on DisplayBuildableInterface but could be done in this issue or the other.Comment #10
mogtofu33 commentedComment #11
pdureau commentedRTBC:
Also, I am not sure we have finished the talk about
expandbutton in #3542003: Responsive viewports with iframes. I am sorry if the subject has already found its conclusion (I don't remember, to be honest...) , but do we still need the "Expand" button in Controls island now the Display Builder is always displayed "full page" (with the toolbar always at the top and the "chrome" moved to inside the Preview panel)?Comment #12
mogtofu33 commentedWith navigation left and top bar expand is useful.