aboutsummaryrefslogtreecommitdiff
path: root/Hotline/iOS
diff options
context:
space:
mode:
authorRuben Beltran del Rio <git@r.bdr.sh>2025-11-27 23:38:04 +0100
committerRuben Beltran del Rio <git@r.bdr.sh>2025-11-27 23:38:04 +0100
commit213710bf5bd6413c747bf126db50816ef5de5a6e (patch)
tree912f8cf87955a08077c92fea8ad934f50b7ab975 /Hotline/iOS
parentf466b21dc02f78c984ba6748e703f6780a7a0db4 (diff)
parent6a95b53616a4abfa306ddce43151cf4fefbd20ed (diff)
Merge remote-tracking branch 'upstream/main'
Diffstat (limited to 'Hotline/iOS')
-rw-r--r--Hotline/iOS/ChatView.swift23
-rw-r--r--Hotline/iOS/ServerView.swift2
-rw-r--r--Hotline/iOS/TrackerView.swift52
3 files changed, 38 insertions, 39 deletions
diff --git a/Hotline/iOS/ChatView.swift b/Hotline/iOS/ChatView.swift
index e5105d0..2484310 100644
--- a/Hotline/iOS/ChatView.swift
+++ b/Hotline/iOS/ChatView.swift
@@ -28,7 +28,7 @@ struct ChatView: View {
VStack(alignment: .center) {
if let bannerImage = self.model.bannerImage {
- Image(uiImage: bannerImage)
+ bannerImage
.resizable()
.scaledToFit()
.frame(maxWidth: 468.0)
@@ -52,17 +52,24 @@ struct ChatView: View {
}
.frame(maxWidth: .infinity)
.padding()
- } else if msg.type == .status {
+ }
+ else if msg.type == .signOut {
HStack {
Spacer()
- Text(msg.text)
- .lineLimit(1)
- .truncationMode(.middle)
- .opacity(0.3)
+ Label {
+ Text(msg.text)
+ .font(.footnote)
+ } icon: {
+ Image(systemName: "arrow.up.circle.fill")
+ }
+ .labelStyle(.titleAndIcon)
+ .foregroundStyle(Color.red)
+ .opacity(0.8)
Spacer()
}
- .padding()
- } else {
+ .padding(.vertical, 6)
+ }
+ else {
HStack(alignment: .firstTextBaseline) {
if let username = msg.username {
Text("**\(username):** \(msg.text)")
diff --git a/Hotline/iOS/ServerView.swift b/Hotline/iOS/ServerView.swift
index 11f57aa..2786c27 100644
--- a/Hotline/iOS/ServerView.swift
+++ b/Hotline/iOS/ServerView.swift
@@ -1,7 +1,7 @@
import SwiftUI
struct ServerView: View {
- @Environment(Hotline.self) private var model: Hotline
+ @Environment(HotlineState.self) private var model: HotlineState
@Environment(\.colorScheme) var colorScheme
enum Tab {
diff --git a/Hotline/iOS/TrackerView.swift b/Hotline/iOS/TrackerView.swift
index 43b1916..b2aab61 100644
--- a/Hotline/iOS/TrackerView.swift
+++ b/Hotline/iOS/TrackerView.swift
@@ -10,7 +10,7 @@ struct TrackerConnectView: View {
@State private var login = ""
@State private var password = ""
// @State private var connecting = false
-
+
func connectionStatusToProgress(status: HotlineClientStatus) -> Double {
switch status {
case .disconnected:
@@ -54,14 +54,15 @@ struct TrackerConnectView: View {
.background {
Color.black.cornerRadius(8).blendMode(.overlay)
}
- } else {
+ }
+ else {
ProgressView(value: connectionStatusToProgress(status: model.status))
.frame(minHeight: 10)
.accentColor(colorScheme == .dark ? .white : .black)
}
-
+
Spacer()
-
+
HStack {
Button {
dismiss()
@@ -75,28 +76,23 @@ struct TrackerConnectView: View {
.frame(maxWidth: .infinity)
.foregroundColor(colorScheme == .dark ? .white : .black)
.background(
- colorScheme == .dark
- ? LinearGradient(
- gradient: Gradient(colors: [Color(white: 0.4), Color(white: 0.3)]), startPoint: .top,
- endPoint: .bottom)
- : LinearGradient(
- gradient: Gradient(colors: [Color(white: 0.95), Color(white: 0.91)]),
- startPoint: .top, endPoint: .bottom)
+ colorScheme == .dark ?
+ LinearGradient(gradient: Gradient(colors: [Color(white: 0.4), Color(white: 0.3)]), startPoint: .top, endPoint: .bottom)
+ :
+ LinearGradient(gradient: Gradient(colors: [Color(white: 0.95), Color(white: 0.91)]), startPoint: .top, endPoint: .bottom)
)
.overlay(
- RoundedRectangle(cornerRadius: 10.0).stroke(.black, lineWidth: 3).opacity(
- colorScheme == .dark ? 0.0 : 0.2)
+ RoundedRectangle(cornerRadius: 10.0).stroke(.black, lineWidth: 3).opacity(colorScheme == .dark ? 0.0 : 0.2)
)
.cornerRadius(10.0)
Button {
- let s = Server(
- name: nil, description: nil, address: address, port: HotlinePorts.DefaultServerPort,
- users: 0, login: login, password: password)
+ let s = Server(name: nil, description: nil, address: address, port: HotlinePorts.DefaultServerPort, users: 0, login: login, password: password)
server = s
self.model.login(server: s, username: "bolt", iconID: 128) { success in
if !success {
print("FAILED LOGIN??")
- } else {
+ }
+ else {
self.model.sendUserInfo(username: "bolt", iconID: 128)
self.model.getUserList()
}
@@ -110,28 +106,24 @@ struct TrackerConnectView: View {
.frame(maxWidth: .infinity)
.foregroundColor(colorScheme == .dark ? .white : .black)
.background(
- colorScheme == .dark
- ? LinearGradient(
- gradient: Gradient(colors: [Color(white: 0.4), Color(white: 0.3)]), startPoint: .top,
- endPoint: .bottom)
- : LinearGradient(
- gradient: Gradient(colors: [Color(white: 0.95), Color(white: 0.91)]),
- startPoint: .top, endPoint: .bottom)
+ colorScheme == .dark ?
+ LinearGradient(gradient: Gradient(colors: [Color(white: 0.4), Color(white: 0.3)]), startPoint: .top, endPoint: .bottom)
+ :
+ LinearGradient(gradient: Gradient(colors: [Color(white: 0.95), Color(white: 0.91)]), startPoint: .top, endPoint: .bottom)
)
.overlay(
- RoundedRectangle(cornerRadius: 10.0).stroke(.black, lineWidth: 3).opacity(
- colorScheme == .dark ? 0.0 : 0.2)
+ RoundedRectangle(cornerRadius: 10.0).stroke(.black, lineWidth: 3).opacity(colorScheme == .dark ? 0.0 : 0.2)
)
.cornerRadius(10.0)
}
.padding()
}
.padding()
- .onChange(of: model.status) {
+ .onChange(of: self.model.status) {
print("MODEL STATUS CHANGED")
- if model.server != nil && server != nil && model.server! == server! {
- if model.status == .loggedIn {
- dismiss()
+ if self.model.server != nil && self.server != nil && self.model.server! == server! {
+ if self.model.status == .loggedIn {
+ self.dismiss()
}
// else {
// connecting = (model.status != .disconnected)