diff --git a/DynamicIsland/Localizable.xcstrings b/DynamicIsland/Localizable.xcstrings index 10a426a..25c57b3 100644 --- a/DynamicIsland/Localizable.xcstrings +++ b/DynamicIsland/Localizable.xcstrings @@ -10992,6 +10992,10 @@ }, "Lock Screen Integration" : { + }, + "Lock Screen Liquid Glass" : { + "comment" : "The title of the music panel on the lock screen.", + "isCommentAutoGenerated" : true }, "Lock screen panel preview" : { "comment" : "A description of the content displayed in the lock screen panel.", diff --git a/DynamicIsland/components/LockScreen/LockScreenMusicPanel.swift b/DynamicIsland/components/LockScreen/LockScreenMusicPanel.swift index 374a9df..f14e692 100644 --- a/DynamicIsland/components/LockScreen/LockScreenMusicPanel.swift +++ b/DynamicIsland/components/LockScreen/LockScreenMusicPanel.swift @@ -715,7 +715,7 @@ struct LockScreenMusicPanel: View { @ViewBuilder private var liquidPanelBackdrop: some View { if #available(macOS 26.0, *) { - clearLiquidGlassSurface(cornerRadius: panelCornerRadius) + GlassTextBackdrop(cornerRadius: panelCornerRadius) .frame(maxWidth: .infinity, maxHeight: .infinity) .allowsHitTesting(false) .accessibilityHidden(true) @@ -950,3 +950,25 @@ private struct PanelControlButton: View { case counterClockwise } } + +@available(macOS 26.0, *) +private struct GlassTextBackdrop: View { + let cornerRadius: CGFloat + + var body: some View { + GeometryReader { proxy in + let dynamicFontSize = max(min(proxy.size.width, proxy.size.height) / 8, 42) + + Text("Lock Screen Liquid Glass") + .font(.system(size: dynamicFontSize, weight: .semibold, design: .rounded)) + .foregroundStyle(Color.clear) + .frame(width: proxy.size.width, height: proxy.size.height) + .glassEffect( + .clear.interactive(), + in: .rect(cornerRadius: cornerRadius) + ) + } + .allowsHitTesting(false) + .accessibilityHidden(true) + } +}