Postponed until 8.1.x

We have a moduleHandler class which is used to assist with enabling / disabling modules. Proposing we have a similar mechanism for themes.

theme_enable()
theme_disable() etc... would be converted so we would end up with

Drupal::themeHandler()->disable($theme_list)
....

This would be useful in #1808248: Add a separate module install/uninstall step to the config import process where we would like to override the default behavior if we are enabling a theme via a config import.

Comments

tayzlor’s picture

Issue tags: +Configuration system

tagging

catch’s picture

markhalliwell’s picture

Title: Create a theme handler to manage enabling / disabling of themes » Create Drupal::themeHandler() to manage common tasks

We should also probably move the theme related stuff in Drupal::moduleHandler()->alter() to something like Drupal::themeHandler()->alter(). We're also going to need something like Drupal::themeHandler()->invoke() (for active theme only, no invokeAll) for #2035055: Introduce hook_theme_prepare[_alter]() and remove hook_preprocess_HOOK().

markhalliwell’s picture

fubhy’s picture

Title: Create Drupal::themeHandler() to manage common tasks » Implement a ThemeHandler to manage themes (@see ModuleHandler)

Re-titling.

webchick’s picture

Priority: Major » Normal

As far as I can see, this is just a nice to have, and part of #2024083: [META] Improve the extension system (modules, profiles, themes) which is only "normal."

I'd also like to remind people that API freeze was over a month ago. ;)

klonos’s picture

Issue summary: View changes

...mentioning parent issue #2024083

dawehner’s picture

#2109287: Replace list_themes() with a service. introduces such a theme handler.

klonos’s picture

dawehner’s picture

Status: Active » Closed (duplicate)

Let's mark it as duplicate.

markhalliwell’s picture

Status: Closed (duplicate) » Active

Not sure why this was marked as a dup. Yes, #2109287: Replace list_themes() with a service. introduced a theme handler, but this issue is about improving upon all the extension handling (module, theme, profiles) from a base class: #2024083: [META] Improve the extension system (modules, profiles, themes).

filijonka’s picture

Version: 8.0.x-dev » 8.1.x-dev
Issue summary: View changes
Status: Active » Postponed

META has been postponed to 8.1.x hence this too

star-szr’s picture

To follow up on #10 this needs an issue summary update because #2109287: Replace list_themes() with a service. fixes the issue summary (from my perspective anyway).

dawehner’s picture

Status: Postponed » Fixed

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.