diff options
| author | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-11-27 23:38:04 +0100 |
|---|---|---|
| committer | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-11-27 23:38:04 +0100 |
| commit | 213710bf5bd6413c747bf126db50816ef5de5a6e (patch) | |
| tree | 912f8cf87955a08077c92fea8ad934f50b7ab975 /Hotline/iOS | |
| parent | f466b21dc02f78c984ba6748e703f6780a7a0db4 (diff) | |
| parent | 6a95b53616a4abfa306ddce43151cf4fefbd20ed (diff) | |
Merge remote-tracking branch 'upstream/main'
Diffstat (limited to 'Hotline/iOS')
| -rw-r--r-- | Hotline/iOS/ChatView.swift | 23 | ||||
| -rw-r--r-- | Hotline/iOS/ServerView.swift | 2 | ||||
| -rw-r--r-- | Hotline/iOS/TrackerView.swift | 52 |
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) |