Add login screen return key actions, made home screen header smaller.

This commit is contained in:
Stefan Ceriu
2022-02-22 17:33:03 +02:00
parent cfc24cd48d
commit caa42fa898
2 changed files with 23 additions and 20 deletions

View File

@@ -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())
}

View File

@@ -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)