Skip to content

[material_ui] Implement M3E typography - #13476

Open
elliette wants to merge 11 commits into
flutter:mainfrom
elliette:expressive_typography_impl
Open

elliette wants to merge 11 commits into
flutter:mainfrom
elliette:expressive_typography_impl

Conversation

@elliette

@elliette elliette commented Oct 28, 2026 •

Copy link
Copy Markdown
Member

This PR adds Material 3 Expressive typography to material_ui.

New APIs:

  • Typography.material2025: a new factory constructor for M3 Expressive typography. NOTE: .material2025 replaces .material2021 as the default when useMaterial3 is true. Baseline styles are the same as material2021, but material2025 adds 15 new emphasized styles as well.
  • Geometry text themes: Typography.englishLike2025, Typography.dense2025, and Typography.tall2025
  • Emphasized text styles on TextTheme: an emphasized variant of each of the 15 baseline styles (e.g. TextTheme.titleMediumEmphasized). Only set by default when typography is created with material2025.
  • Color-free typeface text themes: Typography.mountainView, Typography.redmond, Typography.helsinki, Typography.cupertino, and Typography.redwoodCity.

Demo (in material_ui/example):

material_expressive_typography_gif

Fixes flutter/flutter#184933

Pre-Review Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.

Footnotes

  1. Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling. ↩ ↩2

@github-actions github-actions Bot added p: material_ui triage-design Should be looked at in design triage labels Oct 28, 2026
@elliette elliette added the CICD Run CI/CD label Oct 29, 2026
@elliette
elliette marked this pull request as ready for review October 29, 2026 17:57

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces Material 3 Expressive (2025) typography defaults, adding Typography.material2025 and corresponding emphasized text styles to TextTheme. It updates ThemeData to use these new defaults when useMaterial3 is true and adds platform-specific typeface text themes. Feedback suggests refactoring the switch expression in Typography.material2025 to handle a nullable platform parameter directly, avoiding the null-assertion operator.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CICD Run CI/CD p: material_ui triage-design Should be looked at in design triage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

M3 Expressive: Visually emphasized typography

1 participant