skiptools / skiptools/skip-ui

Label Icons display incorrect color within .borderedProminent Buttons

Open
#293 1 comment 0 reactions 1 assignee View on GitHub

@aabewhite is already working on this.

Since Jan 9, 2026.

appearance bug compose
Dominant language
Swift
Stars
330
Forks
76
Avg merge
3h 6m
Merged PRs (30d)
1

Description

In Android, when displaying a Button with the style of .borderedProminent, and supplying a Label, the icon displays as the Primary colour, which is a dark colour, while the text displays white. In iOS, the Icon matches the white colour of the Button. I am thinking that there is somewhere in SkipUI where the Color "primary" is accidentally being set instead of a system color that would be aware of contrast and light/dark mode settings.

Button(action: {
    // redacted
}, label: {
    Label("Arrive", systemImage: "person.badge.shield.checkmark.fill")
        .frame(minWidth: 0, maxWidth: .infinity, minHeight: 30, maxHeight: 30)
})
.buttonStyle(.borderedProminent)
.tint(.teal)
Android Screenshot
Image
iOS Screenshot
Image

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.