Theme Categorization
Friday, February 14, 2025
Theme lineage was originally supposed to let themes work with applications that they weren't implemented for.
This made sense when themes needed implementation files for the applications they work with. If a theme was missing files, and an ancestor theme had them, the ancestor's files could be obtained and used as a base.
This complication is no longer necessary now that definitions exist. Themes only define a small collection of attributes, and definitions (created by app developers) link to these attributes.
One thing that is nice about theme lineage is how you can look at the root ancestor theme, and it would either be light or dark. This can be useful to determine whether the theme is categorically a light or dark theme.
Instead of lineage, themes should just track whether they are light or dark.