From 59076076e897fd909183b7965766cfd5ff0f678a Mon Sep 17 00:00:00 2001 From: fototeddy Date: Sun, 6 Sep 2026 21:34:40 +0200 Subject: [PATCH] Widget-Extension in LiveActivity umbenennen, da kein Widget mehr drin ist MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Nach dem Entfernen der Beispiel-Widget/-Control-Dateien enthielt VanControlWidget(Extension) nur noch die Live Activity – der Name war damit irreführend. Jetzt VanControlLiveActivity(Extension) durchgängig: Ordner, Target, Produkt, Bundle-ID-Suffix, Dateien (VanControlLiveActivity.swift, VanControlLiveActivityBundle.swift) und Anzeigename ("VanControl Live Activity"). Build (App Debug+Release, Watch) und Protokoll-Tests grün. Co-Authored-By: Claude Sonnet 5 --- VanControl.xcodeproj/project.pbxproj | 52 +++++++++---------- .../LiveActivity/LevelActivityManager.swift | 2 +- .../AccentColor.colorset/Contents.json | 0 .../AppIcon.appiconset/Contents.json | 0 .../Assets.xcassets/Contents.json | 0 .../WidgetBackground.colorset/Contents.json | 0 .../Info.plist | 0 .../VanControlLiveActivity.swift | 8 +-- .../VanControlLiveActivityBundle.swift | 16 ++++++ VanControlWidget/VanControlWidgetBundle.swift | 16 ------ 10 files changed, 47 insertions(+), 47 deletions(-) rename {VanControlWidget => VanControlLiveActivity}/Assets.xcassets/AccentColor.colorset/Contents.json (100%) rename {VanControlWidget => VanControlLiveActivity}/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename {VanControlWidget => VanControlLiveActivity}/Assets.xcassets/Contents.json (100%) rename {VanControlWidget => VanControlLiveActivity}/Assets.xcassets/WidgetBackground.colorset/Contents.json (100%) rename {VanControlWidget => VanControlLiveActivity}/Info.plist (100%) rename VanControlWidget/VanControlWidgetLiveActivity.swift => VanControlLiveActivity/VanControlLiveActivity.swift (98%) create mode 100644 VanControlLiveActivity/VanControlLiveActivityBundle.swift delete mode 100644 VanControlWidget/VanControlWidgetBundle.swift diff --git a/VanControl.xcodeproj/project.pbxproj b/VanControl.xcodeproj/project.pbxproj index f600292..fb791fb 100644 --- a/VanControl.xcodeproj/project.pbxproj +++ b/VanControl.xcodeproj/project.pbxproj @@ -13,7 +13,7 @@ AA0000000000000000000047 /* SwiftUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AA0000000000000000000052 /* SwiftUI.framework */; }; AA0000000000000000000048 /* WidgetKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AA0000000000000000000051 /* WidgetKit.framework */; }; AA0000000000000000000049 /* ActivityKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AA0000000000000000000053 /* ActivityKit.framework */; }; - AA0000000000000000000050 /* VanControlWidgetExtension.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = AA0000000000000000000054 /* VanControlWidgetExtension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; + AA0000000000000000000050 /* VanControlLiveActivityExtension.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = AA0000000000000000000054 /* VanControlLiveActivityExtension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -36,7 +36,7 @@ containerPortal = AA0000000000000000000009 /* Project object */; proxyType = 1; remoteGlobalIDString = AA0000000000000000000062; - remoteInfo = VanControlWidgetExtension; + remoteInfo = VanControlLiveActivityExtension; }; /* End PBXContainerItemProxy section */ @@ -69,7 +69,7 @@ dstPath = ""; dstSubfolderSpec = 13; files = ( - AA0000000000000000000050 /* VanControlWidgetExtension.appex in Embed Foundation Extensions */, + AA0000000000000000000050 /* VanControlLiveActivityExtension.appex in Embed Foundation Extensions */, ); name = "Embed Foundation Extensions"; runOnlyForDeploymentPostprocessing = 0; @@ -85,16 +85,16 @@ AA0000000000000000000051 /* WidgetKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WidgetKit.framework; path = System/Library/Frameworks/WidgetKit.framework; sourceTree = SDKROOT; }; AA0000000000000000000052 /* SwiftUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SwiftUI.framework; path = System/Library/Frameworks/SwiftUI.framework; sourceTree = SDKROOT; }; AA0000000000000000000053 /* ActivityKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ActivityKit.framework; path = System/Library/Frameworks/ActivityKit.framework; sourceTree = SDKROOT; }; - AA0000000000000000000054 /* VanControlWidgetExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = VanControlWidgetExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; }; + AA0000000000000000000054 /* VanControlLiveActivityExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = VanControlLiveActivityExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */ - AA0000000000000000000055 /* Exceptions for "VanControlWidget" folder in "VanControlWidgetExtension" target */ = { + AA0000000000000000000055 /* Exceptions for "VanControlLiveActivity" folder in "VanControlLiveActivityExtension" target */ = { isa = PBXFileSystemSynchronizedBuildFileExceptionSet; membershipExceptions = ( Info.plist, ); - target = AA0000000000000000000062 /* VanControlWidgetExtension */; + target = AA0000000000000000000062 /* VanControlLiveActivityExtension */; }; /* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ @@ -119,12 +119,12 @@ path = VanControlComplication; sourceTree = ""; }; - AA0000000000000000000056 /* VanControlWidget */ = { + AA0000000000000000000056 /* VanControlLiveActivity */ = { isa = PBXFileSystemSynchronizedRootGroup; exceptions = ( - AA0000000000000000000055 /* Exceptions for "VanControlWidget" folder in "VanControlWidgetExtension" target */, + AA0000000000000000000055 /* Exceptions for "VanControlLiveActivity" folder in "VanControlLiveActivityExtension" target */, ); - path = VanControlWidget; + path = VanControlLiveActivity; sourceTree = ""; }; AA0000000000000000000057 /* SharedActivity */ = { @@ -179,7 +179,7 @@ AA0000000000000000000018 /* Shared */, AA0000000000000000000057 /* SharedActivity */, AA0000000000000000000031 /* Config */, - AA0000000000000000000056 /* VanControlWidget */, + AA0000000000000000000056 /* VanControlLiveActivity */, AA0000000000000000000059 /* Frameworks */, AA0000000000000000000005 /* Products */, ); @@ -191,7 +191,7 @@ AA0000000000000000000001 /* VanControl.app */, AA0000000000000000000016 /* VanControlWatch.app */, AA0000000000000000000032 /* VanControlComplication.appex */, - AA0000000000000000000054 /* VanControlWidgetExtension.appex */, + AA0000000000000000000054 /* VanControlLiveActivityExtension.appex */, ); name = Products; sourceTree = ""; @@ -288,9 +288,9 @@ productReference = AA0000000000000000000032 /* VanControlComplication.appex */; productType = "com.apple.product-type.app-extension"; }; - AA0000000000000000000062 /* VanControlWidgetExtension */ = { + AA0000000000000000000062 /* VanControlLiveActivityExtension */ = { isa = PBXNativeTarget; - buildConfigurationList = AA0000000000000000000068 /* Build configuration list for PBXNativeTarget "VanControlWidgetExtension" */; + buildConfigurationList = AA0000000000000000000068 /* Build configuration list for PBXNativeTarget "VanControlLiveActivityExtension" */; buildPhases = ( AA0000000000000000000060 /* Sources */, AA0000000000000000000058 /* Frameworks */, @@ -301,12 +301,12 @@ dependencies = ( ); fileSystemSynchronizedGroups = ( - AA0000000000000000000056 /* VanControlWidget */, + AA0000000000000000000056 /* VanControlLiveActivity */, AA0000000000000000000057 /* SharedActivity */, ); - name = VanControlWidgetExtension; - productName = VanControlWidgetExtension; - productReference = AA0000000000000000000054 /* VanControlWidgetExtension.appex */; + name = VanControlLiveActivityExtension; + productName = VanControlLiveActivityExtension; + productReference = AA0000000000000000000054 /* VanControlLiveActivityExtension.appex */; productType = "com.apple.product-type.app-extension"; }; /* End PBXNativeTarget section */ @@ -351,7 +351,7 @@ AA0000000000000000000006 /* VanControl */, AA0000000000000000000022 /* VanControlWatch */, AA0000000000000000000037 /* VanControlComplication */, - AA0000000000000000000062 /* VanControlWidgetExtension */, + AA0000000000000000000062 /* VanControlLiveActivityExtension */, ); }; /* End PBXProject section */ @@ -432,7 +432,7 @@ }; AA0000000000000000000064 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = AA0000000000000000000062 /* VanControlWidgetExtension */; + target = AA0000000000000000000062 /* VanControlLiveActivityExtension */; targetProxy = AA0000000000000000000063 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ @@ -686,8 +686,8 @@ CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = V5C6Q86XJR; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = VanControlWidget/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "VanControl Widget"; + INFOPLIST_FILE = VanControlLiveActivity/Info.plist; + INFOPLIST_KEY_CFBundleDisplayName = "VanControl Live Activity"; IPHONEOS_DEPLOYMENT_TARGET = 18.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", @@ -695,7 +695,7 @@ "@executable_path/../../Frameworks", ); MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = de.s0.fototeddy.VanControl.VanControlWidget; + PRODUCT_BUNDLE_IDENTIFIER = de.s0.fototeddy.VanControl.VanControlLiveActivity; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; @@ -715,8 +715,8 @@ CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = V5C6Q86XJR; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = VanControlWidget/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "VanControl Widget"; + INFOPLIST_FILE = VanControlLiveActivity/Info.plist; + INFOPLIST_KEY_CFBundleDisplayName = "VanControl Live Activity"; IPHONEOS_DEPLOYMENT_TARGET = 18.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", @@ -724,7 +724,7 @@ "@executable_path/../../Frameworks", ); MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = de.s0.fototeddy.VanControl.VanControlWidget; + PRODUCT_BUNDLE_IDENTIFIER = de.s0.fototeddy.VanControl.VanControlLiveActivity; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; SWIFT_COMPILATION_MODE = wholemodule; @@ -774,7 +774,7 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - AA0000000000000000000068 /* Build configuration list for PBXNativeTarget "VanControlWidgetExtension" */ = { + AA0000000000000000000068 /* Build configuration list for PBXNativeTarget "VanControlLiveActivityExtension" */ = { isa = XCConfigurationList; buildConfigurations = ( AA0000000000000000000066 /* Debug */, diff --git a/VanControl/LiveActivity/LevelActivityManager.swift b/VanControl/LiveActivity/LevelActivityManager.swift index 93a00e1..e357787 100644 --- a/VanControl/LiveActivity/LevelActivityManager.swift +++ b/VanControl/LiveActivity/LevelActivityManager.swift @@ -9,7 +9,7 @@ import Observation /// CarPlay eine laufende Live Activity automatisch im Dashboard an; ein /// eigenes CarPlay-App-Target braucht es dafür nicht – die Inhalte kommen /// aber nicht von der Sperrbildschirm-Ansicht, sondern von der -/// `.small`-Aktivitätsfamilie (siehe `VanControlWidgetLiveActivity`). +/// `.small`-Aktivitätsfamilie (siehe `VanControlLiveActivity`). @Observable final class LevelActivityManager { private(set) var trackedDeviceID: UUID? diff --git a/VanControlWidget/Assets.xcassets/AccentColor.colorset/Contents.json b/VanControlLiveActivity/Assets.xcassets/AccentColor.colorset/Contents.json similarity index 100% rename from VanControlWidget/Assets.xcassets/AccentColor.colorset/Contents.json rename to VanControlLiveActivity/Assets.xcassets/AccentColor.colorset/Contents.json diff --git a/VanControlWidget/Assets.xcassets/AppIcon.appiconset/Contents.json b/VanControlLiveActivity/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from VanControlWidget/Assets.xcassets/AppIcon.appiconset/Contents.json rename to VanControlLiveActivity/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/VanControlWidget/Assets.xcassets/Contents.json b/VanControlLiveActivity/Assets.xcassets/Contents.json similarity index 100% rename from VanControlWidget/Assets.xcassets/Contents.json rename to VanControlLiveActivity/Assets.xcassets/Contents.json diff --git a/VanControlWidget/Assets.xcassets/WidgetBackground.colorset/Contents.json b/VanControlLiveActivity/Assets.xcassets/WidgetBackground.colorset/Contents.json similarity index 100% rename from VanControlWidget/Assets.xcassets/WidgetBackground.colorset/Contents.json rename to VanControlLiveActivity/Assets.xcassets/WidgetBackground.colorset/Contents.json diff --git a/VanControlWidget/Info.plist b/VanControlLiveActivity/Info.plist similarity index 100% rename from VanControlWidget/Info.plist rename to VanControlLiveActivity/Info.plist diff --git a/VanControlWidget/VanControlWidgetLiveActivity.swift b/VanControlLiveActivity/VanControlLiveActivity.swift similarity index 98% rename from VanControlWidget/VanControlWidgetLiveActivity.swift rename to VanControlLiveActivity/VanControlLiveActivity.swift index 7e3f9c1..910b82c 100644 --- a/VanControlWidget/VanControlWidgetLiveActivity.swift +++ b/VanControlLiveActivity/VanControlLiveActivity.swift @@ -1,6 +1,6 @@ // -// VanControlWidgetLiveActivity.swift -// VanControlWidget +// VanControlLiveActivity.swift +// VanControlLiveActivity // // Created by Christopher Helberg on 02.09.26. // @@ -87,7 +87,7 @@ private struct LevelBubbleGlyph: View { } } -struct VanControlWidgetLiveActivity: Widget { +struct VanControlLiveActivity: Widget { var body: some WidgetConfiguration { ActivityConfiguration(for: LevelActivityAttributes.self) { context in LevelActivityContent(attributes: context.attributes, state: context.state) @@ -281,7 +281,7 @@ extension LevelActivityAttributes.ContentState { } #Preview("Notification", as: .content, using: LevelActivityAttributes.preview) { - VanControlWidgetLiveActivity() + VanControlLiveActivity() } contentStates: { LevelActivityAttributes.ContentState.level LevelActivityAttributes.ContentState.tilted diff --git a/VanControlLiveActivity/VanControlLiveActivityBundle.swift b/VanControlLiveActivity/VanControlLiveActivityBundle.swift new file mode 100644 index 0000000..5631eee --- /dev/null +++ b/VanControlLiveActivity/VanControlLiveActivityBundle.swift @@ -0,0 +1,16 @@ +// +// VanControlLiveActivityBundle.swift +// VanControlLiveActivity +// +// Created by Christopher Helberg on 02.09.26. +// + +import WidgetKit +import SwiftUI + +@main +struct VanControlLiveActivityBundle: WidgetBundle { + var body: some Widget { + VanControlLiveActivity() + } +} diff --git a/VanControlWidget/VanControlWidgetBundle.swift b/VanControlWidget/VanControlWidgetBundle.swift deleted file mode 100644 index 80e0479..0000000 --- a/VanControlWidget/VanControlWidgetBundle.swift +++ /dev/null @@ -1,16 +0,0 @@ -// -// VanControlWidgetBundle.swift -// VanControlWidget -// -// Created by Christopher Helberg on 02.09.26. -// - -import WidgetKit -import SwiftUI - -@main -struct VanControlWidgetBundle: WidgetBundle { - var body: some Widget { - VanControlWidgetLiveActivity() - } -}