Skip to content

[Impeller] Rendered Text Wiggles when scaling #162949

@Lojcs

Description

@Lojcs

Steps to reproduce

Put text under a widget that scales it such as AnimatedScale or FlexibleSpaceBar and make it scale. Launch app on Android. Happens on 3.25.0-0.0.pre - 3.29.0-0.3.pre. Doesn't happen on 3.24.5 and earlier.

Expected results

Text scales uniformly and letters don't move or scale otherwise.

Actual results

Letters independently move and scale in a distracting manner

Code sample

Code sample
import 'package:flutter/material.dart';

void main() => runApp(const MyApp());

class MyApp extends StatelessWidget {
  const MyApp();
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: CustomScrollView(slivers: [
          SliverAppBar(
              automaticallyImplyLeading: false,
              collapsedHeight: 50,
              toolbarHeight: 50,
              expandedHeight: 500,
              flexibleSpace: FlexibleSpaceBar(
                  title: Text("Wiggle wiggle 3.27.4"), expandedTitleScale: 5)),
          SliverToBoxAdapter(
            child: const Text(
              """
                \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
                \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n""",
            ),
          )
        ]),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration
Screen.Recording.mp4

Logs

Logs
[Paste your logs here]

Flutter Doctor output

Doctor output
[✓] Flutter (Channel stable, 3.27.4, on Arch Linux 6.12.10-arch1-1, locale en_US.UTF-8)
    • Flutter version 3.27.4 on channel stable at ~/Development/flutter_updated
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision d8a9f9a52e (9 days ago), 2025-01-31 16:07:18 -0500
    • Engine revision 82bd5b7209
    • Dart version 3.6.2
    • DevTools version 2.40.3

[✓] Android toolchain - develop for Android devices (Android SDK version 36.0.0-rc1)
    • Android SDK at ~/Android/Sdk
    • Platform android-35, build-tools 36.0.0-rc1
    • Java binary at: /opt/android-studio/jbr/bin/java
    • Java version OpenJDK Runtime Environment (build 21.0.4+-12422083-b607.1)
    • All Android licenses accepted.

[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Linux toolchain - develop for Linux desktop
    • clang version 19.1.7
    • cmake version 3.31.5
    • ninja version 1.12.1
    • pkg-config version 2.3.0

[✓] Android Studio (version 2024.2)
    • Android Studio at /opt/android-studio
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 21.0.4+-12422083-b607.1)

[✓] Connected device (2 available)
    • SM N985F (mobile) • 192.168.1.80:45797 • android-arm64 • Android 13 (API 33)
    • Linux (desktop)   • linux              • linux-x64     • Arch Linux 6.12.10-arch1-1

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work lista: qualityA truly polished experiencea: typographyText rendering, possibly libtxtc: renderingUI glitches reported at the engine/skia or impeller rendering levele: impellerImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.found in release: 3.28Found to occur in 3.28found in release: 3.29Found to occur in 3.29has reproducible stepsThe issue has been confirmed reproducible and is ready to work onteam-engineOwned by Engine teamtriaged-engineTriaged by Engine team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions