diff --git a/AppIcon.icon/Assets/StosPlug.svg b/AppIcon.icon/Assets/StosPlug 2.svg similarity index 100% rename from AppIcon.icon/Assets/StosPlug.svg rename to AppIcon.icon/Assets/StosPlug 2.svg diff --git a/AppIcon.icon/Assets/StosPlug 3.svg b/AppIcon.icon/Assets/StosPlug 3.svg new file mode 100644 index 0000000..458d629 --- /dev/null +++ b/AppIcon.icon/Assets/StosPlug 3.svg @@ -0,0 +1,3 @@ + + + diff --git a/AppIcon.icon/icon.json b/AppIcon.icon/icon.json index 6049cc2..a5163f5 100644 --- a/AppIcon.icon/icon.json +++ b/AppIcon.icon/icon.json @@ -1,8 +1,8 @@ { "fill" : { "linear-gradient" : [ - "display-p3:0.72718,1.00000,0.56150,1.00000", - "display-p3:0.23889,0.54053,0.96826,1.00000" + "display-p3:0.72549,1.00000,0.56078,1.00000", + "display-p3:0.23922,0.54118,0.96863,1.00000" ], "orientation" : { "start" : { @@ -17,20 +17,19 @@ }, "groups" : [ { + "hidden-specializations" : [ + { + "value" : true + }, + { + "appearance" : "tinted", + "value" : false + } + ], "layers" : [ { - "blend-mode" : "normal", - "hidden" : false, - "image-name" : "StosPlug.svg", - "name" : "StosPlug", - "opacity" : 0.5, - "position" : { - "scale" : 1, - "translation-in-points" : [ - 0, - 0 - ] - } + "image-name" : "StosPlug 3.svg", + "name" : "StosPlug 3" } ], "shadow" : { @@ -46,6 +45,45 @@ } } ] + }, + { + "hidden-specializations" : [ + { + "value" : false + }, + { + "appearance" : "tinted", + "value" : true + } + ], + "layers" : [ + { + "fill-specializations" : [ + { + "value" : { + "solid" : "display-p3:0.94916,0.94916,0.94916,0.50000" + } + }, + { + "appearance" : "tinted", + "value" : { + "solid" : "display-p3:1.00000,1.00000,1.00000,0.50000" + } + } + ], + "hidden" : false, + "image-name" : "StosPlug 2.svg", + "name" : "StosPlug" + } + ], + "shadow" : { + "kind" : "neutral", + "opacity" : 0.5 + }, + "translucency" : { + "enabled" : true, + "value" : 0.5 + } } ], "supported-platforms" : { diff --git a/LocalDevVPN.xcodeproj/project.pbxproj b/LocalDevVPN.xcodeproj/project.pbxproj index 33557c4..98710e5 100644 --- a/LocalDevVPN.xcodeproj/project.pbxproj +++ b/LocalDevVPN.xcodeproj/project.pbxproj @@ -420,7 +420,7 @@ DEVELOPMENT_TEAM = 42Q7QX86GV; ENABLE_PREVIEWS = YES; INFOPLIST_KEY_CFBundleDisplayName = LocalDevVPN; - INFOPLIST_KEY_NSHumanReadableCopyright = Stossy11; + INFOPLIST_KEY_NSHumanReadableCopyright = "Coxson Engineering"; INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; INFOPLIST_KEY_UILaunchScreen_Generation = YES; @@ -430,14 +430,15 @@ "$(inherited)", "@executable_path/Frameworks", ); + MARKETING_VERSION = 1.0.0; PRODUCT_BUNDLE_IDENTIFIER = com.jkcoxson.LocalDevVPN; PROVISIONING_PROFILE_SPECIFIER = ""; - SUPPORTED_PLATFORMS = "appletvos appletvsimulator iphoneos iphonesimulator"; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SWIFT_OBJC_BRIDGING_HEADER = "LocalDevVPN/LocalDevVPN-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2,3"; + TARGETED_DEVICE_FAMILY = "1,2"; TVOS_DEPLOYMENT_TARGET = 17.0; }; name = Debug; @@ -455,7 +456,7 @@ DEVELOPMENT_TEAM = 42Q7QX86GV; ENABLE_PREVIEWS = YES; INFOPLIST_KEY_CFBundleDisplayName = LocalDevVPN; - INFOPLIST_KEY_NSHumanReadableCopyright = Stossy11; + INFOPLIST_KEY_NSHumanReadableCopyright = "Coxson Engineering"; INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; INFOPLIST_KEY_UILaunchScreen_Generation = YES; @@ -465,13 +466,14 @@ "$(inherited)", "@executable_path/Frameworks", ); + MARKETING_VERSION = 1.0.0; PRODUCT_BUNDLE_IDENTIFIER = com.jkcoxson.LocalDevVPN; PROVISIONING_PROFILE_SPECIFIER = ""; - SUPPORTED_PLATFORMS = "appletvos appletvsimulator iphoneos iphonesimulator"; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SWIFT_OBJC_BRIDGING_HEADER = "LocalDevVPN/LocalDevVPN-Bridging-Header.h"; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2,3"; + TARGETED_DEVICE_FAMILY = "1,2"; TVOS_DEPLOYMENT_TARGET = 17.0; }; name = Release; diff --git a/LocalDevVPN.xcodeproj/xcshareddata/xcschemes/StosVPN.xcscheme b/LocalDevVPN.xcodeproj/xcshareddata/xcschemes/LocalDevVPN.xcscheme similarity index 100% rename from LocalDevVPN.xcodeproj/xcshareddata/xcschemes/StosVPN.xcscheme rename to LocalDevVPN.xcodeproj/xcshareddata/xcschemes/LocalDevVPN.xcscheme diff --git a/LocalDevVPN.xcodeproj/xcshareddata/xcschemes/TunnelProv.xcscheme b/LocalDevVPN.xcodeproj/xcshareddata/xcschemes/TunnelProv.xcscheme index d892b55..8d51541 100644 --- a/LocalDevVPN.xcodeproj/xcshareddata/xcschemes/TunnelProv.xcscheme +++ b/LocalDevVPN.xcodeproj/xcshareddata/xcschemes/TunnelProv.xcscheme @@ -19,7 +19,7 @@ BlueprintIdentifier = "4EB3C76D2D96715400C1B22C" BuildableName = "TunnelProv.appex" BlueprintName = "TunnelProv" - ReferencedContainer = "container:StosVPN.xcodeproj"> + ReferencedContainer = "container:LocalDevVPN.xcodeproj"> + ReferencedContainer = "container:LocalDevVPN.xcodeproj"> @@ -64,7 +64,7 @@ BlueprintIdentifier = "4EB3C7572D96631A00C1B22C" BuildableName = "LocalDevVPN.app" BlueprintName = "LocalDevVPN" - ReferencedContainer = "container:StosVPN.xcodeproj"> + ReferencedContainer = "container:LocalDevVPN.xcodeproj"> @@ -74,7 +74,6 @@ savedToolIdentifier = "" useCustomWorkingDirectory = "NO" debugDocumentVersioning = "YES" - askForAppToLaunch = "Yes" launchAutomaticallySubstyle = "2"> @@ -83,7 +82,7 @@ BlueprintIdentifier = "4EB3C7572D96631A00C1B22C" BuildableName = "LocalDevVPN.app" BlueprintName = "LocalDevVPN" - ReferencedContainer = "container:StosVPN.xcodeproj"> + ReferencedContainer = "container:LocalDevVPN.xcodeproj"> diff --git a/LocalDevVPN.xcodeproj/xcuserdata/stossy11.xcuserdatad/xcschemes/xcschememanagement.plist b/LocalDevVPN.xcodeproj/xcuserdata/stossy11.xcuserdatad/xcschemes/xcschememanagement.plist index ee4d95c..9c08aa7 100644 --- a/LocalDevVPN.xcodeproj/xcuserdata/stossy11.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/LocalDevVPN.xcodeproj/xcuserdata/stossy11.xcuserdatad/xcschemes/xcschememanagement.plist @@ -4,7 +4,7 @@ SchemeUserState - StosVPN.xcscheme_^#shared#^_ + LocalDevVPN.xcscheme_^#shared#^_ orderHint 0 diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.appiconset/Contents.json b/LocalDevVPN/Assets.xcassets/AppIcon.appiconset/Contents.json index 2c36209..93d450e 100644 --- a/LocalDevVPN/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/LocalDevVPN/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,7 +1,7 @@ { "images" : [ { - "filename" : "StosVPN-icon.jpg", + "filename" : "image-5.png", "idiom" : "universal", "platform" : "ios", "size" : "1024x1024" diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.appiconset/StosVPN-icon.jpg b/LocalDevVPN/Assets.xcassets/AppIcon.appiconset/StosVPN-icon.jpg deleted file mode 100644 index 9dc50d5..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.appiconset/StosVPN-icon.jpg and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.appiconset/image-5.png b/LocalDevVPN/Assets.xcassets/AppIcon.appiconset/image-5.png new file mode 100644 index 0000000..2126129 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.appiconset/image-5.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg deleted file mode 100644 index f0a3c06..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/Contents.json b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/Contents.json index c8220ca..9326ce8 100644 --- a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/Contents.json +++ b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/Contents.json @@ -1,7 +1,7 @@ { "images" : [ { - "filename" : "1280x768 copy 3.jpeg", + "filename" : "image-2.png", "idiom" : "tv" } ], diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/image-2.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/image-2.png new file mode 100644 index 0000000..8acb278 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/image-2.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/1280x768.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/1280x768.png deleted file mode 100644 index 7ef95d2..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/1280x768.png and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/Contents.json b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/Contents.json index 27e4230..86db792 100644 --- a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/Contents.json +++ b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/Contents.json @@ -1,7 +1,7 @@ { "images" : [ { - "filename" : "1280x768.png", + "filename" : "image.png", "idiom" : "tv" } ], diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/image.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/image.png new file mode 100644 index 0000000..3df4318 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/image.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg deleted file mode 100644 index f0a3c06..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json index c8220ca..9326ce8 100644 --- a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json +++ b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json @@ -1,7 +1,7 @@ { "images" : [ { - "filename" : "1280x768 copy 3.jpeg", + "filename" : "image-2.png", "idiom" : "tv" } ], diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/image-2.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/image-2.png new file mode 100644 index 0000000..8acb278 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/image-2.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content.png deleted file mode 100644 index 89a14de..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content.png and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content@2x.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content@2x.png deleted file mode 100644 index 4c0fa55..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content@2x.png and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Contents.json b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Contents.json index 1e15e2e..35b8820 100644 --- a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Contents.json +++ b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Contents.json @@ -1,12 +1,12 @@ { "images" : [ { - "filename" : "Content.png", + "filename" : "image-2 1.png", "idiom" : "tv", "scale" : "1x" }, { - "filename" : "Content@2x.png", + "filename" : "image-2.png", "idiom" : "tv", "scale" : "2x" } diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/image-2 1.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/image-2 1.png new file mode 100644 index 0000000..a87565b Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/image-2 1.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/image-2.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/image-2.png new file mode 100644 index 0000000..facd072 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/image-2.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/Contents.json b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/Contents.json index 0de3f67..db44b78 100644 --- a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/Contents.json +++ b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/Contents.json @@ -1,12 +1,12 @@ { "images" : [ { - "filename" : "cool.png", + "filename" : "image.png", "idiom" : "tv", "scale" : "1x" }, { - "filename" : "cool 1.png", + "filename" : "image 1.png", "idiom" : "tv", "scale" : "2x" } diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool 1.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool 1.png deleted file mode 100644 index a7be7ca..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool 1.png and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool.png deleted file mode 100644 index 6cb0562..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool.png and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/image 1.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/image 1.png new file mode 100644 index 0000000..5c08551 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/image 1.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/image.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/image.png new file mode 100644 index 0000000..5c08551 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/image.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content.png deleted file mode 100644 index 5e99d16..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content.png and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content@2x.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content@2x.png deleted file mode 100644 index 5e99d16..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content@2x.png and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json index 1e15e2e..7c01749 100644 --- a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json +++ b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json @@ -1,12 +1,12 @@ { "images" : [ { - "filename" : "Content.png", + "filename" : "image-2.png", "idiom" : "tv", "scale" : "1x" }, { - "filename" : "Content@2x.png", + "filename" : "image-2 1.png", "idiom" : "tv", "scale" : "2x" } diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/image-2 1.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/image-2 1.png new file mode 100644 index 0000000..facd072 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/image-2 1.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/image-2.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/image-2.png new file mode 100644 index 0000000..facd072 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/image-2.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4 2.jpeg b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4 2.jpeg deleted file mode 100644 index 43f56a7..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4 2.jpeg and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4.jpeg b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4.jpeg deleted file mode 100644 index 7e958fe..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4.jpeg and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/Contents.json b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/Contents.json index b9e7578..6fb3940 100644 --- a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/Contents.json +++ b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/Contents.json @@ -1,12 +1,12 @@ { "images" : [ { - "filename" : "1280x768 copy 4.jpeg", + "filename" : "image-3.png", "idiom" : "tv", "scale" : "1x" }, { - "filename" : "1280x768 copy 4 2.jpeg", + "filename" : "image-3 1.png", "idiom" : "tv", "scale" : "2x" } diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/image-3 1.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/image-3 1.png new file mode 100644 index 0000000..7b036cc Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/image-3 1.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/image-3.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/image-3.png new file mode 100644 index 0000000..1fe1efd Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/image-3.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 4.jpeg b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 4.jpeg deleted file mode 100644 index 5be157c..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 4.jpeg and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 5.jpeg b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 5.jpeg deleted file mode 100644 index eb86f22..0000000 Binary files a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 5.jpeg and /dev/null differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/Contents.json b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/Contents.json index 455acd2..7cec0cd 100644 --- a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/Contents.json +++ b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/Contents.json @@ -1,12 +1,12 @@ { "images" : [ { - "filename" : "1280x768 copy 4.jpeg", + "filename" : "image-4.png", "idiom" : "tv", "scale" : "1x" }, { - "filename" : "1280x768 copy 5.jpeg", + "filename" : "image-4 1.png", "idiom" : "tv", "scale" : "2x" } diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/image-4 1.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/image-4 1.png new file mode 100644 index 0000000..f7a16a0 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/image-4 1.png differ diff --git a/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/image-4.png b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/image-4.png new file mode 100644 index 0000000..8c51316 Binary files /dev/null and b/LocalDevVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/image-4.png differ diff --git a/LocalDevVPN/ContentView.swift b/LocalDevVPN/ContentView.swift index 7cddc56..8267c57 100644 --- a/LocalDevVPN/ContentView.swift +++ b/LocalDevVPN/ContentView.swift @@ -655,8 +655,9 @@ struct ContentView: View { Button { showSettings = true } label: { - Image(systemName: "gear") - .foregroundColor(.primary) + Image(systemName: "gearshape.fill") + .font(.system(size: 20, weight: .medium)) + .foregroundColor(.secondary) } } } @@ -727,6 +728,7 @@ struct StatusIndicatorView: View { .font(.subheadline) .foregroundColor(tunnelManager.tunnelStatus == .connected ? .green : .secondary) } + .padding(.horizontal) } private func updateAnimation() { @@ -757,16 +759,39 @@ struct ConnectionButton: View { var body: some View { Button(action: action) { - HStack { - Text(buttonText) - .font(.headline) - .fontWeight(.semibold) - - if tunnelManager.tunnelStatus == .connecting || tunnelManager.tunnelStatus == .disconnecting { - ProgressView() - .progressViewStyle(CircularProgressViewStyle()) - .padding(.leading, 5) + if #available(iOS 19.0, *) { + HStack(spacing: 8) { + if tunnelManager.tunnelStatus == .connecting || tunnelManager.tunnelStatus == .disconnecting { + ProgressView() + .progressViewStyle(CircularProgressViewStyle(tint: .white)) + } + + Text(buttonText) + .font(.system(size: 17, weight: .semibold)) } + .frame(maxWidth: .infinity) + .frame(height: 56) + .glassEffect(.regular.interactive().tint(tunnelManager.tunnelStatus != .connected ? .red : .green), in: RoundedRectangle(cornerRadius: 14, style: .continuous)) + .foregroundColor(.white) + .shadow(color: tunnelManager.tunnelStatus.color.opacity(0.3), radius: 12, x: 0, y: 6) + } else { + HStack(spacing: 8) { + if tunnelManager.tunnelStatus == .connecting || tunnelManager.tunnelStatus == .disconnecting { + ProgressView() + .progressViewStyle(CircularProgressViewStyle(tint: .white)) + } + + Text(buttonText) + .font(.system(size: 17, weight: .semibold)) + } + .frame(maxWidth: .infinity) + .frame(height: 56) + .background( + RoundedRectangle(cornerRadius: 14, style: .continuous) + .fill(buttonBackground) + ) + .foregroundColor(.white) + .shadow(color: tunnelManager.tunnelStatus.color.opacity(0.3), radius: 12, x: 0, y: 6) } .frame(width: 200, height: 50) .background(buttonBackground) @@ -775,6 +800,7 @@ struct ConnectionButton: View { .shadow(color: Color.black.opacity(0.15), radius: 10, x: 0, y: 5) } .disabled(tunnelManager.tunnelStatus == .connecting || tunnelManager.tunnelStatus == .disconnecting) + .padding(.horizontal, 20) } private var buttonText: String { @@ -862,16 +888,21 @@ struct ConnectionStatsView: View { if hours > 0 { return String(format: "%02d:%02d:%02d", hours, minutes, seconds) } else { - return String(format: "%02d:%02d", minutes, seconds) + return LinearGradient( + colors: [Color.blue, Color.blue.opacity(0.8)], + startPoint: .topLeading, + endPoint: .bottomTrailing + ) } } } -struct StatItemView: View { - let title: LocalizedStringKey - let value: String +struct InfoCard: View { let icon: String - + let title: String + let subtitle: String + let accentColor: Color + var body: some View { VStack(alignment: .leading, spacing: 10) { HStack { @@ -879,15 +910,24 @@ struct StatItemView: View { .foregroundColor(.blue) Text(title) - .font(.caption) + .font(.system(size: 15, weight: .semibold)) + .foregroundColor(.primary) + + Text(subtitle) + .font(.system(size: 13, weight: .regular)) .foregroundColor(.secondary) + .lineLimit(2) } Text(value) .font(.system(size: 16, weight: .semibold)) .foregroundColor(.primary) } - .frame(maxWidth: .infinity, alignment: .leading) + .padding(16) + .background( + RoundedRectangle(cornerRadius: 14, style: .continuous) + .fill(Color(UIColor.secondarySystemGroupedBackground)) + ) } } @@ -1151,10 +1191,18 @@ struct HelpView: View { } } Section(header: Text("app_info_header")) { - HStack { - Image(systemName: "exclamationmark.shield") - Text("requires_ios") + if let minVersion = Bundle.main.infoDictionary?["MinimumOSVersion"] as? String { + let message = String( + format: NSLocalizedString("requires_ios", comment: ""), + minVersion + ) + HStack { + Image(systemName: "exclamationmark.shield") + Text(message) + } } + + HStack { Image(systemName: "lock.shield") Text("uses_network_extension")