Repository navigation
Map six more SF Symbols to Material icons - #525
Merged
Merged
Conversation
bubble, message, safari, exclamationmark.bubble, square.and.arrow.down and ellipsis.bubble fell through to the unknown-symbol warning triangle. Each maps to the outlined Material icon closest in shape, from material-icons-extended.
4 of 5 tasks
Ceylo
added a commit
to Ceylo/skip-ui
that referenced
this pull request
Sep 13, 2026
The upstream PR maps by shape rather than by what the app means: safari is Explore, exclamationmark.bubble Feedback, ellipsis.bubble Sms and square.and.arrow.down SaveAlt. The glyph comments are corrected too. text.badge.star keeps its fork-only Info mapping. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Rwwd38mavAQybSVuJsFMXp
Ceylo
marked this pull request as ready for review
September 13, 2026 21:10
7 tasks done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
On Android,
Image(systemName:)drawsIcons.Default.Warningforbubble,message,safari,exclamationmark.bubble,square.and.arrow.downandellipsis.bubble, and logs "Unable to find system image". This PR maps each one to the outlined Material icon closest in shape. They all come frommaterial-icons-extended, which SkipUI already depends on. Same shape as #476: entries incomposeSymbolName(for:)andcomposeImageVector(named:), plus the glyph comment.bubbleIcons.Outlined.ChatBubbleOutlinemessageIcons.Outlined.ChatsafariIcons.Outlined.Exploreexclamationmark.bubbleIcons.Outlined.Feedbacksquare.and.arrow.downIcons.Outlined.SaveAltellipsis.bubbleIcons.Outlined.SmsThe icons were picked by shape, not by meaning, as #200 asks. Two are approximate. Material has no oval bubble, so
messagegetsChat: its lines keep it distinct frombubble.SaveAltwas chosen overFileDownloadbecause its tray has sides, like the SF box.Before / after
Showcase → Symbol. The six rows are added to the playground by skiptools/skipapp-showcase#123. Rows cropped from Fuse screenshots; Lite is pixel-identical.
Side effects
.foregroundStyle/.tint/.fontrows and the Symbol Variants section. All are pixel-identical. The first and last rows of the page were not captured by the script.bubble.fill,message.fill, etc. still fall back to the warning triangle, as the other outlined-only entries do today.#if SKIPblock.Verified
swift test: 93 Swift tests, 36 skipped, 0 failures. JUnit: 92 tests, 87 passed, 5 skipped, 0 failed.SKIP_DEPENDENCY_ROOT), in Lite and Fuse, and run on an API 37 Android emulator, before (skip-uimain) and after. Also run on an iPhone 17 simulator (iOS 26.5) as the reference.starmaps toIcons.Outlined.Starwhich, despite the name, is not outlined #148 trap).square.and.arrow.up,hand.thumbsupandtrash.Skip Pull Request Checklist:
swift testWritten with Claude Code: the mapping and the playground rows. Every claim above comes from a run: the Showcase on an emulator (Lite and Fuse) before and after, with a per-row pixel comparison of the whole playground, and on a simulator for the SF originals.