Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions WordPress/Classes/Stores/StatsWidgetsStore.swift
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ class StatsWidgetsStore {
if let newTodayData = refreshStats(type: HomeWidgetTodayData.self) {
HomeWidgetTodayData.write(items: newTodayData)
WidgetCenter.shared.reloadTimelines(ofKind: AppConfiguration.Widget.Stats.todayKind)
WidgetCenter.shared.reloadTimelines(ofKind: AppConfiguration.Widget.Stats.lockScreenTodayViewsKind)
}

if let newAllTimeData = refreshStats(type: HomeWidgetAllTimeData.self) {
Expand All @@ -43,6 +44,7 @@ class StatsWidgetsStore {
DDLogInfo("StatsWidgets: Writing initialization data into HomeWidgetTodayData.plist")
HomeWidgetTodayData.write(items: initializeHomeWidgetData(type: HomeWidgetTodayData.self))
WidgetCenter.shared.reloadTimelines(ofKind: AppConfiguration.Widget.Stats.todayKind)
WidgetCenter.shared.reloadTimelines(ofKind: AppConfiguration.Widget.Stats.lockScreenTodayViewsKind)
}

if !HomeWidgetThisWeekData.cacheDataExists() {
Expand Down Expand Up @@ -115,6 +117,9 @@ class StatsWidgetsStore {

T.write(items: homeWidgetCache)
WidgetCenter.shared.reloadTimelines(ofKind: widgetKind)
if widgetKind == AppConfiguration.Widget.Stats.todayKind {
WidgetCenter.shared.reloadTimelines(ofKind: AppConfiguration.Widget.Stats.lockScreenTodayViewsKind)
}
}
}

Expand Down Expand Up @@ -276,6 +281,7 @@ private extension StatsWidgetsStore {
WidgetCenter.shared.reloadTimelines(ofKind: AppConfiguration.Widget.Stats.todayKind)
WidgetCenter.shared.reloadTimelines(ofKind: AppConfiguration.Widget.Stats.thisWeekKind)
WidgetCenter.shared.reloadTimelines(ofKind: AppConfiguration.Widget.Stats.allTimeKind)
WidgetCenter.shared.reloadTimelines(ofKind: AppConfiguration.Widget.Stats.lockScreenTodayViewsKind)
}

/// Observes WPSigninDidFinishNotification and wordpressLoginFinishedJetpackLogin notifications and initializes the widget.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,11 @@ import Foundation
@objc static let userDefaultsSiteIdKey = "WordPressHomeWidgetsSiteId"
@objc static let userDefaultsLoggedInKey = "WordPressHomeWidgetsLoggedIn"
@objc static let userDefaultsJetpackFeaturesDisabledKey = "WordPressJPFeaturesDisabledKey"
@objc static let lockScreenTodayViewsKind = "WordPressLockScreenWidgetTodayViews"
@objc static let todayKind = "WordPressHomeWidgetToday"
@objc static let allTimeKind = "WordPressHomeWidgetAllTime"
@objc static let thisWeekKind = "WordPressHomeWidgetThisWeek"
@objc static let lockScreenTodayViewsProperties = "WordPressLockScreenWidgetTodayViewsProperties"
@objc static let todayProperties = "WordPressHomeWidgetTodayProperties"
@objc static let allTimeProperties = "WordPressHomeWidgetAllTimeProperties"
@objc static let thisWeekProperties = "WordPressHomeWidgetThisWeekProperties"
Expand Down
7 changes: 7 additions & 0 deletions WordPress/Classes/Utility/BuildInformation/FeatureFlag.swift
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ enum FeatureFlag: Int, CaseIterable {
case homepageSettings
case unifiedPrologueCarousel
case todayWidget
case lockScreenWidget
case milestoneNotifications
case bloggingReminders
case siteIconCreator
Expand Down Expand Up @@ -68,6 +69,8 @@ enum FeatureFlag: Int, CaseIterable {
return true
case .todayWidget:
return true
case .lockScreenWidget:
return false
case .milestoneNotifications:
return true
case .bloggingReminders:
Expand Down Expand Up @@ -178,6 +181,8 @@ extension FeatureFlag {
return "Unified Prologue Carousel"
case .todayWidget:
return "iOS 14 Today Widget"
case .lockScreenWidget:
return "iOS 16 Widget in Lock Screen"
case .milestoneNotifications:
return "Milestone notifications"
case .bloggingReminders:
Expand Down Expand Up @@ -262,6 +267,8 @@ extension FeatureFlag: OverridableFlag {
return false
case .todayWidget:
return false
case .lockScreenWidget:
return false
case .weeklyRoundup:
return false
case .weeklyRoundupStaticNotification:
Expand Down
3 changes: 3 additions & 0 deletions WordPress/Classes/Utility/Universal Links/Route.swift
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ enum DeepLinkSource: Equatable {
case banner
case email(campaign: String)
case widget
case lockScreenWidget
case inApp(presenter: UIViewController?)

init?(sourceName: String) {
Expand All @@ -102,6 +103,8 @@ enum DeepLinkSource: Equatable {
// add others in the future if necessary.
case "widget":
self = .widget
case "lockscreen_widget":
self = .lockScreenWidget
default:
return nil
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -243,6 +243,8 @@ extension DeepLinkSource {
return "email"
case .widget:
return "widget"
case .lockScreenWidget:
return "lockscreen_widget"
case .inApp:
return "internal"
}
Expand Down
2 changes: 2 additions & 0 deletions WordPress/Jetpack/WidgetConfiguration.swift
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,11 @@ import Foundation
@objc static let userDefaultsSiteIdKey = "JetpackHomeWidgetsSiteId"
@objc static let userDefaultsLoggedInKey = "JetpackHomeWidgetsLoggedIn"
@objc static let userDefaultsJetpackFeaturesDisabledKey = "JetpackJPFeaturesDisabledKey"
@objc static let lockScreenTodayViewsKind = "JetpackLockScreenWidgetTodayViews"
@objc static let todayKind = "JetpackHomeWidgetToday"
@objc static let allTimeKind = "JetpackHomeWidgetAllTime"
@objc static let thisWeekKind = "JetpackHomeWidgetThisWeek"
@objc static let lockScreenTodayViewsProperties = "JetpackLockScreenWidgetTodayViewsProperties"
@objc static let todayProperties = "JetpackHomeWidgetTodayProperties"
@objc static let allTimeProperties = "JetpackHomeWidgetAllTimeProperties"
@objc static let thisWeekProperties = "JetpackHomeWidgetThisWeekProperties"
Expand Down
Loading