mirror of
https://github.com/neon443/ShhShell.git
synced 2026-03-11 05:19:13 +00:00
ok cl fuck this shit its so long
This commit is contained in:
@@ -50,6 +50,7 @@
|
||||
A96C90A12E12B87A00724253 /* TextBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = A96C90A02E12B87900724253 /* TextBox.swift */; };
|
||||
A96C90A32E12D53B00724253 /* KeyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = A96C90A22E12D53900724253 /* KeyType.swift */; };
|
||||
A9835C3C2E17CCA500969508 /* TrafficLights.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9835C3B2E17CCA500969508 /* TrafficLights.swift */; };
|
||||
A9835C3E2E17E9C100969508 /* invert.metal in Sources */ = {isa = PBXBuildFile; fileRef = A9835C3D2E17E9C100969508 /* invert.metal */; };
|
||||
A98554552E05535F009051BD /* KeyManagerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A98554542E05535F009051BD /* KeyManagerView.swift */; };
|
||||
A98554592E0553AA009051BD /* KeyManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A98554582E0553AA009051BD /* KeyManager.swift */; };
|
||||
A985545D2E055D4D009051BD /* ConnectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A985545C2E055D4D009051BD /* ConnectionView.swift */; };
|
||||
@@ -156,6 +157,7 @@
|
||||
A96C90A02E12B87900724253 /* TextBox.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextBox.swift; sourceTree = "<group>"; };
|
||||
A96C90A22E12D53900724253 /* KeyType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyType.swift; sourceTree = "<group>"; };
|
||||
A9835C3B2E17CCA500969508 /* TrafficLights.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TrafficLights.swift; sourceTree = "<group>"; };
|
||||
A9835C3D2E17E9C100969508 /* invert.metal */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.metal; path = invert.metal; sourceTree = "<group>"; };
|
||||
A98554542E05535F009051BD /* KeyManagerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyManagerView.swift; sourceTree = "<group>"; };
|
||||
A98554582E0553AA009051BD /* KeyManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyManager.swift; sourceTree = "<group>"; };
|
||||
A985545C2E055D4D009051BD /* ConnectionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConnectionView.swift; sourceTree = "<group>"; };
|
||||
@@ -358,6 +360,7 @@
|
||||
A96C90A02E12B87900724253 /* TextBox.swift */,
|
||||
A9DA97722E0D40C100142DDC /* HostSymbolPreview.swift */,
|
||||
A9835C3B2E17CCA500969508 /* TrafficLights.swift */,
|
||||
A9835C3D2E17E9C100969508 /* invert.metal */,
|
||||
);
|
||||
path = Misc;
|
||||
sourceTree = "<group>";
|
||||
@@ -630,6 +633,7 @@
|
||||
A98554612E058433009051BD /* HostsManager.swift in Sources */,
|
||||
A985545D2E055D4D009051BD /* ConnectionView.swift in Sources */,
|
||||
A9FD37592E143D74005319A8 /* GenericPasswordConvertible.swift in Sources */,
|
||||
A9835C3E2E17E9C100969508 /* invert.metal in Sources */,
|
||||
A98554592E0553AA009051BD /* KeyManager.swift in Sources */,
|
||||
A9C897EF2DF1A9A400EF9A5F /* SSHHandler.swift in Sources */,
|
||||
A9D819312E102D8700442D38 /* HostkeysView.swift in Sources */,
|
||||
@@ -820,7 +824,7 @@
|
||||
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
|
||||
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
|
||||
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 16;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 17;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
@@ -857,7 +861,7 @@
|
||||
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
|
||||
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
|
||||
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 16;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 17;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
|
||||
@@ -52,8 +52,6 @@ struct TrafficLightYellow: View {
|
||||
}
|
||||
|
||||
struct TrafficLightGreen: View {
|
||||
@State var enabled: Bool = true
|
||||
|
||||
var body: some View {
|
||||
let background: Color = .green
|
||||
let foreground: Color = ColorCodable(
|
||||
@@ -66,46 +64,16 @@ struct TrafficLightGreen: View {
|
||||
.resizable().scaledToFit()
|
||||
.symbolRenderingMode(.palette)
|
||||
.foregroundStyle(background)
|
||||
if !enabled {
|
||||
RoundedRectangle(cornerRadius: 5)
|
||||
.foregroundStyle(foreground)
|
||||
.scaleEffect(0.6)
|
||||
.aspectRatio(1, contentMode: .fit)
|
||||
.clipShape(RoundedRectangle(cornerRadius: 5))
|
||||
Rectangle()
|
||||
.foregroundStyle(background)
|
||||
.scaleEffect(0.8)
|
||||
.aspectRatio(0.2, contentMode: .fit)
|
||||
.rotationEffect(.degrees(45))
|
||||
} else {
|
||||
ZStack(alignment: .center) {
|
||||
Group {
|
||||
Rectangle()
|
||||
.foregroundStyle(foreground)
|
||||
.scaleEffect(0.6)
|
||||
.rotationEffect(.degrees(45))
|
||||
.aspectRatio(1, contentMode: .fit)
|
||||
.clipShape(RoundedRectangle(cornerRadius: 5))
|
||||
}
|
||||
VStack(spacing: 0) {
|
||||
VStack(alignment: .trailing) {
|
||||
Rectangle()
|
||||
.scaleEffect(0.7, anchor: .bottomTrailing)
|
||||
.aspectRatio(1, contentMode: .fit)
|
||||
}
|
||||
.aspectRatio(2, contentMode: .fit)
|
||||
.border(.red)
|
||||
VStack(alignment: .leading) {
|
||||
Rectangle()
|
||||
.scaleEffect(0.7, anchor: .topLeading)
|
||||
.aspectRatio(1, contentMode: .fit)
|
||||
}
|
||||
.aspectRatio(2, contentMode: .fit)
|
||||
.border(.red)
|
||||
}
|
||||
.border(.blue)
|
||||
}
|
||||
}
|
||||
RoundedRectangle(cornerRadius: 5)
|
||||
.foregroundStyle(foreground)
|
||||
.scaleEffect(0.6)
|
||||
.aspectRatio(1, contentMode: .fit)
|
||||
.clipShape(RoundedRectangle(cornerRadius: 5))
|
||||
Rectangle()
|
||||
.foregroundStyle(background)
|
||||
.scaleEffect(0.8)
|
||||
.aspectRatio(0.2, contentMode: .fit)
|
||||
.rotationEffect(.degrees(45))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
13
ShhShell/Views/Misc/invert.metal
Normal file
13
ShhShell/Views/Misc/invert.metal
Normal file
@@ -0,0 +1,13 @@
|
||||
//
|
||||
// invert.metal
|
||||
// ShhShell
|
||||
//
|
||||
// Created by neon443 on 04/07/2025.
|
||||
//
|
||||
|
||||
#include <metal_stdlib>
|
||||
using namespace metal;
|
||||
|
||||
[[ stitchable ]] half4 invert(float2 pos, half4 color) {
|
||||
return half4(0, 1 - color.g, 1 - color.b, 1 - color.a);
|
||||
}
|
||||
Reference in New Issue
Block a user