Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
Problem/Motivation
Olivero was committed in. This META issue is tracking tasks to make it stable and the default theme.
Proposed resolution
Must-have issues for stable release:
Git R Dun
Features
Todo: N/A
Done:
- #3152545: Make fixed/fluid width page wrapping and aligning on wide screen optional via settings
- #3130726: Add layout--content-full+ small correction on layout--content-narrow css classes
Accessibility
Todo:
n/a
Done:
- #3223332: Olivero primary search button should be initialized with aria-expanded="false" by JS
- #3210199: Olivero: Adjustments to landmark regions
- #3153260: Standardize Olivero's focus states across all non-form controls
- #3177238: Stronger visual affordance for Olivero's textbox form elements (Design only)
- #3191077: Olivero narrow/mobile menu constrains tabbing in one direction only.
- #3190120: Olivero: Focused level-2 nav items should always be in viewport during keyboard navigation.
- #3186349: Major accessibility problems with Olivero header show/hide feature
- #3191692: Have secondary menus close on blur
- #3194350: Implement new form element designs for Olivero
- #3191716: Opening desktop dropdown menu using pointer device requires two taps/clicks
- #3192903: Mouseout event should not close navigation sub-menu if focus is inside the sub-menu
- #3210443: Olivero: Focus after submenu close via ESC key
- #3227427: Olivero: <summary> focus state is invisible in Windows high contrast
- #3191682: Ensure that Olivero's focus states are visible and accessible in Windows High Contrast mode
- #3190262: [META] Assess Olivero for WCAG Resize Text and Reflow success criteria.
- #3211616: Olivero: a11y color contrast test fail for primary button on hover
- #3211395: Comment form save button has incorrect background color and contrast ratio violation on hover
- #3229094: Olivero: Titles should wrap around images in teaser when necessary
- #3223281: Olivero: Primary nav search icon invisible in forced-colors mode in MS Edge
Bugs
Todo:
- #3190537: Mobile search input on tablet width in IE11 does not visually respond to keypress
- #3244621: Olivero: JS error when secondary tabs are present
Done:
- #3174077: There is no indentation to indicate a comment is a reply to another comment
- #3149714: Olivero: Audit form items within settings tray for visual inconsistencies
- #3165452: Override Drupal.theme.message to to make sure JS messages get rendered correctly
- #3165450: Ensure mobile menu is displayed when JS is disabled
- #3173825: "User pictures in posts" and "User pictures in comments" don't seem to work
- #3174067: Avoid duplication in field--comment-body.html.twig
- #3174074: menu-local-task.html.twig contains invalid HTML
- #3174101: The comment on olivero_preprocess_menu_local_tasks no longer seems relevant
- #3182134: Resolve Olivero config differences after install
- #3182711: Help block is placed into help region, but that doesn’t exist
- #3191725: Ensure that tabledrag user interface is usable within Olivero
Technical debt
Todo:
Done:
- #3173010: Class clean up and add #0c0d0e and #171e23 as variables in Olivero's footer.pcss.css
- #3174107: Add additional testing coverage for Olivero
- #3156207: [META] Olivero Coding standards review and fix - CSS files
- #3117698: Allow PostCSS Plugin “Px to Rem” in core for Olivero theme
- #3124796: META: Adjust Olivero codebase to meet Drupal coding standards
- #3165449: Ensure all SVGs are optimized
- #3138850: Optimize svg of system-powered-by block
- #3151405: All css colors must be variable
- #3173898: [meta] Olivero JavaScript coding standards fixes
- #3177918: Holistically refactor use of Olivero's z-index rules to play nice with Core
- #3190268: Move/remove JavaScript polyfills
- #3173898: [meta] Olivero JavaScript coding standards fixes
- #3173008: [Code Review] wide image within article template a reusable component/class
- #3173012: Olivero header-search-wide.pcss.css and header-search-narrow.pcss.css adjustments
- #3173016: Address code feedback for Olivero's node.pcss.css partials
- #3173022: Figure out a clean way to manage the style of Olivero's menu block in the sidebar region
- #3182200: Follow proper BEM syntax within secondary navigation menu
- #3196874: BEMifying Olivero's book pager
- #3153234: [Meta] Olivero JavaScript should be selecting [data-drupal-selector] attributes where possible
- #3173832: Ensure Olivero's JS documentation matches standards
- #3212975: Olivero: Normalize JavaScript selectors in messages.es6.js
Should-have issues for stable release / settings as default theme:
Accessibility
Todo:
- #3227431: Tabledrag icon doesn't adapt to forced-colors mode
- #3227429: Olivero: Autocomplete icon doesn't have proper contrast in high contrast mode
- #3093461: Let users disable animation in Olivero
- #3191680: Figure out focus state for search form in Olivero
- #3191806: Only close Olivero sub-menus when resize results in a different menu format
Done:
- #3177345: Powered by Drupal block fails WCAG contrast (minimum)
- #3180086: It should not be possible to have two dropdown menus appear at the same time within Olivero
- #3190140: Collapsible nav button text should be more descriptive
- #3228140: Remove misleading "toggle" phrase from Olivero's main-menu disclosure button
- #3228145: Remove misleading "toggle" phrase from Olivero's wide search form disclosure button
- #3177260: [META] Accessibility of Olivero header/menu region - Check for any other bugs classed normal there, in case we've forgotten to add them here.
- #3226785: Olivero: Wide search form should close on blur
- #3223271: Olivero: Select dropdown icons need more contrast in Windows High Contrast mode
Features
Todo:
- #3217924: Olivero: Convert all colors (blues and grays) to HSL and normalize hues and saturations.
- #3127588: Theme Olivero's language switcher
Design
Todo: n/a
Done
- #3226704: Olivero's top-level primary menu's hover states are not correct
- #3212120: Blockquote's content font size should be decreased when it is placed into the sidebar in the Olivero theme.
- #3225188: Olivero: Ensure proper visual hierarchy between headings
- #3194560: Style maintenance page for Olivero
Bugs
- #3224958: Olivero should style Views exposed filters as inline (currently are stacked)
- #3223264: Olivero: Messages can be malformed when JS creates messages and PHP messages already exist
Done
- #3221871: Olivero: Mobile menu prevents scroll & obscures page after click if menu item contains link to anchor on same page
- #3214191: Olivero: Header obscures jQueryUI overlay
- #3225241: Olivero primary menu JS completely breaks if site-builder specifies over 2 levels deep
Related Drupal Core Issues
- #3156244: Title variable isn't set by Syndicate block - so the link text is an unfinished sentence
- #3048848: Syndicate block outputs wrong feed URL
- #3224750: Figure out how to handle views grid in Olivero
API changes
None.
Data model changes
None.
Release notes snippet
TBD
Comments
Comment #2
Gábor HojtsyComment #3
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedJust tying up a loose end here @Lauriii's comment #215 in #3111409-215: Add new Olivero frontend theme to Drupal 9.1 core as beta.
From an accessibility viewpoint I wouldn't have regarded that issue as a beta-blocker. The problem of resizing is well understood, and there are several paths to success. The PostCSS plugin itself is just a maintenance workflow detail.
Rather, the ability for the user to scale text using the browser/OS settings and controls is a must-have stable blocker. (Along with other items essential for understanding the content; such as icons, and focus outlines.) Adding a task to assess Olivero for WCAG Resize Text and Reflow success criteria.
#3117698: Allow PostCSS Plugin “Px to Rem” in core for Olivero theme wasn't copied to the IS here yet, so I've added it as a stable must-have technical debt. Revise that triage if needed.
Comment #4
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedNew WCAG level-AA issue. #3177345: Powered by Drupal block fails WCAG contrast (minimum).
Comment #6
DamienMcKenna(bump to get the issue statuses updated)
Comment #7
katannshaw CreditAttribution: katannshaw at Lullabot commentedThe National Federation of the Blind (NFB) has returned their screen reader accessibility test results which you can watch in a video at http://t.ly/AMj8
Here is my summary of what the tester said in the video:
And here is a breakdown of what I heard in the video:
TESTED WITH
OS/Browser: NVDA 2020 Chrome
Tested: Contact Form
OVERALL RESULT
Comment #8
lauriiiAdded #3117698: Allow PostCSS Plugin “Px to Rem” in core for Olivero theme to the stable blockers.
Comment #9
mherchel- #3117698: Allow PostCSS Plugin “Px to Rem” in core for Olivero theme was listed twice
- Removing #3172957: Olivero: Media library within Layout Builder modal is unstyled, as that was thrown over the wall to the media team.
- Moving #3153260: Standardize Olivero's focus states across all non-form controls to stable blocker (pretty sure it should have been here all along).
Comment #10
mherchelAdding #3156207: [META] Olivero Coding standards review and fix - CSS files
Removing the following as they're covered in the issue above:
Comment #11
mherchelAdding #3177918: Holistically refactor use of Olivero's z-index rules to play nice with Core
Comment #12
mherchelRemoving #3158585: z-index issue when using webform wizard pages
Comment #13
proeungJust modified the "Design/Usability improvements" section to include some issues that came out from our first round of feedback from the design team.
Comment #14
proeungComment #15
proeungAdd #3182242: [Olivero Theme]: Theme 404 "Page not found" and 403 "Forbidden/Access denied" pages to the "Design/Usability improvements" section.
Comment #16
mherchelAdding
Comment #17
mherchelComment #18
bnjmnmComment #19
bnjmnmComment #20
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedAdded a new must-have accessibility bug - #3191077: Olivero narrow/mobile menu constrains tabbing in one direction only.
Note this might overlap with #3190242: Nav should use core/drupal.tabbingmanager instead of custom focus manager. However that's a task (not a bug), and non-urgent.
Comment #21
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedI've triaged the child issues at #3177260: [META] Accessibility of Olivero header/menu region and put them in the stable must/should sections here.
Can somebody explain what the "post-stable" stage means, and whether these need to be done before using Olivero as the default theme for Standard profile. Previous experience tells me this is where the must/should horse-trading happens :-)
Comment #22
mherchelComment #23
proeungAdd #3191692: Have secondary menus close on blur to the stable blocker roadmap.
Comment #24
mherchelAdding #3191725: Ensure that tabledrag user interface is usable within Olivero as stable blocker.
Comment #25
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedDemoting #3191680: Figure out focus state for search form in Olivero from must-have to should-have. The current focus style satisfies WCAG; it just doesn't match the others proposed in #3153260: Standardize Olivero's focus states across all non-form controls.
Comment #26
mherchelAdding #3193364: Menu Link Attributes contrib module does not work with Olivero theme
Comment #27
mherchelAdded #3194350: Implement new form element designs for Olivero
Comment #28
mherchelRemoving #3193364: Menu Link Attributes contrib module does not work with Olivero theme
Comment #29
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedJust filed #3194718: Plan for Olivero theme regions and landmark regions.
I've put it in here as a stable must-have, but I'm somewhat flexible on that. It's a golden opportunity to dial down Drupal's over-use of ARIA landmark regions. There's a bit of an art to arranging landmark regions well, but achieving a sensible baseline in a template-driven CMS is compromise-laden PITA. It needs a plan, and currently it's a bit open-ended.
So triage-wise, I'd say we MUST have some idea of where we're going with it before marking Olivero as stable; but exact implementation could perhaps wait until the Standard profile milestone.
Comment #30
xjmAs I noted in #3155358: [policy, no patch] Drop IE11 support from Drupal 10.0.x, Olivero may need to retain IE11 workarounds in Drupal 9 even if Drupal 10 drops support for IE11. What is the current status of IE11 support for the theme?
Comment #31
mherchelWe currently fully support IE11 (with some known bugs).
This is a topic for another discussion, but I'm wondering why. Drupal 10 core (of which Olivero is a part) is a major version, and should be able to break backwards compatibility.
Edit: I think i understand. As long as the D10 version can drop support, we'll be fine. I expect D9 to support IE11 for forever.
Comment #32
mherchelAdding #3191716: Opening desktop dropdown menu using pointer device requires two taps/clicks
Comment #33
mherchelUpdating issue statuses
Comment #34
mherchelComment #35
mherchelComment #36
mherchelComment #37
mherchelComment #38
mherchelAdding #3191806: Only close Olivero sub-menus when resize results in a different menu format as a should-have, and #3192903: Mouseout event should not close navigation sub-menu if focus is inside the sub-menu a stable blocker, so I can close #3177260: [META] Accessibility of Olivero header/menu region
Comment #39
mherchelComment #40
mherchelAdding some issues from #3173898: [meta] Olivero JavaScript coding standards fixes, so we can close that as outdated.
Comment #41
mherchelMoving in the following issues from #3156207: [META] Olivero Coding standards review and fix - CSS files
Comment #42
mherchelComment #43
mherchelComment #44
mherchelComment #45
mherchelReplacing #3194718: Plan for Olivero theme regions and landmark regions with #3210199: Olivero: Adjustments to landmark regions
Comment #46
mherchelRemoving #3129257: Olivero: Mobile tabs can become out of order if browser is resized as a stable blocker per the accessibility and UX teams.
See the note in the issue.
Comment #47
mherchelComment #48
mherchelComment #49
bnjmnmAdded #3210443: Olivero: Focus after submenu close via ESC key (sorry!, should be simple to fix?)
Comment #51
mherchelComment #52
mhercheladding #3153234: [Meta] Olivero JavaScript should be selecting [data-drupal-selector] attributes where possible
Comment #53
mherchelUpdating issue statuses
Comment #54
mherchelUpdating issue statuses
Comment #55
zenimagine CreditAttribution: zenimagine commentedComment #56
andy-blumFrom @zenimagine:
Olivero is still labelled an experimental theme, but in my opinion is a pretty stable choice. That said, if you're currently using a theme that you've customized at all, you'll need to put some work in to moving your blocks back where you want them.
In the future, be sure to put comments in the comment box and to not replace the issue summary/description.
Comment #57
zenimagine CreditAttribution: zenimagine commented@andy-blum This is for a new site on Drupal 9.1
Has anyone managed to change the colors from the interface? I am not going to subtopic when I browse the code.
Yes sorry, I didn't care.
Comment #58
zenimagine CreditAttribution: zenimagine commentedI have a question regarding the documentation of the Olivero theme.
With Bootstrap there is a documentation with the "class" to apply colors, font size, margins, ...
https://getbootstrap.com/docs/5.0/content/typography/
Is there a documentation for Olivero with the details of the different "class"?
Thank you
Comment #59
andy-blumBootstrap is a front-end framework, meaning it's built with the intention of you customizing it. The drupal bootstrap theme, is just a drupal implementation of that, and is designed to be sub-themed
Olivero is just a theme. It's much more locked-in. You can certainly still sub-theme it, but it does not have all the utility classes that bootstrap would.
Comment #60
zenimagine CreditAttribution: zenimagine commented@andy-blum Olivero is still in its infancy.
When I look at the possibilities on this site, it looks more and more like a highly customizable theme, much like Bootstrap, but much better integrated with Drupal :
https://tugboat-aqrmztryfqsezpvnghut1cszck2wwasr.tugboat.qa/
I think a lot of contrib modules will add functionality to this theme.
Where can I find the class details ?
Comment #61
mherchel@zenimagine At some point I want to add tailwind-esque CSS classes. However the current focus is to resolve the issues above to make this theme stable and the default. Feel free to create an issue though.
As far as changing colors, this likely won't happen until Drupal 10. See #3086514: Investigate use of the changing color themes for Olivero
In the meantime, lets move any off-topic discussion into other issues.
Comment #62
zenimagine CreditAttribution: zenimagine commented@mherchel OK, thanks. I found the link below to create a subtopic. I will test to modify the colors:
https://github.com/mherchel/olivero-subtheme
Comment #63
andy-blum@zenimagine you can also move olivero-related discussions to the #d9-theme slack channel
Comment #64
thejimbirch CreditAttribution: thejimbirch at Kanopi Studios commentedThe slack channel has been renamed to #olivero
Comment #65
zenimagine CreditAttribution: zenimagine commentedThe stable version is planned for Drupal 9.2 or 9.3 ?
Comment #66
Gábor Hojtsy@zenimagine: the stable criteria still has some issues left to fix. So since Drupal 9.2.0 is next week, unfortunately Olivero will not yet be stable in Drupal 9.2. However, it could get stable in 9.3.0 and the possibility is open to even make it the default theme in 9.3.0, replacing Bartik. (While keeping Bartik on the side deprecated in Drupal 9 and then removing in Drupal 10.0).
Comment #67
mherchelComment #68
mherchelComment #69
zenimagine CreditAttribution: zenimagine commented@Gábor Hojtsy What is the version of the Olivero theme on Drupal 9.1 ? Because I use it.
Comment #70
Gábor Hojtsy@zenimagine: there are no specific versions of core components other than the core version itself. There is however different stability of components in core. When you enabled the Olivero theme it informed you about the experimental status. It is still experimental in Drupal 9.2.0 (to be released next week).
Comment #71
zenimagine CreditAttribution: zenimagine commentedI will update Drupal 9.1 to Drupal 9.2
Should I desinstall Olivero theme and reinstall it ? Where can I update without risking the theme ?
I did not create under theme, I simply added blocks and change the configuration.
Comment #72
mherchel@zenimagine This issue thread is only to document the issues to make Olivero stable. Please open up a separate issue for your support request (or ask in the #olivero channel in Drupal slack).
Comment #73
mherchelSplitting off the work to make Olivero the default theme to #3219958: [META] Make Olivero the default theme
Comment #74
mherchelUpdating issue statuses
Comment #75
catchStarted splitting issues in the issue summary into todo and done sections so it's a bit easier to see what's remaining.
Comment #76
DamienMcKennaShouldn't #3190262 be in a "done" section as it hasn't been committed yet? Or are you consider it "done" when it has been worked on and has reached RTBC?
Comment #77
catchComment #78
catchComment #79
mherchelRemoving #3177260: [META] Accessibility of Olivero header/menu region, as there's only one active issue within it (which is classified as a "should have"), which is also listed directly within the should-haves within this issue.
Comment #80
mherchelMoving items into the done group :D
Comment #81
mherchelMoving #3212975: Olivero: Normalize JavaScript selectors in messages.es6.js directly into the summary and closing out #3153234: [Meta] Olivero JavaScript should be selecting [data-drupal-selector] attributes where possible
Comment #82
mherchelComment #83
mherchelMoving #3173832: Ensure Olivero's JS documentation matches standards to done
Comment #84
mherchelAdding #3225188: Olivero: Ensure proper visual hierarchy between headings as a should have
Comment #85
mherchelAdding #3224750: Figure out how to handle views grid in Olivero as related
Comment #86
mherchelAdding #3227427: Olivero: <summary> focus state is invisible in Windows high contrast as a stable blocker.
Comment #87
mherchelAdding the following issues to should have
Accessibility
Design
Bugs
Features
Comment #88
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedBumping #3223332: Olivero primary search button should be initialized with aria-expanded="false" by JS to must-have, because it pertains to WCAG level-A.
Comment #89
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedAdding #3228140: Remove misleading "toggle" phrase from Olivero's main-menu disclosure button. A quick win, not a blocker.
Comment #90
andrewmacpherson CreditAttribution: andrewmacpherson as a volunteer commentedBumping #3223281: Olivero: Primary nav search icon invisible in forced-colors mode in MS Edge to must-have.
While the icon is invisible in forced colours mode, a user will not know what the purpose of the button is, and may not know that a button is there at all (depending on what specific colour scheme they have chosen) because it doesn't have a visible border or text.
Comment #91
mherchelAdding #3228145: Remove misleading "toggle" phrase from Olivero's wide search form disclosure button as a should-have.
Comment #92
mherchelWe committed 7 issues today including 3 stable blockers. Made a lot of progress on many other issues, too.
Updating summary to reflect current status.
Comment #93
mherchelMoving #3191682: Ensure that Olivero's focus states are visible and accessible in Windows High Contrast mode and #3225188: Olivero: Ensure proper visual hierarchy between headings to done.
Comment #94
mherchelAdding #3228938: Olivero: Ensure long words break properly when zoomed in to provide proper reflow as an accessibility stable blocker.
Comment #95
mherchelReplacing duplicate issue #3228938: Olivero: Ensure long words break properly when zoomed in to provide proper reflow with #3177475: Olivero: Ensure long words break properly when zoomed in to provide proper reflow
Comment #96
xjmComment #97
mherchelDescoping #3177475: Olivero: Ensure long words break properly when zoomed in to provide proper reflow as an accessibility stable blocker per accessibility maintainers in comment 96
Comment #98
xjmComment #99
mherchelMoving #3190262: [META] Assess Olivero for WCAG Resize Text and Reflow success criteria. to done, and adding #3229094: Olivero: Titles should wrap around images in teaser when necessary as a stable blocker.
Comment #100
mherchelAdding #3190537: Mobile search input on tablet width in IE11 does not visually respond to keypress as a stable blocker.
Comment #101
mherchelRe-saving to update issue statuses.
Comment #102
catchSo just to check, are we down to two stable blockers (#3223281: Olivero: Primary nav search icon invisible in forced-colors mode in MS Edge and #3173877: [meta] QA testing of Olivero across multiple browsers)?
Comment #103
mherchelMoving fixed issues to done sections.
Comment #104
mherchelJust seeing this comment now, but yes.
Comment #105
mherchelLast stable blocker committed! Moving around issues into "done" sections :D
Comment #106
mherchelAdding #3243041: Mark Olivero stable to a new "git r dun" section :D
Comment #107
catchJust to say from a release management perspective I'm happy to see Olivero marked stable as soon as the last blocker here is done.
It looks like things are in good shape for #3219958: [META] Make Olivero the default theme too given most of the 'should haves' here are either done or in progress too, but it could probably use another once over the Olivero queue for anything that's escaped the meta-issue, and anything that comes out of cross-browser testing that might not be stable blocking but might be default blocking - so I've tagged that issue for the various sign-offs.
Comment #108
alexpottI think we might need to fix #3244621: Olivero: JS error when secondary tabs are present before marking it stable. A JS error when secondary tabs are present seems pretty significant.
Comment #109
alexpott@lauriii agrees - added to the issue summary.
Comment #110
catch#3244621: Olivero: JS error when secondary tabs are present is fixed.
With #3219958: [META] Make Olivero the default theme there's been significant cross-browser testing, both informally and now formally as part of that issue. I think the last remaining couple of browsers could be default rather than stable blocking - testing so far has caught some blocking and non blocking issues, showing that it was done quite comprehensively.
Comment #111
Gábor HojtsyI agree, the issues found that are not yet fixed don't seem to be significant. Let's get #3243041: Mark Olivero stable in then? :)
Comment #113
xjmAdding issue credit for everyone who helped develop and refine this roadmap. We can mark this fixed now that #3243041: Mark Olivero stable is in.
The next work is happening in #3219958: [META] Make Olivero the default theme.
Thanks everyone!