Skip to content

[CupertinoIcons] move the font generation script and the codepoint map into the cupertino_icons repo/package #148075

Open

Description

@LongCatIsLooong

The contents of the cupertino_icons generation repo should be moved to flutter/packages

Per the comments here.

The generated dart file should be distributed as part of the cupertino_icons package

Currently the generated dart file is part of the cupertino library instead of the cupertino_icons package. With the font and the codepoint map living in different packages, there doesn't seem to be a way to properly version the dart codepoint binding, or to test it. Example: I would like to fix an incorrectly mapped codepoint in cupertino_icons < 1.08 but since the dart file lives in cupertino it would break code that's using older versions (https://github.com/flutter/flutter/pull/146806/files#diff-6622a57feb8a0b6d1674c2cad83821872010e3c8005be91079c3d34d466a0f91)

This could be a breaking change but not doing it is kinda bad too because we can't fix incorrect codepoints without breaking apps that are using older versions of cupertino_icons.

Activity

  1. LongCatIsLooong commented on May 9, 2024

    @LongCatIsLooong
    ContributorAuthor

    Also consider removing the ligature table from the ttf and using codepoints in dartdoc, since users should be using the dart names instead of strings to refer to the icons, and the ligature names are not consistent with the dart names. This is relatively low priority.

  2. added
    in triagePresently being triaged by the triage team
    frameworkflutter/packages/flutter repository. See also f: labels.
    team-designOwned by Design Languages team
    toolAffects the "flutter" command-line tool. See also t: labels.
    and removed
    in triagePresently being triaged by the triage team
    on May 10, 2024
  3. added
    P2Important issues not at the top of the work list
    triaged-designTriaged by Design Languages team
    fyi-iosFor the attention of iOS platform team
    on May 15, 2024
  4. self-assigned this
    on Jun 19, 2024
  5. 10 remaining items

  6. added
    ⏳Bot is counting down the days until it unassigns the issue
    on Oct 30, 2024
  7. flutter-triage-bot commented on Oct 30, 2024

    @flutter-triage-bot

    This issue is assigned to @victorsanni but has had no recent status updates. Please consider unassigning this issue if it is not going to be addressed in the near future. This allows people to have a clearer picture of what work is actually planned. Thanks!

  8. flutter-triage-bot commented on Jan 15, 2025

    @flutter-triage-bot

    This issue was assigned to @victorsanni but has had no status updates in a long time. To remove any ambiguity about whether the issue is being worked on, the assignee was removed.

  9. removed
    ⏳Bot is counting down the days until it unassigns the issue
    on Jan 15, 2025
  10. LongCatIsLooong commented on May 13, 2026

    @LongCatIsLooong
    ContributorAuthor

    It will be difficult for the CupertinoIcons package to keep up with new iOS icons updates (even from a pure technical perspective). Newer versions of SFSymbol have features like "Magical Replace" or "Variable Draw". Even if it's possible to replicate all these features in a regular open type variable font, it is going to require heavy investment (implementation and fidelity, and keeping up with new SFSymbol releases). The approach in this design doc seems much more sustainable.

  11. added
    packageflutter/packages repository. See also p: labels.
    and removed
    frameworkflutter/packages/flutter repository. See also f: labels.
    on Aug 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

P2Important issues not at the top of the work listp: cupertino_iconsCupertino icon setp: cupertino_uicupertino_ui package in flutter/packagespackageflutter/packages repository. See also p: labels.team-designOwned by Design Languages teamtoolAffects the "flutter" command-line tool. See also t: labels.triaged-designTriaged by Design Languages team

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions