Problem/Motivation

The new admin theme, based on Gin, has been committed as an experimental theme to Drupal 11.4. This is the roadmap issue to get it to stable and marked as the default admin theme in a future minor release.

Remaining tasks

Stable blockers

  1. #3622541: Add missing claro/classy templates to Admin theme
  2. #3605702: Remove remaining Gin and Claro implementation names from Default Admin theme
    1. #3623097: Remove remaining Gin and Claro implementation names from Default Admin theme, part 2
  3. #3618216: Test theme functionality
    1. We need tests
  4. #3580137: Document default_admin sub-theme behavior and theme settings inheritance
    1. [JH] this needs a policy => who?
  5. #3619426: Sidebar in entity edit forms moves to form botton if an ajax handler refreshes the form
    1. [JH] Jurgen filed that, he can demonstrate it, and should be able to fix it.
    2. [JH] It’s a blocker!!!
  6. #3583516: Breadcrumb separators are exposed to the accessibility tree
    1. They’re not actually focusable, its just that Voiceover picks em up. Mike G’s decision
    2. [Mike G] This is a relatively easy fix with tested code. Lets get it in.
  7. #3618140: Improve the accessibility of focus outlines
    1. Needs IS update to know exactly what is not working right. Mike’ G’s decision
    2. [Mike G] I want to see this for Stable
  8. #3506333: Improve the perceptibility of contextual link buttons
    1. [Mike G] This should be fixed

Blockers if Dark mode setting moves into system module

  1. #3606655: Make dark mode a first class citizen of Drupal core
  2. #3614864: Adjust CSS for new global dark mode setting per user
  3. #3621109: Skip link in dark mode has low color contrast
    1. [Mike G] I want to see this for Stable
  4. #3621244: Navigation mobile sidebar close button in dark mode has low color contrast
    1. [Mike G] I want to see this for Stable

Default in standard profile + Umami blockers

  1. #3618971: Use Admin theme in installer

Nice to haves

  1. #3619154: Accessibility fixes for Admin theme's sidebar toggle control
    1. Multiple issues including making it a <button> element, changing accessible name, and removing close button
  2. #3603162: Consolidate and cleanup media - icons, SVGs and others
  3. #3578936: Use a variable inter font in the admin theme
  4. #3619512: Remove custom weights from default_admin.libraries.yml
  5. #3582352: Clean up admin theme JS
  6. #3583518: Modernize table sticky header by using position: sticky
    1. This will fix #3595627: [PP-1] Sticky table header hides responsive tables toggle button
    2. [Mike G] The focus order issue needs to be fixed (even if we don’t use sticky)
  7. #3614866: Implement live preview for the dark mode setting in the user profile
    1. This one is actually postponed until we get the dark mode one in
  8. #3606582: Implement box-sizing: border-box on :root element
  9. #3608223: Add entity status formatting to views field
    1. Jurgen’s decision
    2. [JH] Nice to have
  10. #3618586: default_admin loses the footer group on forms that set #tree, silently unpublishing entities on save
  11. #3578834: Add support for "gin_login" directly in the new default admin theme
    1. [JH] Drupal CMS needs this. Lauri wanted to have it in core. Code is sitting here ready to be put into an MR. Asking Lauri …
  12. #3619156: Investigate and fix tab order issues on Admin theme's sidebar toggle
    1. [Mike G] We should certainly fix the focus order, but there are other issues too, right?

Not a blocker

  1. #3619127: Forms sidebar doesn't open with error links from Inline Form Errors module
    1. There appears to be a dependency on the other issue that KentR is working on. Don’t feel this is a blocker since IFE is not enabled by default
    2. [Mike G] I do see this as being a blocker if we want to have IFE in core and finally moving from an experimental module. Core is changing a lot though, so….
    3. [Mike H] It’s a blocker for IFE in core, but not Admin theme being stable
  2. #3619387: Indicate that forms sidebar has child element errors for UX and a11y
    1. Same as above: There appears to be a dependency on the other issue that KentR is working on. Not a blocker since core doesn’t have this anywhere yet
    2. [Mike G] I feel the same way as #1 above.
  3. #3604037: [PP-1] Indicate that grouping elements have child element errors for UX and a11y
    1. Another KentR issue for the same exact stuff
    2. [Mike G] All technical debt left over from D8, but yes, same as 1 & 2.
  4. #3619512: Remove custom weights from default_admin.libraries.yml
    1. This is a minor best practice issue created by Catch. Not a blocker
  5. #3612323: Do not use strong element for vertical tabs titles
    1. Very minor semantic fix. Not a blocker
    2. [Mike G] Agreed. Also a really easy fix.
  6. #3619153: Admin theme's collapsed / hidden sidebar should be operable without JavaScript
    1. [Mike G] not a blocker
  7. #3497077: dropdown buttons are broken with Javascript disabled
    1. JS is expected
    2. [Mike G] not a blocker
  8. #3614876: Clean-up libraries-overrides in default_admin.info.yml
    1. [Mike G] probably.. Not my expertise.
    2. [JH] I’d say this needs to be done, it’s really technical debt and who knows which side-effects we just don’t know yet
  9. #3585823: [Meta] Improve the accessibility of the Default Admin theme
    1. [Mike G] I would like to say all of the Major Priorities and Color Contrast are blockers
  10. #3618760: Tables can have too much horizontal whitespace
    1. [Mike G] Not a blocker.
  11. #3236439: Use warning icon for obsolete and deprecated modules on admin/modules in Claro
    1. Benji wants to use an icon in places
  12. #3594809: Do not use toggle switches for checkboxes on forms that require submission
    1. I don’t even agree with this.
    2. [Mike G] Why don’t you agree with this? But also I don’t see this as a blocker. I see it as a semantic improvement, not a barrier.
  13. #3612243: List of popular contrib modules that need to be updated to support Admin theme's dark mode
    1. [Mike G] How could this be a blocker? We’ll add to them as we test modules?
  14. #3593539: [PP-1] Replace compact mode link with a switch to improve accessibility
    1. [Mike G] Nice to have semantic improvement, not a barrier
  15. #3584305: Default admin theme settings are broken when another administration theme is active
    1. This is a valid issue, but the use case is very rare
  16. #3582351: [Meta] Clean up CSS within Admin theme
    1. [Mike G] Cleanup will save us all time in the implementation.
  17. #3616502: default_admin: Check if certain colors can an be built from variables to allow easier overrides
    1. Minor CSS cleanup
    2. [Mike G] Would help
    3. [JH] Should we hide the focus color selection in the theme settings until it works properly?
  18. #3616500: default_admin: Create order to gray primitive CSS variables
    1. Minor CSS cleanup
  19. #3615107: Render the vertical tabs widget server side to eliminate the flash of untransformed content
    1. [JH] Sounds like really bad UX, and since it comes with an MR, probably an easy fix
  20. #3583486: Adjust default_admin's top bar to the landmark used with the navigation module
    1. [Mike G] Seems like a pretty simple change.
  21. #3609023: Darkmode bug navigation
    1. This is a navigation module bug where when reorganizing the navigation panels in dark mode, the background is white.
    2. [Mike G] Seems like a bad dark mode implementation - I’d call it a breaker
    3. [JH] should be redundant if navigation works without layout_builder
  22. #3601095: Search on Permission page unusably poor performance
    1. Migrated from Gin. We need a way to test this.
    2. [Mike G] Aside from the irony of performance issues on a performance page, isn’t there a performance gate we should be building to?
    3. [JH] Not a performance page, it’s permissions. And this can be tested if a site has hundreds of permissions. Caused by JS which disables all role’s checkboxes when auth role is checked
  23. #3582162: Remove or limit the clobbering of Node breadcrumbs
    1. We need to decide if we even want to do this
  24. #3577737: Layout shift in Claro admin tables when Ajax progress indicator is injected in dropbutton cell
    1. [Mike G] Haven’t noticed it
    2. [JH] We’re having this in Gin as well, and every attempt to fix it caused even more terrible side-effects. However, Mike H’s cleanup phase 1 seems to have fixed that (by accident?), as I can’t reproduce it anymore either.
  25. #3576488: [meta] Admin theme: path to beta and stable
  26. #3592061: List of visual differences between Gin & Admin theme
  27. #3557411: Add documentation for themeRegistryAlter in Admin theme
    1. Jurgen’s decision
    2. [JH] This impacts, if anything, only contrib. Back when we migrated Gin, nobody knew what that code did and we removed it. Feels almost like we can “forget” it, otherwise we need to do some research.
  28. #3611424: Status report counter "Details" link has hidden text before visible
    1. Not sure how to reproduce
  29. #3618405: Purpose of filters fieldset is unclear when zoomed in
  30. Old Gin Issues First Set & Second Set
    1. [Mike G] Do we know if we’ve gone through all of these?
    2. [JH] My take is that default_admin has diverged from Gin to an extent where those lists don’t seem to be relevant anymore. We should get more out of testing default_admin as is.

Completed

#3619804: Remove unused templates from the Admin theme
#3621981: Remove admin-custom.css
#3584301: Update documentation for Default admin theme
#3618215: Documentation for Admin theme
#3617890: Create documentation guide for new Admin theme
#3619155: Forced-colors problems with admin theme's sidebar toggle button
#3617875: Better Dark Mode Support for Disabled Elements
#3618127: Navigation top bar action buttons in dark mode have low color contrast
#3619688: Button misaligned in exposed filters within Admin theme
#3615331: Invalid ARIA attribute aria-toolbar-link__labelledby on toolbar menus strips their accessible name
#3580733: Views status field triggers a PHP 8.5 deprecation on /admin/people
#3576431: Mark new admin theme as experimental
#3576646: Rename Gin-based admin theme
#3576874: Toggle switches are visually broken within dialog modals
#3581831: Remove support for Book and Forum Module
#3582018: Remove or move the uses of classy templates in default admin theme
#3582169: Cleanup cspell ignores in Admin
#3582178: Remove dead code in Admin
#3590364: Part 2 of Consolidate, refactor, remove and untangle Claro's CSS from Default Admin theme
#3590897: Sidebar toggle is visible and functioning in media library dialog, but shouldn't be there
#3599680: Consolidate, merge, and refactor Gin's CSS variable's into Admin theme's original variables.
#3587668: Apply to selected items button has low contrast

Reference

Core admin theme issues

Gin theme issues

Comments

longwave created an issue. See original summary.

longwave’s picture

Issue summary: View changes
catch’s picture

Issue summary: View changes
rkoller’s picture

Issue summary: View changes
jurgenhaas’s picture

Issue summary: View changes

Added 2 more child issues.

catch’s picture

Issue summary: View changes
penyaskito’s picture

Issue summary: View changes
quietone’s picture

Issue summary: View changes
quietone’s picture

Because there is support for the Book module I searched for other deprecated extensions. There are results for "classy", "contact" and "forum".

$ for ext in activity bartik classy seven stable ban book contact forum hal history quick rdf statistics tour; do git grep -ilw $ext core/themes/default_admin;done
core/themes/default_admin/templates/classy/README.txt
core/themes/default_admin/templates/classy/content/comment.html.twig
core/themes/default_admin/templates/classy/content/media-embed-error.html.twig
core/themes/default_admin/templates/classy/content/node.html.twig
core/themes/default_admin/templates/classy/content/search-result.html.twig
core/themes/default_admin/templates/classy/dataset/forums.html.twig
core/themes/default_admin/templates/classy/field/file-audio.html.twig
core/themes/default_admin/templates/classy/field/file-video.html.twig
core/themes/default_admin/templates/classy/misc/progress-bar.html.twig
core/themes/default_admin/tests/src/Functional/AdminTest.php
core/themes/default_admin/css/components/jquery.ui/theme.css
core/themes/default_admin/css/components/jquery.ui/theme.pcss.css
core/themes/default_admin/templates/classy/dataset/forum-icon.html.twig
core/themes/default_admin/templates/classy/dataset/forum-list.html.twig
core/themes/default_admin/templates/classy/dataset/forums.html.twig
core/themes/default_admin/templates/classy/user/forum-submitted.html.twig
core/themes/default_admin/css/components/system-admin--links.css
core/themes/default_admin/css/components/system-admin--links.pcss.css
core/themes/default_admin/font/inter.woff2
catch’s picture

The classy templates date from when classy was removed from core and the templates were copied to all of the core themes, so probably came from Claro originally, but e.g. I'm pretty sure the admin theme doesn't need to override the node template, nodes generally won't get rendered in the admin theme at all, and it probably doesn't have styling based on it either. So we probably need an issue to try deleting those templates where we can, or moving them out of the classy folder if they need to stay. Forum templates can just be deleted entirely though. So may one for templates from deprecated/removed modules and one for the other classy templates?

quietone’s picture

quietone’s picture

Issue summary: View changes
quietone’s picture

Issue summary: View changes
jurgenhaas’s picture

Issue summary: View changes
quietone’s picture

@jurgenhaas, I see my issue summary updates were removed. What was wrong with them?

jurgenhaas’s picture

Issue summary: View changes

@quietone I'm so sorry. Nothing was wrong with them. I had added the 3 new issue references and did that in a browser tab that was open for a couple of days, not realizing that there had been updates to it that I didn't have in my open tab yet.

I've restored your changes, I hope I got them all right.

quietone’s picture

Issue summary: View changes
kentr’s picture

Issue summary: View changes
quietone’s picture

Issue summary: View changes
poker10’s picture

Issue summary: View changes
kentr’s picture

Issue summary: View changes

Created #3585823: [Meta] Improve the accessibility of the Default Admin theme for copying Gin issues into, and updated the IS.

quietone’s picture

Issue summary: View changes
quietone’s picture

Issue summary: View changes

Another issue completed

mherchel’s picture

Issue summary: View changes

Working with @jurgenhaass and @mgifford and @bernardm28 on a call to discuss this.

In a Slack discussion with core product managers, they want this beta level in three weeks (11.4) and stable by 12.0 (December)

https://drupal.slack.com/archives/C7AB68LJV/p1779785392682889

mherchel’s picture

Issue summary: View changes
mherchel’s picture

Issue summary: View changes
quietone’s picture

Issue summary: View changes
mherchel’s picture

Title: [meta] Admin theme: path to stable » [meta] Admin theme: path to beta and stable
Issue summary: View changes
mherchel’s picture

Issue summary: View changes
mherchel’s picture

Issue summary: View changes
mherchel’s picture

Issue summary: View changes
mherchel’s picture

Issue summary: View changes
quietone’s picture

Issue summary: View changes

Added two issues for items in the 'Stable blocker' section.

quietone’s picture

Issue summary: View changes
quietone’s picture

Issue summary: View changes
quietone’s picture

mherchel’s picture

Issue summary: View changes

Met with @jurgenhaas and @mgifford this morning over Zoom. We triaged all the issues.

kentr’s picture

This issue is listed under the "Not a blocker" section (item 26 in the list). I assume that's an error, but I'm not familiar enough to be certain.

mherchel’s picture

Issue summary: View changes
mherchel’s picture

Issue summary: View changes
mherchel’s picture

Issue summary: View changes
mherchel’s picture

Issue summary: View changes
mherchel’s picture

Issue summary: View changes
catch’s picture

I think we need issues (maybe under a separate meta?) to use default_admin in the standard profile + umami. If we have that meta, I'd also move the installer issue under that - those issues are blocked by default_admin being stable rather than the other way around.

mherchel’s picture

I'll break these out a bit more later today

mherchel’s picture

Issue summary: View changes
mherchel’s picture

Issue summary: View changes
mherchel’s picture

Issue summary: View changes
mherchel’s picture

Reorganizing done!

10 stable blockers!

mherchel’s picture

Issue summary: View changes

Down to 8 stable blockers!

mherchel’s picture

catch’s picture

I don't think #3580137: Document default_admin sub-theme behavior and theme settings inheritance should be a stable blocker, we don't have a full write-up for Claro after several years on this policy, so why would it be a blocker now?

Also I think it would be good to define what the actual scope is of #3618216: Test theme functionality we can always add more test coverage of everything, are there specific, critical things missing test coverage?

quietone’s picture

Issue summary: View changes
quietone’s picture

I was looking into the deprecation of Claro and found that there are 16 instances of 'claro' in Default Admin.

$ git grep -ni claro | grep core/themes/default_admin
core/themes/default_admin/css/theme/accent.css:41:[data-admin-focus="claro"] {
core/themes/default_admin/css/theme/accent.pcss.css:37:[data-admin-focus="claro"] {
core/themes/default_admin/images/core/README.md:3:should be removed before moving Claro to Drupal core. See
core/themes/default_admin/images/core/README.md:4:https://www.drupal.org/project/claro/issues/3045216 for details.
core/themes/default_admin/src/Settings.php:295:        'claro' => $this->t('Legacy green'),
core/themes/default_admin/tests/fixtures/implementation-name-allowlist.json:14:    "pattern": "'claro' =>",
core/themes/default_admin/tests/fixtures/implementation-name-allowlist.json:19:    "pattern": "data-admin-focus=\"claro\"",
core/themes/default_admin/tests/fixtures/implementation-name-allowlist.json:24:    "pattern": "data-admin-focus=\"claro\"",
core/themes/default_admin/tests/fixtures/implementation-name-allowlist.json:49:    "pattern": "Claro",
core/themes/default_admin/tests/fixtures/implementation-name-allowlist.json:54:    "pattern": "project/claro",
core/themes/default_admin/tests/fixtures/implementation-name-allowlist.json:104:    "pattern": "(?:gin|claro)",
core/themes/default_admin/tests/fixtures/implementation-name-allowlist.json:109:    "pattern": "(?:Gin|Claro)",
core/themes/default_admin/tests/src/Unit/ImplementationNameTest.php:145:    $name_pattern = '/(?:\b(?:gin|Gin|claro|Claro)\b'
core/themes/default_admin/tests/src/Unit/ImplementationNameTest.php:146:      . '|(?<![A-Za-z])(?:gin|claro)(?=[._-]|[A-Z])'
core/themes/default_admin/tests/src/Unit/ImplementationNameTest.php:147:      . '|(?<![A-Za-z])(?:Gin|Claro)(?=[A-Z]))/';
core/themes/default_admin/tests/src/Unit/ImplementationNameTest.php:166:      if (preg_match('/(?:gin|claro)/i', $file->getFilename())) {
catch’s picture

That should be dealt with in #3605702: Remove remaining Gin and Claro implementation names from Default Admin theme which is only in main so far - does that mean it missed more references or were you looking prior to that landing?

quietone’s picture

I just built a new test setup and yes, the same results as above on main. And it is the same result on 11.x

quietone’s picture

Reading this comment, maybe accent.pcss.css should be data-accent.pcss.css?

quietone’s picture

Issue summary: View changes

Added #3621981: Remove admin-custom.css which is blocking the deprecation of Claro. And moved the doc issues to completed

quietone’s picture

Issue summary: View changes
catch’s picture

#3618971: Use Admin theme in installer is in. I think we need an equivalent issue for Umami still

#3587668: Color contrast in admin and claro under blockers is 'needs more info now' - should that be moved to nice to haves / needs triage?

For the record I don't think #3580137: Document default_admin sub-theme behavior and theme settings inheritance should block stable, it's more of a policy decision and doesn't actually affect functionality at all.

That leaves two accessibility issues, one form bug, and tests. It's not clear to me what the scope of the testing issue is for stable blocking. There are issues switching/copying claro testing over to default_admin which should be adding some implicit testing at least.

kentr’s picture

There are issues switching/copying claro testing over to default_admin which should be adding some implicit testing at least.

The theme also has some tests currently, and I'm adding tests in some issues.

kentr’s picture

Issue summary: View changes

#3587668: Color contrast in admin and claro under blockers is 'needs more info now' - should that be moved to nice to haves / needs triage?

It's outdated. Moved to completed (title also changed).

mgifford’s picture

Issue summary: View changes
quietone’s picture

Issue summary: View changes
catch’s picture

Issue summary: View changes
poker10’s picture

quietone’s picture

Issue summary: View changes