From 314574fdace1818ad1804ff13b891eb8a8836c6a Mon Sep 17 00:00:00 2001 From: Eduardo Toledo Date: Fri, 13 Jun 2025 15:39:58 +0200 Subject: [PATCH 1/7] Remove email for external access token --- Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift b/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift index b7a6b2ec..c2241f08 100644 --- a/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift +++ b/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift @@ -236,8 +236,10 @@ struct QuickEditor: View { @ViewBuilder func profileCardHeaderView() -> some View { if !shouldHideProfileCardHeader { - EmailText(email: model.email) - .accumulateIntrinsicHeight() + if fetchedToken != nil { + EmailText(email: model.email) + .accumulateIntrinsicHeight() + } profileView() .accumulateIntrinsicHeight() } else { From 25695535e259cfb70a27121672ffe259e4813081 Mon Sep 17 00:00:00 2001 From: Eduardo Toledo Date: Fri, 13 Jun 2025 15:46:06 +0200 Subject: [PATCH 2/7] Change "View Profile" button icon from arrow to external link symbol --- .../Contents.json | 16 ++ .../square.and.arrow.top.right.svg | 151 ++++++++++++++++++ .../Resources/en.lproj/Localizable.strings | 3 + .../AvatarPickerProfileView.swift | 13 +- 4 files changed, 179 insertions(+), 4 deletions(-) create mode 100644 Sources/GravatarUI/Resources/Media.xcassets/square.and.arrow.top.right.symbolset/Contents.json create mode 100644 Sources/GravatarUI/Resources/Media.xcassets/square.and.arrow.top.right.symbolset/square.and.arrow.top.right.svg diff --git a/Sources/GravatarUI/Resources/Media.xcassets/square.and.arrow.top.right.symbolset/Contents.json b/Sources/GravatarUI/Resources/Media.xcassets/square.and.arrow.top.right.symbolset/Contents.json new file mode 100644 index 00000000..083f7efb --- /dev/null +++ b/Sources/GravatarUI/Resources/Media.xcassets/square.and.arrow.top.right.symbolset/Contents.json @@ -0,0 +1,16 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "localizable" : true + }, + "symbols" : [ + { + "filename" : "square.and.arrow.top.right.svg", + "idiom" : "universal", + "language-direction" : "left-to-right" + } + ] +} diff --git a/Sources/GravatarUI/Resources/Media.xcassets/square.and.arrow.top.right.symbolset/square.and.arrow.top.right.svg b/Sources/GravatarUI/Resources/Media.xcassets/square.and.arrow.top.right.symbolset/square.and.arrow.top.right.svg new file mode 100644 index 00000000..bce0dcfd --- /dev/null +++ b/Sources/GravatarUI/Resources/Media.xcassets/square.and.arrow.top.right.symbolset/square.and.arrow.top.right.svg @@ -0,0 +1,151 @@ + + + square.and.arrow.up + + + + + + + Weight/Scale Variations + + + Ultralight + + + Thin + + + Light + + + Regular + + + Medium + + + Semibold + + + Bold + + + Heavy + + + Black + + + + + + + + + + + + + Design Variations + + + Symbols are supported in up to nine weights and three scales. + + + For optimal layout with text and other symbols, vertically align + + + symbols with the adjacent text. + + + + + + + + Margins + + + Leading and trailing margins on the left and right side of each symbol + + + can be adjusted by modifying the x-location of the margin guidelines. + + + Modifications are automatically applied proportionally to all + + + scales and weights. + + + + + + Exporting + + + Symbols should be outlined when exporting to ensure the + + + design is preserved when submitting to Xcode. + + + Template v.6.0 + + + Requires Xcode 16 or greater + + + Generated from square.and.arrow.up + + + Typeset at 100.0 points + + + Small + + + Medium + + + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Sources/GravatarUI/Resources/en.lproj/Localizable.strings b/Sources/GravatarUI/Resources/en.lproj/Localizable.strings index 604e974d..d85674c1 100644 --- a/Sources/GravatarUI/Resources/en.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/en.lproj/Localizable.strings @@ -124,6 +124,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "View profile →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "View profile"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "Your Name"; diff --git a/Sources/GravatarUI/SwiftUI/AvatarPicker/AvatarPickerProfileView.swift b/Sources/GravatarUI/SwiftUI/AvatarPicker/AvatarPickerProfileView.swift index 05cbb23d..a078ebc3 100644 --- a/Sources/GravatarUI/SwiftUI/AvatarPicker/AvatarPickerProfileView.swift +++ b/Sources/GravatarUI/SwiftUI/AvatarPicker/AvatarPickerProfileView.swift @@ -61,8 +61,13 @@ struct AvatarPickerProfileView: View where AccessoryView: View { if let details = model.profileDetails { secondaryText(text: details) } - Button(Localized.viewProfileButtonTitle) { + Button { viewProfileAction?() + } label: { + HStack(spacing: .DS.Padding.half) { + Text(Localized.viewProfileButtonTitle) + Image("square.and.arrow.top.right", bundle: .module) + } } .font(.footnote) .foregroundColor(Color(UIColor.label)) @@ -155,9 +160,9 @@ private enum Constants { private enum Localized { static let viewProfileButtonTitle = SDKLocalizedString( - "AvatarPickerProfile.Button.ViewProfile.title", - value: "View profile →", - comment: "Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view" + "Profile.Button.ViewProfile.title", + value: "View profile", + comment: "Title of a button that will take you to your Gravatar profile" ) static let namePlaceholder = SDKLocalizedString( "AvatarPickerProfile.Name.placeholder", From c7794ddf0e34a80e7a8685d2c1e424d67c9266d9 Mon Sep 17 00:00:00 2001 From: Eduardo Toledo Date: Fri, 13 Jun 2025 15:46:19 +0200 Subject: [PATCH 3/7] Update localized strings --- Sources/GravatarUI/Resources/ar.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/de.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/es.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/fr.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/he.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/id.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/it.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/ja.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/ko.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/nl.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/pt-BR.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/ru.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/sv.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/tr.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/zh-Hans.lproj/Localizable.strings | 3 +++ Sources/GravatarUI/Resources/zh-Hant.lproj/Localizable.strings | 3 +++ 16 files changed, 48 insertions(+) diff --git a/Sources/GravatarUI/Resources/ar.lproj/Localizable.strings b/Sources/GravatarUI/Resources/ar.lproj/Localizable.strings index 3d321021..e4e48a95 100644 --- a/Sources/GravatarUI/Resources/ar.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/ar.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "عرض الملف الشخصي ←"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "عرض الملف الشخصي"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "اسمك"; diff --git a/Sources/GravatarUI/Resources/de.lproj/Localizable.strings b/Sources/GravatarUI/Resources/de.lproj/Localizable.strings index 6550f1fa..1914b1eb 100644 --- a/Sources/GravatarUI/Resources/de.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/de.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "Profil anzeigen →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "Profil anzeigen"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "Dein Name"; diff --git a/Sources/GravatarUI/Resources/es.lproj/Localizable.strings b/Sources/GravatarUI/Resources/es.lproj/Localizable.strings index 337fea42..38bf99e0 100644 --- a/Sources/GravatarUI/Resources/es.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/es.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "Ver perfil →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "Ver perfil"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "Tu nombre"; diff --git a/Sources/GravatarUI/Resources/fr.lproj/Localizable.strings b/Sources/GravatarUI/Resources/fr.lproj/Localizable.strings index 2bb91b56..b2478cee 100644 --- a/Sources/GravatarUI/Resources/fr.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/fr.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "Afficher le profil →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "Afficher le profil"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "Votre Nom"; diff --git a/Sources/GravatarUI/Resources/he.lproj/Localizable.strings b/Sources/GravatarUI/Resources/he.lproj/Localizable.strings index ab4279f4..5947af64 100644 --- a/Sources/GravatarUI/Resources/he.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/he.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "להצגת הפרופיל ←"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "להצגת הפרופיל"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "השם שלך"; diff --git a/Sources/GravatarUI/Resources/id.lproj/Localizable.strings b/Sources/GravatarUI/Resources/id.lproj/Localizable.strings index 058099f2..a0131be5 100644 --- a/Sources/GravatarUI/Resources/id.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/id.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "Lihat profil →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "Lihat profil"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "Nama Anda"; diff --git a/Sources/GravatarUI/Resources/it.lproj/Localizable.strings b/Sources/GravatarUI/Resources/it.lproj/Localizable.strings index e89c74ca..e7ff10c4 100644 --- a/Sources/GravatarUI/Resources/it.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/it.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "Visualizza profilo →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "Visualizza profilo"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "Il tuo nome"; diff --git a/Sources/GravatarUI/Resources/ja.lproj/Localizable.strings b/Sources/GravatarUI/Resources/ja.lproj/Localizable.strings index b587fd38..9c8fbed4 100644 --- a/Sources/GravatarUI/Resources/ja.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/ja.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "プロフィールを表示→"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "プロフィールを表示"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "あなたの名前"; diff --git a/Sources/GravatarUI/Resources/ko.lproj/Localizable.strings b/Sources/GravatarUI/Resources/ko.lproj/Localizable.strings index 3f92797f..eb38904f 100644 --- a/Sources/GravatarUI/Resources/ko.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/ko.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "프로필 보기 →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "프로필 보기"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "이름"; diff --git a/Sources/GravatarUI/Resources/nl.lproj/Localizable.strings b/Sources/GravatarUI/Resources/nl.lproj/Localizable.strings index 2cc67b2d..7283a5b5 100644 --- a/Sources/GravatarUI/Resources/nl.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/nl.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "Profiel bekijken →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "Profiel bekijken"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "Je naam"; diff --git a/Sources/GravatarUI/Resources/pt-BR.lproj/Localizable.strings b/Sources/GravatarUI/Resources/pt-BR.lproj/Localizable.strings index 23df777e..e59dca2e 100644 --- a/Sources/GravatarUI/Resources/pt-BR.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/pt-BR.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "Visualizar perfil →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "Visualizar perfil"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "Seu nome"; diff --git a/Sources/GravatarUI/Resources/ru.lproj/Localizable.strings b/Sources/GravatarUI/Resources/ru.lproj/Localizable.strings index fd9e283d..62e3f9e7 100644 --- a/Sources/GravatarUI/Resources/ru.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/ru.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "Просмотреть профиль →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "Просмотреть профиль"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "Ваше имя"; diff --git a/Sources/GravatarUI/Resources/sv.lproj/Localizable.strings b/Sources/GravatarUI/Resources/sv.lproj/Localizable.strings index b2d7d8d0..ac2a2fe7 100644 --- a/Sources/GravatarUI/Resources/sv.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/sv.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "Visa profil →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "Visa profil"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "Ditt namn"; diff --git a/Sources/GravatarUI/Resources/tr.lproj/Localizable.strings b/Sources/GravatarUI/Resources/tr.lproj/Localizable.strings index 3078def7..66899960 100644 --- a/Sources/GravatarUI/Resources/tr.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/tr.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "Profili görüntüle →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "Profili görüntüle"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "İsminiz"; diff --git a/Sources/GravatarUI/Resources/zh-Hans.lproj/Localizable.strings b/Sources/GravatarUI/Resources/zh-Hans.lproj/Localizable.strings index 5fea6fc3..c975e7d1 100644 --- a/Sources/GravatarUI/Resources/zh-Hans.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/zh-Hans.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "查看个人资料 →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "查看个人资料"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "您的姓名"; diff --git a/Sources/GravatarUI/Resources/zh-Hant.lproj/Localizable.strings b/Sources/GravatarUI/Resources/zh-Hant.lproj/Localizable.strings index 30b48ff6..b27379e9 100644 --- a/Sources/GravatarUI/Resources/zh-Hant.lproj/Localizable.strings +++ b/Sources/GravatarUI/Resources/zh-Hant.lproj/Localizable.strings @@ -129,6 +129,9 @@ /* Title of a button that will take you to your Gravatar profile, with an arrow indicating that this action will cause you to leave this view */ "AvatarPickerProfile.Button.ViewProfile.title" = "檢視個人檔案 →"; +/* Title of a button that will take you to your Gravatar profile */ +"Profile.Button.ViewProfile.title" = "檢視個人檔案"; + /* Placeholder text for the name field */ "AvatarPickerProfile.Name.placeholder" = "你的姓名"; From f3df99af3f5b0666e403e97c642fa86713f4549e Mon Sep 17 00:00:00 2001 From: Eduardo Toledo Date: Fri, 13 Jun 2025 16:26:38 +0200 Subject: [PATCH 4/7] Remove Profile card for big accessibility text sizes Only with the keyboard present --- .../GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift b/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift index c2241f08..998f67d6 100644 --- a/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift +++ b/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift @@ -29,6 +29,7 @@ struct QuickEditor: View { @Environment(\.oauthSession) private var oauthSession @Environment(\.colorScheme) var colorScheme: ColorScheme @Environment(\.verticalSizeClass) var vertcalSizeClass + @Environment(\.dynamicTypeSize) var dynamicTypeSize @AppStorage("QuickEditor.startOAuthOnAppear") private var startOAuthOnAppear: Bool = false @State private var fetchedToken: String? @@ -230,7 +231,11 @@ struct QuickEditor: View { let screenHeight = UIScreen.main.bounds.height let iPhoneSE3rdGenScreenHeight: CGFloat = 667 - return (vertcalSizeClass == .compact || screenHeight <= iPhoneSE3rdGenScreenHeight) && model.isKeyboardPresented + return model.isKeyboardPresented && ( + vertcalSizeClass == .compact || + screenHeight <= iPhoneSE3rdGenScreenHeight || + dynamicTypeSize >= .accessibility3 + ) } @ViewBuilder @@ -241,6 +246,7 @@ struct QuickEditor: View { .accumulateIntrinsicHeight() } profileView() + .dynamicTypeSize(...DynamicTypeSize.xxxLarge) .accumulateIntrinsicHeight() } else { EmptyView() From 22640401683bf48b8a20c94576ce0ffe2c484a8a Mon Sep 17 00:00:00 2001 From: Eduardo Toledo Date: Fri, 13 Jun 2025 16:31:57 +0200 Subject: [PATCH 5/7] Using intrinsic height for about editor on mixed scope --- Sources/GravatarUI/SwiftUI/QEDetent.swift | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Sources/GravatarUI/SwiftUI/QEDetent.swift b/Sources/GravatarUI/SwiftUI/QEDetent.swift index 9e4d789c..cfef8dd7 100644 --- a/Sources/GravatarUI/SwiftUI/QEDetent.swift +++ b/Sources/GravatarUI/SwiftUI/QEDetent.swift @@ -54,11 +54,7 @@ enum QEDetent { case .avatarPicker: .init([.height(intrinsicHeight)]) case .aboutEditor: - if intrinsicHeight >= QEModalPresentationConstants.bottomSheetEstimatedHeight { - .init([.height(QEModalPresentationConstants.bottomSheetEstimatedHeight), .large]) - } else { - .init([.height(intrinsicHeight)]) - } + .init([.height(intrinsicHeight)]) } } case .vertical(let presentationStyle): From c0c7efdf5f4f4fda9d9b43c87ff04b28c960760b Mon Sep 17 00:00:00 2001 From: Eduardo Toledo Date: Fri, 13 Jun 2025 16:34:44 +0200 Subject: [PATCH 6/7] format --- Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift b/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift index 998f67d6..e6d181a5 100644 --- a/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift +++ b/Sources/GravatarUI/SwiftUI/ProfileEditor/QuickEditor.swift @@ -233,8 +233,8 @@ struct QuickEditor: View { return model.isKeyboardPresented && ( vertcalSizeClass == .compact || - screenHeight <= iPhoneSE3rdGenScreenHeight || - dynamicTypeSize >= .accessibility3 + screenHeight <= iPhoneSE3rdGenScreenHeight || + dynamicTypeSize >= .accessibility3 ) } From bc8e5e2c19074f445ea2a1e25b36ff77fe8d9682 Mon Sep 17 00:00:00 2001 From: Eduardo Toledo Date: Fri, 13 Jun 2025 16:52:51 +0200 Subject: [PATCH 7/7] Update snapshots --- .../AboutEditorViewTests.swift | 2 +- .../testAvatarPickerProfileView.1.png | Bin 18205 -> 18614 bytes .../testAvatarPickerProfileView.2.png | Bin 18618 -> 19042 bytes ...atarPickerProfileViewWithoutLocation.1.png | Bin 15416 -> 15834 bytes ...atarPickerProfileViewWithoutLocation.2.png | Bin 15694 -> 16067 bytes 5 files changed, 1 insertion(+), 1 deletion(-) diff --git a/Tests/GravatarUITests/AboutEditorViewTests.swift b/Tests/GravatarUITests/AboutEditorViewTests.swift index d112d11b..58a0d0fc 100644 --- a/Tests/GravatarUITests/AboutEditorViewTests.swift +++ b/Tests/GravatarUITests/AboutEditorViewTests.swift @@ -181,7 +181,7 @@ struct AboutEditorViewTests { await testModel.fetchProfile() } // Awaits for the previous task to start executing, and the view to start loading. - try await Task.sleep(nanoseconds: 10) + try await Task.sleep(nanoseconds: 20) assertSnapshots( of: view, as: [ diff --git a/Tests/GravatarUITests/__Snapshots__/AvatarPickerProfileViewTests/testAvatarPickerProfileView.1.png b/Tests/GravatarUITests/__Snapshots__/AvatarPickerProfileViewTests/testAvatarPickerProfileView.1.png index 9d7c74a2318aab255e0a5814ded75de0721aa5ac..1721f9e331ee320a550aef755a776bd0695a460d 100644 GIT binary patch delta 8710 zcmYM3bzGC}_s6#}x<-R^gF_Gy6sZX)4Fb|NT96Q>!;J68!#N~3g*?(UEn z@S8r*^Zo7L`?c#n*SS9DKA-cx(qn+N?}6o4JP7t2Wrau2cGB^^Xhu&@U;DP`uc#1n zy8$0P1OX1sjSs_YP)C7=?Zy_mi6iR@}8}Iw2 zuC~9@J`S&@C0p;TN%U8nj$Q9`i@J(veH2bZWI2zFs9FTi|@TH!FSKyc{Dy z{|vz?A}ZRRBDVFTK+8OWUH-}Xo23qQ%7X*K#kP=0nZ)y>e%Z(hE8Z?l43k8WYKv8; zMorpOoy*pz!N(@kw;1fs4|Uyox2$|Fbj5DA#>=*bN=zHgWQ;2~^gPXd9|=lbUAaVy(1mpSI=yHj=MpYu;! zFMkFQ-Uaf&=|B|cM2{s@Fpr8qNhUhdy^$CqBjB!E zY?7TJ?W-ZfC~O(k)peH+pR4k8Pj>wS%Y8OyWq6vzYdtzeV;51N*Y<>KGVS7o&P4fw zF@wuwWqiZ)fQeNNz^^n3{e<|WuZsE!h*J(uPWh78Dk?>%T2K3NXppLjrB8Ph7)={J z?i8H5+NvQ5?*_mK6sY;nlXAfD8Y4|yZF3DqFi5}5EPk(Vi3W<#URPYDq^e3Miz(L` zz-M3`#{RdFOHD(AHub&>4Kdvt&UxYBat>DoMNiPn-D&zn%z8(y(_F6~h60Je<~81a zVW-jS;6rchwu%Z`v3(z&?xU4ReNaRC^VUJxk`woFY1H2MDiL@(|b zXKz})vgp?q%r7$A?2jK68|b0FmnzGGTI$qPx-9T_jfyx&YscCQ-2TNN4CHyoNuUtN zZ{Df}+OJ|UUk(qgc+D+j+KdpGOXhtsN>-S>FZD!GGm&-7uyJ(R{L06iUX-zdK#eDVklX<_90ldm%pN z&=ZH>CL9NPd9sPWGzq5*E|`o}pk72(IglJr6Opqu+3}69Pl}>ppX9vsYS30{x;Lz5hDO30HOBkS1*|`*cr|?bJ~q5w7|elXx0>qnfa(3?F64eYLEb2tTIGROT zBR9X%N5Mk$8%_tqkB&;5Z>PF|*(PtDbf*}Ea7IVw4pGNDT(ZBF_L4H3UdE@|3OwH> zZ1uhSZSQpms+vJ`S&~Zn=T)Dfxy2o$YK1pv71f=;(jx>}D5LC#e-){zVcZk=A_xia z!zqkzfkmy^ua$!5>$M0BSAe+}UR7=+JoWEjVjlK*9F+rj5bZ9;nK}r%1Hkg^6cNMR zI3lQ8{+<5Gt=`j<@krbTvp+g1_!-4PR+VMfmvqOetx7df@XKS%$rMsX@gBS9!^8Rg z1^w&ROC3KguP#X2`1CgFg%r(k*}PSF)!%wRFP4^A-EhCZ@e+~1ehpFJw#RH7;?6bL zJ)MqYQtL8P)QtO>Ur_6`JGYQ4DVLwo}g> z^>td7d_6J1o#d|4FFfzwCL(w?|3dcEjqFkQidY}W)~pQ&hn%CGRn)dggx@;R&m}uY z{yt%F(_4tv?3?+8li(R8#OvR?K^4&jc5EEP8|-h#N~6aKA67BcCZ!Yg(^Pz?m>D+! zGn%H_Vvj_M5Eh49#y1wg#jfsQVSB$LDkWrj`Kaisl^(iX0tkk4w=%J2z-?1@Kh;9% z_ay%*-3J5;x%v5$a)4UrDM2Q`uWD4F6SD%Lxn#GGhF^FF5mybkLg)ype1#8{GAy*h zpBY*VZSW|(S9)mp*w8Ea%61f zu1mBVKLDLPnv}arGqh$?nlTRZfQknq z0J=wrV_M9Ft!p?)4J8WX2TaxO!CwFkYM!X~*Uaa$bC!#U>or4XTDBP~Me5mj=1GB3 z6zyLXPSt$nBbTtTy&EP}0zMG34Jg5#=QV9atQ>n(s$X4_GI7nt=k+E|b?}G>6CzPX zx?fgO-l_%tvz$He?k_%{>?IEA?HR*a(yKcWDGT3F(iGh~UU! zyu?nGBAi?C!9)=1mubWyv;9zUy)=m>^q<}SS-XXx0Q7SDhjJ}7a>6|@NSc6zLENO7 zQ`GinZP+76+&@YA8^SytP#5q?#vh#kdU+K}`bIa33O56FbhBr39v-3m%}P_@sEMzmGPgwJ-8lN6Fp$c%)607_)k===>iuGZM) zaozSDvME*!4SsD4QbYVbFBDi# z1@#Q;%cRGjeGS&eXc>~P{es>SbK>Dq)T9X`XLaqPef7qKjf#Lb zpkMaJr0M4R((rnS;+Y2Zj~|-593;#kLCO=Q{`fkf z=`y>NO113DzE>CS6uQ~D)i;}?U)cFY2jq6=T7;UfPK~ivU9{kA9uSu=SuAimGXr|FKk##$a_05F1Jn-34 z0HsTe`RCJA^P~kIj+pFWGD&*Jquwh@N}G!om(Iw0DfU zd|NJO_WUS6I^g*&(gd^y;eX*Mc)8G)?Y=bz3S?U7de6C8<*|d_I3&&oI8J}9a7fg{ zEKI8bHc4()Ea#g27Y7wtM_0as2BN6vtgu=n1WOUYo}rvCaW0qCr<-iPP@&tz#oMfi zer2J5d#(>;9p_| zBgKX~hc2T<@f*b$@1xa-o2xwp$g~v=(Ey&U$=(>Er98F`faFc5YdFVlwx6S_M!-o%kw_77X18SJ8 zApwBDgHKE!ws=Shy|@8`rh(kL+lzxo?PLP@-&-X?6WL^rkxrrZ!YYGT^AMV{AT@*)RW)r&3+Tvp)>bmcNi_=K3x3?#cC)|6!_6)^;bF+ zVdk^JtyT1lU#lGcD4=vks0B0RhFOkbmb9LYz9puO3;*VGvMfEKl`7i-UYx~h!`;S* z6A;U9tmUyj@aS2g_G5S@0gp4PH*~Ti0NiAJcD@L7Y%HYOw&>l`OVw3_|AP0=OB2xk09XOoe{O=l^DW%l>M97Xq2 z3SujhhA|I(`L7Gj70gwXNCS<~j!ms*w;xw~&6gT>ABE`RV(UNyAJ63Lu_DOocf~fc za!z0wE?ZRDT;}^F1$cYW=uX#+hq(V>Rh{D$?Oqe3_|&{aTiC^@zPVUUfNj$C>irgq zPW29VA4(+llnVP8RS`c(SY=EwXG^h%_^zSdTztPjYRU}8M`q#Nn>yQ`tZJ~swnpmm zpy2j|JH~GP>;(47)Gpujxd02%K?J^s-MsB1g*tinh1l62p%tyTeUI0(pyYJe$9EKb zym%I9Ldx6v?1}aZTAfE2UFQoWy$^Gdid9B64u=d1LLPxxh?hsJ>ik5%p_02#)AdVD z`1i2PMgkW*)b-@MdL&gex@~B0Lc!Aw+HU;0x=|Vqz!*G)GJ9C#`N}JSxF^23r5?HXbXLfx z0@}IZ)mJNt=HfC5GyUb{vYu9eD+=VY`s2jv!BoWCQeU^x95qj;Jkw{8PLhxPh zhslOx?e6B`=R7BLwS7+G-i90$5Y6(~>0ul$Sr8uS(5#*`63cW(XU5IoPBOXvmpgSe zb?$5Xw>Ze8lAcpJ?b}j@mw_OXb(vC_YBNQr`iT;pe)h$m9WNY~QqpybCOaP$Oib!O0!d!er|X9v64 z;V;HZyD?g!uBrE+V7Q4%nn3@@x@V1;D37*?DHVE_Ou;j6N~99Vm<_Z*xct|HcKrfl zD3J^d$uY?^CiyJHFi)ZVzRB0QXWxs>HAP)!^6D04Yy%eMqXi9jJ~bQ6GyGmCd`*Xi zFt&{jytJqwYs4vM0CHEy3I!VV(jaEso37U}8~(+e#2vMkbP@@u2#jDa!1)nZ7XXG& zR@zAOB;T|DAW&xA{h`5&3ouiXN1zqa@LjL!n@>&hpxM`sQWtFG*jAjUUfx^mw9fKr z>Av@&bxEOFx(>P+%qCLRI~S-=v!wLb%gYj;aU%d)W7jzNObfWhhWVu#&nrDEO(Pmt z0{ab4SLU<6*A@vR2)5#otN$J&v97ZG5`~t7@}+lTblN*l+K92{TrHgbO%xJo%Nv zU;P9Tp4|axtr7Mh7MqK^>0-Xd>K8B1uU2#%tM(*)sie8xQ=3{+jB8g1ASaiZfCLgG zeGPa)z_J7emh9MqApOEQG#k?H(Flhl;ZMUq2ye-U+ZdHIhK}h_)6j751R1pVS;mdG zAP`o1EM>}ol<056JU@QmEXSUZ)UZQ=;a}S$=@RYj`ahMZ7fFVVQ_l?W;fRLUv=RZ8 zs2s{yGjxIOtwK+M1bc#Gwml*>)zWaoe*c^zGu?zn{g-wBEP0V(rx~)SOcPmw-HSxCAE_0pYY)W zN9S296mM#vCQ|qf8sHi(;;}b-hwf2FeVNs$5`d#5e?{ZD@T&7ngT4Aw-hi)LpeNQT z+l%(u1PNUMqy_mNWj2W1Iyu15kjVPx$-PsGl}pB_tQZgtGU>gVxA)?9S$bN`pD`73 z8w4bVd07{Y7T6e5g!@Mwm`jG?TMZjE&1lz-Mv~q_r}Vxk`^F<%ZIHkFUXkVf+QdSe z&P!fE7zqQ%uvKV9qv2-*O57K?mNU{-$OtY-?nDF*2=yQWgm|&IaE%1wD3qGiFAHcd zkr-9^)%>mom18{~T5(gNWA{-~R&fY1UD0pX#c2F@9niqS9E)k zIt&CV{BcA`1zB~HX0h10FMmUb_X(BE@Dk&)q*b4QRK#*PZqSac0 zo20HKGcAl}a3g$3RmIhL7@7A{Cukr~`5X_s9f>&DQ!v{^-sjH|ej(Y8{2))hD)AB` z2qY+!gr@8sLOs)Wv~=M}$hW69;_mrN zhmXN}JQ8Ua?@LG+!X>{A=WAY$uDs|=9eY1Q)C>Ey5Pxz^9#rAij3o-#u_GEbfE{89 zD4z3b&Ntrp3l&T+#aC!?$F+Z~C|1vN(0q#>e(=R^;MSq82<>~Tk%$7y+B`GW)7r=G+#nxG44N_xkq%2nefM^?nc0_o}<>DP4*|)@v zJR8K$>!Xe58ehghL7O|YcWK|-URw6Cq634j2+IN02*!$#KOHAvTMi`xB!Ct6{D3s} zk!fhQY$7~Uvr=E~4_JU+5VdWEEgdIUVSe@Z1k;BpZDA~Gh0w?#QG#-S+Y`x(_qJCqbQ;y|7X6j1&_2q0_s8i?a@AzZq zRhQaAj|yJZ_JDdz-L@yRqHc-ZHXe+@Opqkyl{}nv}7n;imAzJy;6*^ zDVmvu?QFGO0D@%^96kC)*&Zh{A9ypow$eS@V=qr9%Wx4D&sVo4HfNhB7QScH3^^K0 zh)4Y;dw&tt?SOX#u*wH%zW9l^jm>D>{#=EIL?*^jNxV()Q=`%7Kzw`qWvqbz0?Qw< z^hZ^Xy?#PK+O?`JzXc z*Q@_BIqmTIHR$k~SV#=QEPG+lmn3G)q&ucu<$Gpk$g>pDqs!g9*i*b56h<~RV_h5j zUx)~*a$vwaV%UfTC#R07e7{PoU0bs6MsZv+p~DqZx4%YJeHo z0&lORfifGCi>Lheb}9k{Yd|>`5?nS^{!qEXirU7{GiD%${32e5 z*hZUZ!u3D6`G*{pf!hQD-Sc8wi}E7k1(Y}l(ziSN4SGR-OQ3xA6OAbX6}L9D0(G2INSgU#>UT?Z&`<15pow

-ajku5*5Iam%zXE$LOfsLSc~y* zmY$1{>6sT_LM^TS!)FhYkauv|4%C#Db!p+wg+%O!^SDbBRi3Q3I}o&;KW2P?grz_H zV*0IslQvgFb*W_9aS-MR{*R$LDxk(d?;hmm=SP-i_zMn@-Xb{&lX^G4ddIjhyqrmg z#+6RmsiEMiugc-ub-Iu?iS{XT$1kpbA^Bgv2*(8~62OYQK34|!V(sZ;EVBF($PamB zfI(DG_>y+j@RjLXZ{uWdA4 zF+Ub zHuZt>NU3o@udqRr8$*SfA^QD}PJ*UnNUYbdC9e21xET1t;nH z&Cjz_FxDB7uu2=b?H(3-okZWy8!uNoC(2F|k;sJ)F1{)=-L7NQ&5rXjp@`KSE4nlP z^Tl{`&iZgmi%5`Xia`teBPPA3z>T+Ikid^P|H}soysa^R0~lpCj@Wyn4gp|)%8xY^ JO6A~z{|8i&IeY*B delta 8298 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 KY^k(q;Qs(HR&=!h diff --git a/Tests/GravatarUITests/__Snapshots__/AvatarPickerProfileViewTests/testAvatarPickerProfileView.2.png b/Tests/GravatarUITests/__Snapshots__/AvatarPickerProfileViewTests/testAvatarPickerProfileView.2.png index f1ea6f8a55869c083b49b5257e0a1fdaa69dfb5e..890d871243844d661285168d15b6bfbae6c70b9c 100644 GIT binary patch delta 9033 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 VB}cdTG!WrKaz{Y}l`n^W@qf#b|B(Oy delta 6634 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 diff --git a/Tests/GravatarUITests/__Snapshots__/AvatarPickerProfileViewTests/testAvatarPickerProfileViewWithoutLocation.2.png b/Tests/GravatarUITests/__Snapshots__/AvatarPickerProfileViewTests/testAvatarPickerProfileViewWithoutLocation.2.png index fdf2db590fd012427628a535bd6bf9464c63eaa8..c024ef95abe8233d3f6f801783be2309a8716753 100644 GIT binary patch delta 7321 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 JOCA^p{0|PW3xxmx