From caa42fa898fb47ad6c9b6f8e5ec84c6e3d4632bc Mon Sep 17 00:00:00 2001 From: Stefan Ceriu Date: Tue, 22 Feb 2022 17:33:03 +0200 Subject: [PATCH] Add login screen return key actions, made home screen header smaller. --- .../LoginScreen/View/LoginScreen.swift | 9 +++-- .../Modules/HomeScreen/View/HomeScreen.swift | 34 +++++++++---------- 2 files changed, 23 insertions(+), 20 deletions(-) diff --git a/ElementX/Sources/Modules/Authentication/LoginScreen/View/LoginScreen.swift b/ElementX/Sources/Modules/Authentication/LoginScreen/View/LoginScreen.swift index e03890cd9..6913e372c 100644 --- a/ElementX/Sources/Modules/Authentication/LoginScreen/View/LoginScreen.swift +++ b/ElementX/Sources/Modules/Authentication/LoginScreen/View/LoginScreen.swift @@ -27,11 +27,11 @@ struct LoginScreen: View { .textFieldStyle(.roundedBorder) .disableAutocorrection(true) .autocapitalization(.none) - SecureField("Enter a password", text: $context.password) + SecureField("Password", text: $context.password) .textFieldStyle(.roundedBorder) - Button { context.send(viewAction: .login) } label: { - Text("Login") + Button("Login") { + context.send(viewAction: .login) } .buttonStyle(.borderedProminent) .padding(.horizontal, 50) @@ -39,6 +39,9 @@ struct LoginScreen: View { .padding(.horizontal, 8.0) .navigationTitle("Login") .navigationBarTitleDisplayMode(.inline) + .onSubmit { + context.send(viewAction: .login) + } } .navigationViewStyle(StackNavigationViewStyle()) } diff --git a/ElementX/Sources/Modules/HomeScreen/View/HomeScreen.swift b/ElementX/Sources/Modules/HomeScreen/View/HomeScreen.swift index ee432d786..1b5df61a8 100644 --- a/ElementX/Sources/Modules/HomeScreen/View/HomeScreen.swift +++ b/ElementX/Sources/Modules/HomeScreen/View/HomeScreen.swift @@ -26,22 +26,6 @@ struct HomeScreen: View { var body: some View { NavigationView { VStack(spacing: 16.0) { - HStack { - if let avatar = context.viewState.userAvatar { - Image(uiImage: avatar) - .resizable() - .scaledToFill() - .frame(width: 40, height: 40, alignment: .center) - .mask(Circle()) - } else { - let _ = context.send(viewAction: .loadUserAvatar) - } - Text("Hello, \(context.viewState.userDisplayName)!") - .font(.subheadline) - .fontWeight(.bold) - } - .padding(.vertical, 32.0) - if context.viewState.isLoadingRooms { VStack { Text("Loading rooms") @@ -81,14 +65,30 @@ struct HomeScreen: View { } } } - .headerProminence(.increased) .listStyle(.plain) } Spacer() } + .ignoresSafeArea(.all, edges: .bottom) .navigationBarTitleDisplayMode(.inline) .toolbar { + ToolbarItem(placement: .navigationBarLeading) { + HStack { + if let avatar = context.viewState.userAvatar { + Image(uiImage: avatar) + .resizable() + .scaledToFill() + .frame(width: 40, height: 40, alignment: .center) + .mask(Circle()) + } else { + let _ = context.send(viewAction: .loadUserAvatar) + } + Text("Hello, \(context.viewState.userDisplayName)!") + .font(.subheadline) + .fontWeight(.bold) + } + } ToolbarItem(placement: .navigationBarTrailing) { Button("Logout") { context.send(viewAction: .logout)