Skip to content

Commit d88992c

Browse files
authored
Merge editorialized release notes and 21.6.0.1 beta (#19991)
2 parents aa1d441 + 9d584c5 commit d88992c

File tree

100 files changed

+757
-1722
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

100 files changed

+757
-1722
lines changed

RELEASE-NOTES.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@
1616
* [*] Resolve an edge case that was causing the user to be stuck in the "Onboading Questions" screen. [#19791]
1717
* [*] [Jetpack-only] Tweak Migration Screens UI when fonts are enlarged. [#19944]
1818

19+
21.5.1
20+
-----
21+
* [*] [Jetpack-only] Fixed a bug where the Login flow was restarting every time the app enters the foreground. [#19961]
22+
1923
21.5
2024
-----
2125
* [***] [internal] A significant refactor to the app’s architecture was made to allow for the new simplified UI. Regression testing on the app’s main flows is needed. [#19817]

WordPress/Classes/System/WindowManager.swift

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,12 @@ class WindowManager: NSObject {
2121
///
2222
private(set) var isShowingFullscreenSignIn = false
2323

24+
/// The root view controller for the window.
25+
///
26+
var rootViewController: UIViewController? {
27+
return window.rootViewController
28+
}
29+
2430
init(window: UIWindow) {
2531
self.window = window
2632
}

WordPress/Classes/ViewRelated/Stats/Insights/StatsTotalInsightsCell.swift

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,12 @@ class StatsTotalInsightsCell: StatsBaseCell {
269269

270270
// Rebuilds guide view for accessibility only if guide view already exists
271271
private func rebuildGuideViewIfNeeded() {
272+
/// NSAttributedString initialized with HTML on the background crashes the app
273+
/// This method can be called when traitCollectionDidChange which can be triggered when app goes to background
274+
guard UIApplication.shared.applicationState != .background else {
275+
return
276+
}
277+
272278
if guideText != nil,
273279
let statsSummaryType = statsSummaryType,
274280
let guideText = StatsTotalInsightsData.makeTotalInsightsGuideText(lastPostInsight: lastPostInsight, statsSummaryType: statsSummaryType) {
@@ -379,7 +385,7 @@ class StatsTotalInsightsCell: StatsBaseCell {
379385
static let differenceHigher = NSLocalizedString("stats.insights.label.totalLikes.higher",
380386
value: "*%@%@ (%@%%)* higher than the previous 7-days",
381387
comment: "Label shown on some metrics in the Stats Insights section, such as Comments count. The placeholders will be populated with a change and a percentage – e.g. '+17 (40%) higher than the previous 7-days'. The *s mark the numerical values, which will be highlighted differently from the rest of the text.")
382-
static let differenceLower = NSLocalizedString("stats.insights.label.totalLikes.higher",
388+
static let differenceLower = NSLocalizedString("stats.insights.label.totalLikes.lower",
383389
value: "*%@%@ (%@%%)* lower than the previous 7-days",
384390
comment: "Label shown on some metrics in the Stats Insights section, such as Comments count. The placeholders will be populated with a change and a percentage – e.g. '-17 (40%) lower than the previous 7-days'. The *s mark the numerical values, which will be highlighted differently from the rest of the text.")
385391
static let differenceSame = NSLocalizedString("stats.insights.label.totalLikes.same",

WordPress/Jetpack/Classes/System/JetpackWindowManager.swift

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -197,11 +197,41 @@ private extension JetpackWindowManager {
197197
!hasFailedExportAttempts,
198198
let schemeUrl = URL(string: "\(AppScheme.wordpressMigrationV1.rawValue)\(WordPressExportRoute().path.removingPrefix("/"))")
199199
else {
200-
showSignInUI()
200+
performSafeRootNavigation { [weak self] in
201+
self?.showSignInUI()
202+
}
201203
return
202204
}
203205

204206
/// WordPress is a compatible version for migrations, but needs to be loaded to prepare the data
205-
showLoadWordPressUI(schemeUrl: schemeUrl)
207+
performSafeRootNavigation { [weak self] in
208+
self?.showLoadWordPressUI(schemeUrl: schemeUrl)
209+
}
210+
}
211+
212+
/// This method takes care of preventing screens being abruptly replaced.
213+
///
214+
/// Since the import method is called whenever the app is foregrounded, we want to make sure that
215+
/// any root view controller replacements only happen where it is "allowed":
216+
///
217+
/// 1. When there's no root view controller yet, or
218+
/// 2. When the Load WordPress screen is shown.
219+
///
220+
/// Note: We should remove this method when the migration phase is concluded and we no longer need
221+
/// to perfom the migration.
222+
///
223+
/// - Parameter navigationClosure: The closure containing logic that eventually calls the `show` method.
224+
func performSafeRootNavigation(with navigationClosure: @escaping () -> Void) {
225+
switch rootViewController {
226+
case .none:
227+
// we can perform the navigation directly when there's no root view controller yet.
228+
navigationClosure()
229+
case .some(let viewController) where viewController is MigrationLoadWordPressViewController:
230+
// allow the Load WordPress view to be replaced in case the migration process fails.
231+
viewController.dismiss(animated: true, completion: navigationClosure)
232+
default:
233+
// do nothing when another root view controller is already displayed.
234+
break
235+
}
206236
}
207237
}

WordPress/Jetpack/Resources/AppStoreStrings.po

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -81,15 +81,16 @@ msgctxt "app_store_keywords"
8181
msgid "social,notes,jetpack,writing,geotagging,media,blog,website,blogging,journal"
8282
msgstr ""
8383

84-
msgctxt "v21.5-whats-new"
84+
msgctxt "v21.6-whats-new"
8585
msgid ""
86-
"We’ve been hard at work on extra-technical, behind-the-scenes fixes and updates to keep the Jetpack app running smoothly.\n"
86+
"Find out how your content is performing with our changes to Stats Insights and learn what types of content your readers like to see.\n"
8787
"\n"
88-
"- Posticulating features\n"
89-
"- Rearchitecting interfaces\n"
90-
"- Reticulating splines\n"
91-
"- Codifying similitude\n"
92-
"- Rebuilding the gigaverse\n"
88+
"We also fixed a few issues in various areas of the app.\n"
89+
"\n"
90+
"- The “No media matching your search” message in the Media Picker now appears in the right spot. Home, sweet home.\n"
91+
"- Some users were getting stuck on the “What would you like to focus on first?” screen after logging in, but no more—focus away, friends.\n"
92+
"- You’ll no longer skip to the end of the migration flow if you close the app while migrating your site content from WordPress to Jetpack. We made some design adjustments to the final migration screen, too.\n"
93+
"- Pull-to-refresh properly updates your follower stats on the Total Followers Details screen. 10/10, would pull again.\n"
9394
msgstr ""
9495

9596
#. translators: This is a promo message that will be attached on top of the first screenshot in the App Store.
Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
* [*] Fix a layout issue impacting the "No media matching your search" empty state message of the Media Picker screen. [#19820]
2-
* [*] The Migration flow doesn't complete automatically if the user interrupts the migration mid flow. [#19888]
3-
* [***] Stats Insights Update. Helps you understand how your content is performing and what’s resonating with your audience. [#19909]
4-
* [***] [internal] Delete all the activity logs after logging out. [#19930]
5-
* [*] Fixed an issue where Stats Followers details did not update on Pull-to-refresh in the Stats Followers Details screen [#19935]
6-
* [*] Resolve an edge case that was causing the user to be stuck in the "Onboading Questions" screen. [#19791]
7-
* [*] Tweak Migration Screens UI when fonts are enlarged. [#19944]
1+
Find out how your content is performing with our changes to Stats Insights and learn what types of content your readers like to see.
2+
3+
We also fixed a few issues in various areas of the app.
4+
5+
- The “No media matching your search” message in the Media Picker now appears in the right spot. Home, sweet home.
6+
- Some users were getting stuck on the “What would you like to focus on first?” screen after logging in, but no more—focus away, friends.
7+
- You’ll no longer skip to the end of the migration flow if you close the app while migrating your site content from WordPress to Jetpack. We made some design adjustments to the final migration screen, too.
8+
- Pull-to-refresh properly updates your follower stats on the Total Followers Details screen. 10/10, would pull again.

WordPress/JetpackDraftActionExtension/ar.lproj/InfoPlist.strings

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,5 @@
22
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
33
<!--Warning: Auto-generated file, do not edit.-->
44
<plist version="1.0">
5-
<dict>
6-
<key>CFBundleDisplayName</key>
7-
<string>حفظ إلى Jetpack</string>
8-
<key>CFBundleName</key>
9-
<string>حفظ إلى Jetpack</string>
10-
</dict>
5+
<dict/>
116
</plist>

WordPress/JetpackDraftActionExtension/cs.lproj/InfoPlist.strings

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
<plist version="1.0">
55
<dict>
66
<key>CFBundleDisplayName</key>
7-
<string>Uložit do Jetpacku</string>
7+
<string>Uložit jako koncept</string>
88
<key>CFBundleName</key>
9-
<string>Uložit do Jetpacku</string>
9+
<string>Uložit jako koncept</string>
1010
</dict>
1111
</plist>

WordPress/JetpackDraftActionExtension/de.lproj/InfoPlist.strings

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
<plist version="1.0">
55
<dict>
66
<key>CFBundleDisplayName</key>
7-
<string>In Jetpack speichern</string>
7+
<string>Als Entwurf speichern</string>
88
<key>CFBundleName</key>
9-
<string>In Jetpack speichern</string>
9+
<string>Als Entwurf speichern</string>
1010
</dict>
1111
</plist>

WordPress/JetpackDraftActionExtension/en-CA.lproj/InfoPlist.strings

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,5 @@
22
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
33
<!--Warning: Auto-generated file, do not edit.-->
44
<plist version="1.0">
5-
<dict>
6-
<key>CFBundleDisplayName</key>
7-
<string>Save to Jetpack</string>
8-
<key>CFBundleName</key>
9-
<string>Save to Jetpack</string>
10-
</dict>
5+
<dict/>
116
</plist>

0 commit comments

Comments
 (0)