Skip to content

Border with BorderRadius appear blocky #187757

Closed

Description

@ts-andrejmatos

Steps to reproduce

  1. Create a flutter project with the snippet below
  2. Observe the blockiness of the border

I am developing an app for an Android TV and this is very noticeable on a big screen. I tried on multiple virtual devices (FHD, 4k google and android TV) and also on some physical devices (a physical FHD Android TV and a phone) and it is visible on all of them. It is a bit better on the 4k TV and on a Pixel 10 it is not as noticeable (because of the small screen size, but can still be observed).

I was unable to observe this on the Web, even on a big screen.

I also tried with a Material widget and with a ClipRRect and I get the same results.

I am aware of #183831 and #183339 but I believe this issue is a bit different, correct me if I am wrong.

Expected results

Not blocky, smooth border.

Actual results

Blocky border

Code sample

Code sample
void main() {
  runApp(const MaterialApp(home: TestPage()));
}

class TestPage extends StatelessWidget {
  const TestPage({super.key});

  @override
  Widget build(BuildContext context) {
    return ColoredBox(
      color: Colors.black,
      child: Center(
        child: Container(
          width: 192,
          height: 96,
          decoration: BoxDecoration(
            border: BoxBorder.all(color: Colors.white, width: 3),
            color: Colors.grey[800],
            borderRadius: const BorderRadius.all(Radius.circular(30)),
          ),
        ),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration Image

Logs

Logs
\

Flutter Doctor output

Doctor output
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.44.1, on CachyOS 7.0.8-1-cachyos, locale en_GB.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 36.1.0)
[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[✓] Connected device (4 available)

Activity

  1. suryaKommana2662 commented on Jun 10, 2026

    @suryaKommana2662
    Contributor

    @ts-andrejmatos Thanks for the detailed report and reproduction sample. I can reproduce the reported blocky appearance of the rounded border on Android using the provided example. Regarding #183831 and #183339, there are similarities since those issues also involve rendering artifacts affecting rounded borders and strokes. However, it is not yet clear whether this report has the same underlying cause or represents a separate issue. Labeling for rendering investigation and routing to the team-engine for further evaluation.

  2. added
    platform-androidAndroid applications specifically
    has reproducible stepsThe issue has been confirmed reproducible and is ready to work on
    and removed
    in triagePresently being triaged by the triage team
    on Jun 10, 2026
  3. gaaclarke commented on Jun 15, 2026

    @gaaclarke
    Member

    We have a solution for this that we use for desktop where we render things with SDFs. By default this is just turned on for Desktop apps (on main). On iOS we created a flag for people to be able to opt into SDFs if they want. I'm not sure if we did that for android too though.

    The problem is that SDFs use considerably more GPU resources, so on a TV I'm not sure if you'll have the extra horsepower to use it. We should make sure we have a flag for android, then you can try it out.

  4. added
    P1High-priority issues at the top of the work list
    on Jun 15, 2026
  5. flutter-triage-bot commented on Oct 22, 2026

    @flutter-triage-bot

    This issue is marked P1 but has had no recent status updates.

    The P1 label indicates high-priority issues that are at the top of the work list. This is the highest priority level a bug can have if it isn't affecting a top-tier customer or breaking the build. Bugs marked P1 are generally actively being worked on unless the assignee is dealing with a P0 bug (or another P1 bug). Issues at this level should be resolved in a matter of months and should have monthly updates on GitHub.

    Please consider where this bug really falls in our current priorities, and label it or assign it accordingly. This allows people to have a clearer picture of what work is actually planned. Thanks!

  6. ts-andrejmatos commented on Nov 4, 2026

    @ts-andrejmatos
    Author

    Thank you for you answer, I somehow missed it and the recent update brought me back here. Because of this issue and some other reasons the project I was experimenting with is on hold and we (at least for now) stopped looking at Flutter as an option for Android TV. I am still happy to help and also test this if the flag is added to Android.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1High-priority issues at the top of the work listhas reproducible stepsThe issue has been confirmed reproducible and is ready to work onplatform-androidAndroid applications specificallyteam-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