Skip to content

Commit

Permalink
Improve Community and FAQ sections
Browse files Browse the repository at this point in the history
  • Loading branch information
halo committed Feb 6, 2024
1 parent fb66531 commit 839574b
Show file tree
Hide file tree
Showing 4 changed files with 110 additions and 47 deletions.
2 changes: 1 addition & 1 deletion LinkLiar.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -421,9 +421,9 @@
children = (
C2456FB22B3AFB27007D7AEA /* WelcomeView.swift */,
C24570242B41F996007D7AEA /* CommunityView.swift */,
C24570232B41F996007D7AEA /* FaqView.swift */,
C2456FB42B3AFB8F007D7AEA /* PreferencesView.swift */,
C2456FAA2B3AF888007D7AEA /* TroubleshootView.swift */,
C24570232B41F996007D7AEA /* FaqView.swift */,
C24570222B41F996007D7AEA /* UninstallView.swift */,
C2456FB82B3B003E007D7AEA /* VendorsView.swift */,
C2456FAC2B3AF976007D7AEA /* FallbackPolicyView.swift */,
Expand Down
101 changes: 59 additions & 42 deletions LinkLiar/Views/Settings/Sections/CommunityView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -9,65 +9,82 @@ extension SettingsView {

var body: some View {
ScrollView {
Image(systemName: "figure.wave")
.resizable()
.aspectRatio(contentMode: .fill)
.frame(width: 25, height: 22)
.padding(.top, 20)
.padding(.bottom, 12)
Text("Discussions, Suggestions, Questions").font(.title3)
VStack(alignment: .center) {
Image(systemName: "bubble.left.and.bubble.right.fill")
.resizable()
.aspectRatio(contentMode: .fill)
.frame(width: 60, height: 60)
.padding(.bottom, 3)
Text("LinkLiar Community").bold()
}.padding()

GroupBox {
VStack {
Image(systemName: "figure.wave")
.resizable()
.aspectRatio(contentMode: .fill)
.frame(width: 20)
Text("Say Hello!").italic()
}.padding(.top)

HStack {
VStack(alignment: .leading) {
Text("If you're just wondering about something, would like to give feedback, or pitch an idea for improvement, ") +
Text("please go open ")
Link(Urls.githubDiscussions, destination: Urls.githubDiscussionsURL)
Text("and see if you can start a discussion. ") +
Text("While it can't be guaranteed that you'll get an immediate answer, ") +
Text(" you can be sure that it will be read within hours.")
Text("If you have questions, or ideas for improvement, start a discussion at")
HStack {
Spacer()
Link(Urls.githubDiscussionsURL.host! + Urls.githubDiscussionsURL.path, destination: Urls.githubDiscussionsURL)
Spacer()
}.padding(2)
Text("You may not get an immediate answer, but it will be read within hours.")
}
Spacer()
}
}.padding(5)
}.padding(.bottom)

Image(systemName: "cloud.drizzle.fill")
.resizable()
.aspectRatio(contentMode: .fill)
.frame(width: 35, height: 30)
Text("Bugs, Issues, Problems").font(.title3)

GroupBox {
VStack {
Image(systemName: "cloud.drizzle.fill")
.resizable()
.aspectRatio(contentMode: .fill)
.frame(width: 30)
Text("Report problems").italic()
}.padding(.top)

HStack {
VStack(alignment: .leading) {
Text("It can happen that LinkLiar doesn't work properly in certain cases. ") +
Text("If you believe that you encountered a reproducable error, please head over to ")
Link(Urls.githubIssues, destination: Urls.githubIssuesURL)
Text("and see if there already is an issue open for your problem. ") +
Text("If not, please feel free to open a new issue.")
Text("If you encountered a reproducable error, please look for issues at ")
HStack {
Spacer()
Link(Urls.githubIssuesURL.host! + Urls.githubIssuesURL.path, destination: Urls.githubIssuesURL)
Spacer()
}.padding(2)
Text("It can happen that LinkLiar doesn't work properly, so tell us about it. ")
}
Spacer()
}
Spacer()
}.padding(5)
}.padding(.bottom)

Image(systemName: "swift")
.resizable()
.aspectRatio(contentMode: .fill)
.frame(width: 34, height: 25)
.padding(.top, 12)
Text("Programming").font(.title3)

GroupBox {
VStack {
Image(systemName: "keyboard.fill")
.resizable()
.aspectRatio(contentMode: .fill)
.frame(width: 31)
Text("Learn programming").italic()
}.padding(.top)

HStack {
VStack(alignment: .leading) {
Text("Maybe you want to improve your programming skills or just make sure that LinkLiar ") +
Text("is not some fishy malware. You can do so at ")
Link(Urls.githubRepo, destination: Urls.githubRepoURL)
Text("to check out the programming code. ") +
Text("You can fork the repository, make changes to the code, and open pull requests.")
Text("Fork the repository, make changes to code, and open pull requests at")
HStack {
Spacer()
Link(Urls.githubRepoURL.host! + Urls.githubRepoURL.path, destination: Urls.githubRepoURL)
Spacer()
}.padding(2)
Text("It's always hard to get started, so we aim for quality documentation.")
}
Spacer()
}
Spacer()
}.padding(5)
}.padding(.bottom)

}.padding()
Expand All @@ -77,5 +94,5 @@ extension SettingsView {

#Preview {
let state = LinkState()
return SettingsView.CommunityView().environment(state)
return SettingsView.CommunityView().environment(state).frame(width: 500)
}
52 changes: 49 additions & 3 deletions LinkLiar/Views/Settings/Sections/FaqView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,60 @@ extension SettingsView {
@Environment(LinkState.self) private var state

var body: some View {
VStack {
Text("Preferences...")
ScrollView {
VStack(alignment: .center) {
Image(systemName: "book.fill")
.resizable()
.aspectRatio(contentMode: .fill)
.frame(width: 60, height: 60)
.padding(.bottom, 3)
Text("Frequently Asked Questions").bold()
}.padding()

GroupBox("LinkLiar does not provide anonymity.", content: {
HStack {
Text("""
Even with a modified MAC address, the negotiation packets \
between your network interface and an access point reveal what \
operating system you use. Not to mention, that your traffic may be inspected to de-anonymize you.
""")
Spacer()
}
}).padding(.bottom)

GroupBox("LinkLiar does not prevent MAC address leaks.", content: {
HStack {
Text("""
You original hardware MAC address will be revealed when you cold boot your computer and Wi-Fi \
is turned on. MAC address modifications do persist when sleeping and waking your computer, however.
""")
Spacer()
}
}).padding(.bottom)

GroupBox("Changing your MAC address makes you loose your connection.", content: {
HStack {
Text("""
If you change a MAC address while the interface is connected, you will loose connection. \
The interface may attempt to reconnect, which normally succeeds within seconds (now using the new MAC address).
""")
Spacer()
}
}).padding(.bottom)

GroupBox("Wi-Fi needs to be on for MAC modification.", content: {
HStack {
Text("When your Wi-Fi (aka Airport) is turned off, you cannot change its MAC address. You might need to turn it on first.")
Spacer()
}
}).padding(.bottom)

}.padding()
}
}
}

#Preview {
let state = LinkState()
return SettingsView.FaqView().environment(state)
return SettingsView.FaqView().environment(state).frame(width: 500)
}
2 changes: 1 addition & 1 deletion LinkTools/Constants/Urls.swift
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import Foundation

class Urls {
static let githubRepo = "https://github.com/halo/LinkLiar"
static let githubRepoURL = URL(string: githubIssues)!
static let githubRepoURL = URL(string: githubRepo)!

static let githubIssues = "\(githubRepo)/issues"
static let githubIssuesURL = URL(string: githubIssues)!
Expand Down

0 comments on commit 839574b

Please sign in to comment.