style(ui): adopt Liquid Glass on opaque controls
All checks were successful
CI / build-and-deploy (push) Successful in 14s

Swap hardcoded systemGray/Color.blue pill and button fills for the iOS 26
Liquid Glass APIs so controls read native under the new design system:
- BookmarkRow tag chips: glassEffect in a GlassEffectContainer
- Podcast speed button: glassEffect capsule
- Podcast retry + Onboarding Connect: glassProminent button style

Onboarding text-field fills left as systemGray6 (standard adaptive field
fill; glass behind editable text hurts legibility).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Krishna Kumar
2026-06-24 13:10:23 -05:00
parent 96ea5fe6f6
commit 64a944ab10
3 changed files with 16 additions and 19 deletions

View File

@@ -75,6 +75,7 @@ struct BookmarkRow: View {
if !effectiveTags.isEmpty { if !effectiveTags.isEmpty {
ScrollView(.horizontal, showsIndicators: false) { ScrollView(.horizontal, showsIndicators: false) {
GlassEffectContainer(spacing: 6) {
HStack(spacing: 6) { HStack(spacing: 6) {
ForEach(effectiveTags, id: \.self) { tag in ForEach(effectiveTags, id: \.self) { tag in
Text(tag) Text(tag)
@@ -82,8 +83,8 @@ struct BookmarkRow: View {
.foregroundStyle(.secondary) .foregroundStyle(.secondary)
.padding(.horizontal, 8) .padding(.horizontal, 8)
.padding(.vertical, 3) .padding(.vertical, 3)
.background(Color(.systemGray6)) .glassEffect(in: Capsule())
.clipShape(Capsule()) }
} }
} }
} }

View File

@@ -89,10 +89,9 @@ struct OnboardingView: View {
} }
.frame(maxWidth: .infinity) .frame(maxWidth: .infinity)
.frame(height: 52) .frame(height: 52)
.background(canConnect ? Color.primary : Color(.systemGray4))
.foregroundStyle(canConnect ? Color(UIColor.systemBackground) : Color(.systemGray2))
.clipShape(RoundedRectangle(cornerRadius: 14))
} }
.buttonStyle(.glassProminent)
.buttonBorderShape(.roundedRectangle(radius: 14))
.disabled(!canConnect || isConnecting) .disabled(!canConnect || isConnecting)
.padding(.horizontal, 24) .padding(.horizontal, 24)
.padding(.top, 24) .padding(.top, 24)

View File

@@ -464,8 +464,7 @@ struct PodcastPlayerView: View {
.foregroundStyle(.secondary) .foregroundStyle(.secondary)
.padding(.horizontal, 14) .padding(.horizontal, 14)
.padding(.vertical, 7) .padding(.vertical, 7)
.background(Color(.systemGray5)) .glassEffect(in: Capsule())
.clipShape(Capsule())
} }
if let url = URL(string: articleUrl) { if let url = URL(string: articleUrl) {
@@ -494,12 +493,10 @@ struct PodcastPlayerView: View {
} label: { } label: {
Label("Retry", systemImage: "arrow.clockwise") Label("Retry", systemImage: "arrow.clockwise")
.font(.system(size: 15, weight: .semibold)) .font(.system(size: 15, weight: .semibold))
.foregroundStyle(.white)
.padding(.horizontal, 24)
.padding(.vertical, 10)
.background(Color.blue)
.clipShape(Capsule())
} }
.buttonStyle(.glassProminent)
.tint(.blue)
.buttonBorderShape(.capsule)
.padding(.top, 4) .padding(.top, 4)
} }
} }