Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Broken preset duotone filters in classic themes #49293

Open
ajlende opened this issue Mar 23, 2023 · 3 comments
Open

Broken preset duotone filters in classic themes #49293

ajlende opened this issue Mar 23, 2023 · 3 comments
Labels
[Type] Bug An existing feature does not function as intended

Comments

@ajlende
Copy link
Contributor

ajlende commented Mar 23, 2023

Description

When switching from a block theme to a classic theme, preset duotone filters are broken.

I would expect to see a correct filter if a default filter was selected, or no filter if a theme filter was selected (since the preset won't exist on a classic theme).

Additionally, with #49103 merged, preventing default duotone filters from being output on every page, we may be able to bring back the default filters in the duotone selector that were removed in #38681.

Step-by-step reproduction instructions

  1. Create a post using a block theme that has default duotone filters available
  2. Insert a block that supports duotone such as core/cover
  3. Select one of the default filters for the bloc and save the post
  4. Switch to a classic theme such as Twenty Nineteen
  5. Open the post again and see that a broken filter is applied

Screenshots, screen recording, code snippet

image

Environment info

No response

Please confirm that you have searched existing issues in the repo.

Yes

Please confirm that you have tested with all plugins deactivated except Gutenberg.

Yes

@ajlende ajlende added the [Type] Bug An existing feature does not function as intended label Mar 23, 2023
@t-hamano
Copy link
Contributor

I went down one WordPress version at a time to determine when this problem started. This problem has been occurring since WordPress 6.0. So it may be a regression that went unnoticed for a long time.

@t-hamano
Copy link
Contributor

From my research, I believe this is the intended behavior.

The defaultDuotone is explicitly disabled in the WordPress core codebase for classic themes without theme.json:

https://github.com/WordPress/wordpress-develop/blob/77883f97fc63ee260f6229576d31e6bc0dd80ebf/src/wp-includes/class-wp-theme-json-resolver.php#L315-L316

This change is part of #38681 in Gutenberg.

@ajlende
Copy link
Contributor Author

ajlende commented Mar 23, 2023

Thanks for digging that up!

Thinking back, #38681 was in response to WP 5.9 adds default Duotones before closing the body. Now that that issue has been more properly resolved, we can probably bring back the default duotone filters in classic themes—they will no longer get added to every page load.

Additionally, for filters that don't exist (such as a block theme's custom duotone filters), the fallback behavior should be an unfiltered image rather than an image with a broken filter like is shown in the screenshot.

EDIT: I updated the title and description to reflect this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Type] Bug An existing feature does not function as intended
Projects
None yet
Development

No branches or pull requests

2 participants