fix: use SF Symbol in logo mark, bold kisani. wordmark
SF Symbol 'externaldrive.fill' renders reliably vs sparse PNG. White icon on UGREEN green (#1FA462) background — crisp at all sizes. kisani. weight: medium -> bold on login and connect screens. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -85,12 +85,9 @@ struct BackupView: View {
|
|||||||
RoundedRectangle(cornerRadius: 6, style: .continuous)
|
RoundedRectangle(cornerRadius: 6, style: .continuous)
|
||||||
.fill(Color(red: 0.12, green: 0.64, blue: 0.38))
|
.fill(Color(red: 0.12, green: 0.64, blue: 0.38))
|
||||||
.frame(width: 22, height: 22)
|
.frame(width: 22, height: 22)
|
||||||
Image("ugreen_logo")
|
Image(systemName: "externaldrive.fill")
|
||||||
.resizable()
|
.font(.system(size: 10, weight: .medium))
|
||||||
.renderingMode(.template)
|
.foregroundStyle(.white.opacity(0.92))
|
||||||
.scaledToFit()
|
|
||||||
.frame(width: 15, height: 15)
|
|
||||||
.foregroundStyle(.white)
|
|
||||||
}
|
}
|
||||||
Text("kisani.")
|
Text("kisani.")
|
||||||
.font(.system(size: 13, weight: .medium, design: .monospaced))
|
.font(.system(size: 13, weight: .medium, design: .monospaced))
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ struct ConnectView: View {
|
|||||||
VStack(spacing: 12) {
|
VStack(spacing: 12) {
|
||||||
// "kisani." wordmark
|
// "kisani." wordmark
|
||||||
Text("kisani.")
|
Text("kisani.")
|
||||||
.font(.system(size: 13, weight: .medium, design: .monospaced))
|
.font(.system(size: 13, weight: .bold, design: .monospaced))
|
||||||
.foregroundStyle(AppTheme.inkTertiary)
|
.foregroundStyle(AppTheme.inkTertiary)
|
||||||
.kerning(1.2)
|
.kerning(1.2)
|
||||||
.padding(.top, 44)
|
.padding(.top, 44)
|
||||||
@@ -29,12 +29,9 @@ struct ConnectView: View {
|
|||||||
.fill(Color(red: 0.12, green: 0.64, blue: 0.38))
|
.fill(Color(red: 0.12, green: 0.64, blue: 0.38))
|
||||||
.frame(width: 72, height: 72)
|
.frame(width: 72, height: 72)
|
||||||
|
|
||||||
Image("ugreen_logo")
|
Image(systemName: "externaldrive.fill")
|
||||||
.resizable()
|
.font(.system(size: 26, weight: .medium))
|
||||||
.renderingMode(.template)
|
.foregroundStyle(.white.opacity(0.92))
|
||||||
.scaledToFit()
|
|
||||||
.frame(width: 50, height: 50)
|
|
||||||
.foregroundStyle(.white)
|
|
||||||
}
|
}
|
||||||
.shadow(color: Color(red: 0.12, green: 0.64, blue: 0.38).opacity(0.3),
|
.shadow(color: Color(red: 0.12, green: 0.64, blue: 0.38).opacity(0.3),
|
||||||
radius: 12, x: 0, y: 4)
|
radius: 12, x: 0, y: 4)
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ struct LoginView: View {
|
|||||||
VStack(spacing: 16) {
|
VStack(spacing: 16) {
|
||||||
// "kisani." wordmark
|
// "kisani." wordmark
|
||||||
Text("kisani.")
|
Text("kisani.")
|
||||||
.font(.system(size: 13, weight: .medium, design: .monospaced))
|
.font(.system(size: 13, weight: .bold, design: .monospaced))
|
||||||
.foregroundStyle(AppTheme.inkTertiary)
|
.foregroundStyle(AppTheme.inkTertiary)
|
||||||
.kerning(1.2)
|
.kerning(1.2)
|
||||||
.opacity(appeared ? 1 : 0)
|
.opacity(appeared ? 1 : 0)
|
||||||
@@ -118,15 +118,12 @@ struct LoginView: View {
|
|||||||
.fill(Color(red: 0.12, green: 0.64, blue: 0.38))
|
.fill(Color(red: 0.12, green: 0.64, blue: 0.38))
|
||||||
.frame(width: 90, height: 90)
|
.frame(width: 90, height: 90)
|
||||||
|
|
||||||
// Logo rendered white on green
|
// NAS icon — white on green
|
||||||
Image("ugreen_logo")
|
Image(systemName: "externaldrive.fill")
|
||||||
.resizable()
|
.font(.system(size: 32, weight: .medium))
|
||||||
.renderingMode(.template)
|
.foregroundStyle(.white.opacity(0.92))
|
||||||
.scaledToFit()
|
|
||||||
.frame(width: 64, height: 64)
|
|
||||||
.foregroundStyle(.white)
|
|
||||||
}
|
}
|
||||||
.shadow(color: Color(red: 0.12, green: 0.64, blue: 0.38).opacity(0.35),
|
.shadow(color: Color(red: 0.12, green: 0.64, blue: 0.38).opacity(0.4),
|
||||||
radius: 16, x: 0, y: 6)
|
radius: 16, x: 0, y: 6)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user