macos: add ErrorView

This commit is contained in:
Mitchell Hashimoto 2023-02-14 16:11:47 -08:00
parent 9bd527fe00
commit c438d72f13
No known key found for this signature in database
GPG Key ID: 523D5DC389D273BC
7 changed files with 57 additions and 6 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 KiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"filename" : "199110421-9ff5fc30-a244-441e-9882-26070662adf9.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "199110421-9ff5fc30-a244-441e-9882-26070662adf9 1.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "199110421-9ff5fc30-a244-441e-9882-26070662adf9 2.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@ -7,6 +7,7 @@
objects = {
/* Begin PBXBuildFile section */
A535B9DA299C569B0017E2E4 /* ErrorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A535B9D9299C569B0017E2E4 /* ErrorView.swift */; };
A5B30535299BEAAA0047F10C /* GhosttyApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5B30534299BEAAA0047F10C /* GhosttyApp.swift */; };
A5B30537299BEAAA0047F10C /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5B30536299BEAAA0047F10C /* ContentView.swift */; };
A5B30539299BEAAB0047F10C /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A5B30538299BEAAB0047F10C /* Assets.xcassets */; };
@ -14,6 +15,7 @@
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
A535B9D9299C569B0017E2E4 /* ErrorView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ErrorView.swift; sourceTree = "<group>"; };
A5B30531299BEAAA0047F10C /* Ghostty.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Ghostty.app; sourceTree = BUILT_PRODUCTS_DIR; };
A5B30534299BEAAA0047F10C /* GhosttyApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GhosttyApp.swift; sourceTree = "<group>"; };
A5B30536299BEAAA0047F10C /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
@ -40,6 +42,7 @@
A5D495A0299BEC2200DD1313 /* Preview Content */,
A5B30534299BEAAA0047F10C /* GhosttyApp.swift */,
A5B30536299BEAAA0047F10C /* ContentView.swift */,
A535B9D9299C569B0017E2E4 /* ErrorView.swift */,
);
path = Sources;
sourceTree = "<group>";
@ -148,6 +151,7 @@
buildActionMask = 2147483647;
files = (
A5B30537299BEAAA0047F10C /* ContentView.swift in Sources */,
A535B9DA299C569B0017E2E4 /* ErrorView.swift in Sources */,
A5B30535299BEAAA0047F10C /* GhosttyApp.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
@ -275,12 +279,12 @@
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = NO;
CODE_SIGN_ENTITLEMENTS = Ghostty.entitlements;
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "-";
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_ASSET_PATHS = "\"Sources/Preview Content\"";
DEVELOPMENT_TEAM = "";
DEVELOPMENT_TEAM = GK79KXBF4F;
ENABLE_HARDENED_RUNTIME = YES;
ENABLE_PREVIEWS = YES;
GENERATE_INFOPLIST_FILE = YES;
@ -307,12 +311,12 @@
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = NO;
CODE_SIGN_ENTITLEMENTS = Ghostty.entitlements;
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "-";
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_ASSET_PATHS = "\"Sources/Preview Content\"";
DEVELOPMENT_TEAM = "";
DEVELOPMENT_TEAM = GK79KXBF4F;
ENABLE_HARDENED_RUNTIME = YES;
ENABLE_PREVIEWS = YES;
GENERATE_INFOPLIST_FILE = YES;

View File

@ -0,0 +1,24 @@
import SwiftUI
struct ErrorView: View {
var body: some View {
HStack {
Image("AppIconImage")
.resizable()
.scaledToFit()
.frame(width: 128, height: 128)
VStack(alignment: .leading) {
Text("Oh, no. 😭").font(.title)
Text("Something went fatally wrong.\nCheck the logs and restart Ghostty.")
}
}
.padding()
}
}
struct ErrorView_Previews: PreviewProvider {
static var previews: some View {
ErrorView()
}
}

View File

@ -16,9 +16,9 @@ struct GhosttyApp: App {
WindowGroup {
switch ghostty.readiness {
case .error:
Text("Error")
ErrorView()
case .ready:
Text("Hello!").font(.largeTitle)
ContentView()
}
}
}