From b1f8b7e4c768b7a19db8ce2cc3d8d5ba21692ec1 Mon Sep 17 00:00:00 2001 From: Jared Robbins Date: Tue, 17 Jan 2023 16:17:20 -0600 Subject: [PATCH] Add X-Large watch complication --- .../project.xcworkspace/contents.xcworkspacedata | 2 +- WatchApp Extension/ComplicationController.swift | 10 +++++++++- .../Extensions/CLKComplicationTemplate.swift | 10 +++++++++- WatchApp Extension/Info.plist | 1 + 4 files changed, 20 insertions(+), 3 deletions(-) diff --git a/Loop.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Loop.xcodeproj/project.xcworkspace/contents.xcworkspacedata index 1bd3f8ef6f..919434a625 100644 --- a/Loop.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ b/Loop.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -2,6 +2,6 @@ + location = "self:"> diff --git a/WatchApp Extension/ComplicationController.swift b/WatchApp Extension/ComplicationController.swift index 05b9871116..9f79aad280 100644 --- a/WatchApp Extension/ComplicationController.swift +++ b/WatchApp Extension/ComplicationController.swift @@ -212,7 +212,15 @@ final class ComplicationController: NSObject, CLKComplicationDataSource { return nil } case .graphicExtraLarge: - return nil + if #available(watchOSApplicationExtension 5.0, *) { + return CLKComplicationTemplateGraphicExtraLargeCircularOpenGaugeSimpleText( + gaugeProvider: CLKSimpleGaugeProvider(style: .fill, gaugeColor: .tintColor, fillFraction: 1), + bottomTextProvider: glucoseText, + centerTextProvider: CLKSimpleTextProvider(text: "↘︎") + ) + } else { + return nil + } @unknown default: return nil } diff --git a/WatchApp Extension/Extensions/CLKComplicationTemplate.swift b/WatchApp Extension/Extensions/CLKComplicationTemplate.swift index 5214294e7e..f49a9f2db0 100644 --- a/WatchApp Extension/Extensions/CLKComplicationTemplate.swift +++ b/WatchApp Extension/Extensions/CLKComplicationTemplate.swift @@ -184,7 +184,15 @@ extension CLKComplicationTemplate { return nil } case .graphicExtraLarge: - return nil + if #available(watchOSApplicationExtension 5.0, *) { + return CLKComplicationTemplateGraphicExtraLargeCircularOpenGaugeSimpleText( + gaugeProvider: CLKSimpleGaugeProvider(style: .fill, gaugeColor: tintColor, fillFraction: 1), + bottomTextProvider: CLKSimpleTextProvider(text: trendString), + centerTextProvider: CLKSimpleTextProvider(text: glucoseString) + ) + } else { + return nil + } @unknown default: return nil } diff --git a/WatchApp Extension/Info.plist b/WatchApp Extension/Info.plist index 2811bb3e48..e0a8a9a98f 100644 --- a/WatchApp Extension/Info.plist +++ b/WatchApp Extension/Info.plist @@ -31,6 +31,7 @@ CLKComplicationFamilyGraphicBezel CLKComplicationFamilyGraphicCircular CLKComplicationFamilyGraphicCorner + CLKComplicationFamilyGraphicExtraLarge CLKComplicationFamilyGraphicRectangular CLKComplicationFamilyModularLarge CLKComplicationFamilyModularSmall