From 5495162e0b4bcf2a21f6637c41eb1371178646fa Mon Sep 17 00:00:00 2001
From: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
Date: Mon, 3 Aug 2026 14:15:04 +0400
Subject: [PATCH] fixes
---
apps/ios/Shared/Views/Badges/BadgesPayView.swift | 7 ++++---
.../Shared/Views/Badges/BadgesSupportSimplexView.swift | 1 -
apps/ios/Shared/Views/Badges/BadgesYourLevelView.swift | 9 +--------
apps/ios/Shared/Views/ChatList/ChatListView.swift | 1 +
apps/ios/Shared/Views/Helpers/NameBadge.swift | 2 +-
apps/ios/Shared/Views/UserSettings/SettingsView.swift | 2 +-
.../chat/simplex/common/views/badges/BadgesPayView.kt | 2 +-
.../simplex/common/views/badges/BadgesYourLevelView.kt | 8 +-------
.../chat/simplex/common/views/helpers/ChatInfoImage.kt | 2 +-
.../common/src/commonMain/resources/MR/base/strings.xml | 4 ++--
10 files changed, 13 insertions(+), 25 deletions(-)
diff --git a/apps/ios/Shared/Views/Badges/BadgesPayView.swift b/apps/ios/Shared/Views/Badges/BadgesPayView.swift
index 4593820400..037a0627ea 100644
--- a/apps/ios/Shared/Views/Badges/BadgesPayView.swift
+++ b/apps/ios/Shared/Views/Badges/BadgesPayView.swift
@@ -126,11 +126,12 @@ struct BadgesPayView: View {
.buttonStyle(OnboardingButtonStyle(isDisabled: false))
}
- // TODO [badges] source the actual renewal/end date from the purchase state machine when wired.
private var billingFooter: LocalizedStringKey {
+ // TODO [badges] source the actual date from the purchase state machine when wired.
+ let date = "July 22, 2026"
switch selectedPeriod {
- case .subscribe: "Renews on July 22, 2026. Cancel anytime."
- case .oneMonth: "Ends on August 22, 2026."
+ case .subscribe: return "Renews on \(date). Cancel anytime."
+ case .oneMonth: return "Ends on \(date)."
}
}
}
diff --git a/apps/ios/Shared/Views/Badges/BadgesSupportSimplexView.swift b/apps/ios/Shared/Views/Badges/BadgesSupportSimplexView.swift
index 97af366c47..6b0d7d4334 100644
--- a/apps/ios/Shared/Views/Badges/BadgesSupportSimplexView.swift
+++ b/apps/ios/Shared/Views/Badges/BadgesSupportSimplexView.swift
@@ -64,7 +64,6 @@ struct BadgesSupportSimplexView: View {
.frame(height: g.size.height)
}
.frame(maxHeight: .infinity)
- .modifier(ThemedBackground())
.navigationBarTitleDisplayMode(.inline)
}
diff --git a/apps/ios/Shared/Views/Badges/BadgesYourLevelView.swift b/apps/ios/Shared/Views/Badges/BadgesYourLevelView.swift
index 0197d60e7b..a33b92616c 100644
--- a/apps/ios/Shared/Views/Badges/BadgesYourLevelView.swift
+++ b/apps/ios/Shared/Views/Badges/BadgesYourLevelView.swift
@@ -66,13 +66,6 @@ enum BadgeLevel: String, CaseIterable, Identifiable {
}
}
- var badgeAsset: String {
- switch self {
- case .supporter: "badge-supporter"
- case .legend: "badge-legend"
- }
- }
-
var badgeType: BadgeType {
switch self {
case .supporter: .supporter
@@ -138,7 +131,7 @@ struct BadgesYourLevelView: View {
selectedLevel = level
} label: {
VStack(spacing: 10) {
- Image(level.badgeAsset)
+ Image(badgeImageName(level.badgeType))
.resizable()
.scaledToFit()
.frame(width: 60, height: 60)
diff --git a/apps/ios/Shared/Views/ChatList/ChatListView.swift b/apps/ios/Shared/Views/ChatList/ChatListView.swift
index 256b2a9787..749cb55b39 100644
--- a/apps/ios/Shared/Views/ChatList/ChatListView.swift
+++ b/apps/ios/Shared/Views/ChatList/ChatListView.swift
@@ -216,6 +216,7 @@ struct ChatListView: View {
.appSheet(isPresented: $showBadgesSheet) {
NavigationView {
BadgesSupportSimplexView(showsAsSheet: true)
+ .modifier(ThemedBackground())
}
}
.onChange(of: activeUserPickerSheet) {
diff --git a/apps/ios/Shared/Views/Helpers/NameBadge.swift b/apps/ios/Shared/Views/Helpers/NameBadge.swift
index 67f6d6d6b2..11a4dafd2f 100644
--- a/apps/ios/Shared/Views/Helpers/NameBadge.swift
+++ b/apps/ios/Shared/Views/Helpers/NameBadge.swift
@@ -95,7 +95,7 @@ struct NameBadge: View {
}
}
-private func badgeImageName(_ t: BadgeType) -> String {
+func badgeImageName(_ t: BadgeType) -> String {
switch t {
case .legend: "badge-legend"
case .investor: "badge-investor"
diff --git a/apps/ios/Shared/Views/UserSettings/SettingsView.swift b/apps/ios/Shared/Views/UserSettings/SettingsView.swift
index cc75fd1fad..012142d9ba 100644
--- a/apps/ios/Shared/Views/UserSettings/SettingsView.swift
+++ b/apps/ios/Shared/Views/UserSettings/SettingsView.swift
@@ -393,7 +393,7 @@ struct SettingsView: View {
NavigationLink {
VersionView()
.navigationBarTitle("App version")
- .modifier(ThemedBackground())
+ .modifier(ThemedBackground(grouped: true))
} label: {
Text(verbatim: "v\(appVersion ?? "?")")
}
diff --git a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/badges/BadgesPayView.kt b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/badges/BadgesPayView.kt
index 7392c193f9..cb5e5600ec 100644
--- a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/badges/BadgesPayView.kt
+++ b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/badges/BadgesPayView.kt
@@ -96,7 +96,7 @@ fun BadgesPayView(level: BadgeLevel) {
modifier = Modifier.padding(top = 7.5.dp, bottom = 7.5.dp).clip(CircleShape)
) {
Text(
- stringResource(billingFooter(selectedPeriod)),
+ stringResource(billingFooter(selectedPeriod)).format("July 22, 2026"),
Modifier.padding(vertical = 5.dp),
style = MaterialTheme.typography.body2,
color = MaterialTheme.colors.secondary,
diff --git a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/badges/BadgesYourLevelView.kt b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/badges/BadgesYourLevelView.kt
index b0ab135f90..f1fba5920f 100644
--- a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/badges/BadgesYourLevelView.kt
+++ b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/badges/BadgesYourLevelView.kt
@@ -71,12 +71,6 @@ enum class BadgeLevel {
Legend -> MR.strings.badges_level_legend_tagline
}
- val badgeAsset: dev.icerock.moko.resources.ImageResource
- get() = when (this) {
- Supporter -> MR.images.badge_supporter
- Legend -> MR.images.badge_legend
- }
-
val badgeType: BadgeType
get() = when (this) {
Supporter -> BadgeType.Supporter
@@ -157,7 +151,7 @@ private fun LevelCard(level: BadgeLevel, selectedLevel: BadgeLevel, modifier: Mo
verticalArrangement = Arrangement.spacedBy(10.dp)
) {
Image(
- painterResource(level.badgeAsset),
+ painterResource(badgeImage(level.badgeType)),
contentDescription = null,
contentScale = ContentScale.Fit,
modifier = Modifier.size(60.dp)
diff --git a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/helpers/ChatInfoImage.kt b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/helpers/ChatInfoImage.kt
index d2ee1db09c..567e575bbd 100644
--- a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/helpers/ChatInfoImage.kt
+++ b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/helpers/ChatInfoImage.kt
@@ -245,7 +245,7 @@ fun showBadgeInfoAlert(name: String, badge: LocalBadge, uriHandler: UriHandler)
}
}
-private fun badgeImage(t: BadgeType): ImageResource = when (t) {
+fun badgeImage(t: BadgeType): ImageResource = when (t) {
is BadgeType.Legend -> MR.images.badge_legend
is BadgeType.Investor -> MR.images.badge_investor
else -> MR.images.badge_supporter // Supporter + Unknown
diff --git a/apps/multiplatform/common/src/commonMain/resources/MR/base/strings.xml b/apps/multiplatform/common/src/commonMain/resources/MR/base/strings.xml
index cd2bae21a4..78be943092 100644
--- a/apps/multiplatform/common/src/commonMain/resources/MR/base/strings.xml
+++ b/apps/multiplatform/common/src/commonMain/resources/MR/base/strings.xml
@@ -3214,8 +3214,8 @@
Optional profile badge\nand 5GB files
1 month
Subscribe
- Renews on July 22, 2026. Cancel anytime.
- Ends on August 22, 2026.
+ Renews on %1$s. Cancel anytime.
+ Ends on %1$s.
Your level
Support SimpleX
SimpleX doesn\'t sell ads or data. It\'s funded by its users and by investors who share the mission. You can support the project and show a badge on your profile.