-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Remove iOS 13 Widgets #19509
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove iOS 13 Widgets #19509
Conversation
| <key>UIApplicationShortcutWidget</key> | ||
| <string>org.wordpress.WordPressTodayWidget</string> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As far as I could gather from the docs and the latest support page, this key was used at the time of the iOS 10 to 13 widgets but is no longer needed.
| @@ -5593,13 +5461,10 @@ | |||
| 09C8BB8327DFF9CB00974175 /* ro */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ro; path = ro.lproj/InfoPlist.strings; sourceTree = "<group>"; }; | |||
| 09C8BB8427DFF9CC00974175 /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/InfoPlist.strings; sourceTree = "<group>"; }; | |||
| 09F367D2BE684EDE2E4A40E3 /* Pods-WordPressDraftActionExtension.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressDraftActionExtension.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressDraftActionExtension/Pods-WordPressDraftActionExtension.debug.xcconfig"; sourceTree = "<group>"; }; | |||
| 0A27D496128FBCDFA3658994 /* Pods-WordPressHomeWidgetToday.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressHomeWidgetToday.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressHomeWidgetToday/Pods-WordPressHomeWidgetToday.release-internal.xcconfig"; sourceTree = "<group>"; }; | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fun fact. We've been carrying around these WordPressHomeWidgetToday dead references ever since renaming that target to WordPressTodayWidget 😳
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for noticing. The project will get a well-deserved clean-up then 👀
You can test the changes in Jetpack from this Pull Request by:
|
You can test the changes in WordPress from this Pull Request by:
|
089ffab to
46b53ec
Compare
|
cc @crazytonyli, if you have the time to take a look. |
staskus
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for the changes, @mokagio! I reviewed commit by commit. Additional changes unrelated to Widgets make sense as well. 👍
WidgetDiffferenceCellWidgetTwoCollumnCellWidgetUnconfiguredCellWidgetUrlCellWidgetNoConnectionCell
Potentially, there could be minor details related to iOS13 Widgets that could be removed as well, for example, some Constants and details saved to UserDefaults. However, iOS13 Widget data-loading code is reused by iOS14+ Widgets, therefore, it's hard to tell if any small details could be removed without negatively affecting current widgets. The majority of the code is removed in this PR.
#available(iOS 14.0, *), including Stats-related StatsWidgetStore. However, they could be removed in the parent PR or later.
I tested the app:
- iOS 14 widgets continue working
- Existing shortcuts continue working
46b53ec to
fc4d3b8
Compare
Generated by 🚫 dangerJS |
|
Thank you for the review @staskus 🙌 I removed the Shared Views that this work made unused as you suggested.
Agreed. I might leave them for a PR later on. As a matter of fact, I already removed them here but I think I'll submit them in isolation after #19496 lands. |
staskus
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
staskus
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't want to block this PR, so after shared views are removed, we can move on. 👍
|
I didn't push them... 😓 But you can see them in the timeline now Thank you for the approval to unblock. I'll merge as soon as CI is green. |
|
I see the changes now, all good 🚀 |
guarani
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apologies for the late review, @mokagio. The code changes look right and I gave the Jetpack app and the WP app both a quick smoke test (adding Home Screen widgets, scheduling a post, etc.) – all good.
I love how this reduced the number of targets in the project ❤️ Thanks for wrangling this!
Are you planning to merge this in 21.1 or bump to the next version?
This way, all the targets will use the same iOS deployment, all coming from the project-level setting.
The class property was deprecated in iOS 14. Xcode gave the following warning (which we treat as an error): > Deprecated. Use the instance property `authorizationStatus` instead.
The deprecation warning in Xcode wasn't informative, but the deprecation
annotation suggested what to do:
```
/*
* locationManager:didChangeAuthorizationStatus:
*
* Discussion:
* Invoked when the authorization status changes for this application.
*/
- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status API_DEPRECATED_WITH_REPLACEMENT("-locationManagerDidChangeAuthorization:", ios(4.2, 14.0), macos(10.7, 11.0), watchos(1.0, 7.0), tvos(9.0, 14.0));
```
This legacy widget extension has been superseded by `WordPressStatsWidgets`.
This legacy widget extension has been superseded by `WordPressStatsWidgets`.
This legacy widget extension has been superseded by `WordPressStatsWidgets`.
These were there to be ready to use once the team was ready to add the widgets. In the meantime, we decided to drop iOS 13, which removes the need for them.
This would have been the name of the very first iOS 10 home widget we added. Since then, it was renamed but we missed the dead references.
0956955 to
d6392db
Compare

Removes the iOS 13 widgets, WordPressTodayWidget, WordPressThisWeekWidget, and WordPressAllTimeWidget, plush does as little work as possible to get the app to build with iOS 14 as the minimum deployment target (#19496).
See also commit messages for additional details on the rationale behind some of the changes.
While working on this, I addressed a few more deprecations, see #19512, but I decided to keep them separated to focus this PR on widgets.
Regression Notes
RELEASE-NOTES.txtif necessary. N.A.