Unverified Commit 561735ad authored by chunhtai's avatar chunhtai Committed by GitHub

Revert "remove usage to applyTextScaleFactorToWidgetSpan (#61636)" (#62144)

This reverts commit c816fabd.
parent 8428cf30
...@@ -79,6 +79,13 @@ class RenderParagraph extends RenderBox ...@@ -79,6 +79,13 @@ class RenderParagraph extends RenderBox
StrutStyle strutStyle, StrutStyle strutStyle,
TextWidthBasis textWidthBasis = TextWidthBasis.parent, TextWidthBasis textWidthBasis = TextWidthBasis.parent,
ui.TextHeightBehavior textHeightBehavior, ui.TextHeightBehavior textHeightBehavior,
@Deprecated(
'This parameter is a temporary flag to migrate the internal tests and '
'should not be used in other contexts. For more details, please check '
'https://github.com/flutter/flutter/issues/59316. '
'This feature was deprecated after v1.19.0.'
)
bool applyTextScaleFactorToWidgetSpan = false,
List<RenderBox> children, List<RenderBox> children,
}) : assert(text != null), }) : assert(text != null),
assert(text.debugAssertIsValid()), assert(text.debugAssertIsValid()),
...@@ -91,6 +98,7 @@ class RenderParagraph extends RenderBox ...@@ -91,6 +98,7 @@ class RenderParagraph extends RenderBox
assert(textWidthBasis != null), assert(textWidthBasis != null),
_softWrap = softWrap, _softWrap = softWrap,
_overflow = overflow, _overflow = overflow,
_applyTextScaleFactorToWidgetSpan = applyTextScaleFactorToWidgetSpan,
_textPainter = TextPainter( _textPainter = TextPainter(
text: text, text: text,
textAlign: textAlign, textAlign: textAlign,
...@@ -290,6 +298,8 @@ class RenderParagraph extends RenderBox ...@@ -290,6 +298,8 @@ class RenderParagraph extends RenderBox
markNeedsLayout(); markNeedsLayout();
} }
final bool _applyTextScaleFactorToWidgetSpan;
@override @override
double computeMinIntrinsicWidth(double height) { double computeMinIntrinsicWidth(double height) {
if (!_canComputeIntrinsics()) { if (!_canComputeIntrinsics()) {
...@@ -530,7 +540,8 @@ class RenderParagraph extends RenderBox ...@@ -530,7 +540,8 @@ class RenderParagraph extends RenderBox
// The content will be enlarged by textScaleFactor during painting phase. // The content will be enlarged by textScaleFactor during painting phase.
// We reduce constraint by textScaleFactor so that the content will fit // We reduce constraint by textScaleFactor so that the content will fit
// into the box once it is enlarged. // into the box once it is enlarged.
boxConstraints = boxConstraints / textScaleFactor; if (_applyTextScaleFactorToWidgetSpan)
boxConstraints = boxConstraints / textScaleFactor;
while (child != null) { while (child != null) {
// Only constrain the width to the maximum width of the paragraph. // Only constrain the width to the maximum width of the paragraph.
// Leave height unconstrained, which will overflow if expanded past. // Leave height unconstrained, which will overflow if expanded past.
......
...@@ -5200,6 +5200,7 @@ class RichText extends MultiChildRenderObjectWidget { ...@@ -5200,6 +5200,7 @@ class RichText extends MultiChildRenderObjectWidget {
assert(textScaleFactor != null), assert(textScaleFactor != null),
assert(maxLines == null || maxLines > 0), assert(maxLines == null || maxLines > 0),
assert(textWidthBasis != null), assert(textWidthBasis != null),
_applyTextScaleFactorToWidgetSpan = applyTextScaleFactorToWidgetSpan,
super(key: key, children: _extractChildren(text)); super(key: key, children: _extractChildren(text));
// Traverses the InlineSpan tree and depth-first collects the list of // Traverses the InlineSpan tree and depth-first collects the list of
...@@ -5277,6 +5278,8 @@ class RichText extends MultiChildRenderObjectWidget { ...@@ -5277,6 +5278,8 @@ class RichText extends MultiChildRenderObjectWidget {
/// {@macro flutter.dart:ui.textHeightBehavior} /// {@macro flutter.dart:ui.textHeightBehavior}
final ui.TextHeightBehavior textHeightBehavior; final ui.TextHeightBehavior textHeightBehavior;
final bool _applyTextScaleFactorToWidgetSpan;
@override @override
RenderParagraph createRenderObject(BuildContext context) { RenderParagraph createRenderObject(BuildContext context) {
assert(textDirection != null || debugCheckHasDirectionality(context)); assert(textDirection != null || debugCheckHasDirectionality(context));
...@@ -5290,6 +5293,7 @@ class RichText extends MultiChildRenderObjectWidget { ...@@ -5290,6 +5293,7 @@ class RichText extends MultiChildRenderObjectWidget {
strutStyle: strutStyle, strutStyle: strutStyle,
textWidthBasis: textWidthBasis, textWidthBasis: textWidthBasis,
textHeightBehavior: textHeightBehavior, textHeightBehavior: textHeightBehavior,
applyTextScaleFactorToWidgetSpan: _applyTextScaleFactorToWidgetSpan,
locale: locale ?? Localizations.localeOf(context, nullOk: true), locale: locale ?? Localizations.localeOf(context, nullOk: true),
); );
} }
......
...@@ -361,6 +361,7 @@ class Text extends StatelessWidget { ...@@ -361,6 +361,7 @@ class Text extends StatelessWidget {
'A non-null String must be provided to a Text widget.', 'A non-null String must be provided to a Text widget.',
), ),
textSpan = null, textSpan = null,
_applyTextScaleFactorToWidgetSpan = true,
super(key: key); super(key: key);
/// Creates a text widget with a [InlineSpan]. /// Creates a text widget with a [InlineSpan].
...@@ -400,6 +401,7 @@ class Text extends StatelessWidget { ...@@ -400,6 +401,7 @@ class Text extends StatelessWidget {
'A non-null TextSpan must be provided to a Text.rich widget.', 'A non-null TextSpan must be provided to a Text.rich widget.',
), ),
data = null, data = null,
_applyTextScaleFactorToWidgetSpan = applyTextScaleFactorToWidgetSpan,
super(key: key); super(key: key);
/// The text to display. /// The text to display.
...@@ -502,6 +504,8 @@ class Text extends StatelessWidget { ...@@ -502,6 +504,8 @@ class Text extends StatelessWidget {
/// {@macro flutter.dart:ui.textHeightBehavior} /// {@macro flutter.dart:ui.textHeightBehavior}
final ui.TextHeightBehavior textHeightBehavior; final ui.TextHeightBehavior textHeightBehavior;
final bool _applyTextScaleFactorToWidgetSpan;
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final DefaultTextStyle defaultTextStyle = DefaultTextStyle.of(context); final DefaultTextStyle defaultTextStyle = DefaultTextStyle.of(context);
...@@ -521,6 +525,7 @@ class Text extends StatelessWidget { ...@@ -521,6 +525,7 @@ class Text extends StatelessWidget {
strutStyle: strutStyle, strutStyle: strutStyle,
textWidthBasis: textWidthBasis ?? defaultTextStyle.textWidthBasis, textWidthBasis: textWidthBasis ?? defaultTextStyle.textWidthBasis,
textHeightBehavior: textHeightBehavior ?? defaultTextStyle.textHeightBehavior ?? DefaultTextHeightBehavior.of(context), textHeightBehavior: textHeightBehavior ?? defaultTextStyle.textHeightBehavior ?? DefaultTextHeightBehavior.of(context),
applyTextScaleFactorToWidgetSpan: _applyTextScaleFactorToWidgetSpan,
text: TextSpan( text: TextSpan(
style: effectiveTextStyle, style: effectiveTextStyle,
text: data, text: data,
......
...@@ -186,6 +186,7 @@ void main() { ...@@ -186,6 +186,7 @@ void main() {
key: key, key: key,
textDirection: TextDirection.ltr, textDirection: TextDirection.ltr,
textScaleFactor: textScaleFactor, textScaleFactor: textScaleFactor,
applyTextScaleFactorToWidgetSpan: true,
), ),
), ),
), ),
...@@ -214,6 +215,7 @@ void main() { ...@@ -214,6 +215,7 @@ void main() {
key: key, key: key,
textDirection: TextDirection.ltr, textDirection: TextDirection.ltr,
textScaleFactor: textScaleFactor, textScaleFactor: textScaleFactor,
applyTextScaleFactorToWidgetSpan: true,
), ),
), ),
), ),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment