Refactor CancelToolbarItem

This commit is contained in:
Thomas Ricouard 2024-01-23 08:13:45 +01:00
parent ba071eb4c8
commit 016e4d5d57
11 changed files with 26 additions and 32 deletions

View file

@ -65,13 +65,7 @@ public struct ReportView: View {
}
}
ToolbarItem(placement: .navigationBarLeading) {
Button {
dismiss()
} label: {
Text("action.cancel")
}
}
CancelToolbarItem()
}
}
}

View file

@ -88,9 +88,7 @@ struct AddAccountView: View {
#endif
.toolbar {
if !appAccountsManager.availableAccounts.isEmpty {
ToolbarItem(placement: .navigationBarLeading) {
Button("action.cancel", action: { dismiss() })
}
CancelToolbarItem()
}
}
.onAppear {

View file

@ -62,9 +62,7 @@ struct EditTagGroupView: View {
.scrollDismissesKeyboard(.interactively)
#endif
.toolbar {
ToolbarItem(placement: .navigationBarLeading) {
Button("action.cancel", action: { dismiss() })
}
CancelToolbarItem()
ToolbarItem(placement: .navigationBarTrailing) {
Button("action.save", action: { save() })
.disabled(!tagGroup.isValid)

View file

@ -57,9 +57,7 @@ struct AddRemoteTimelineView: View {
.scrollDismissesKeyboard(.immediately)
#endif
.toolbar {
ToolbarItem(placement: .navigationBarLeading) {
Button("action.cancel", action: { dismiss() })
}
CancelToolbarItem()
}
.onChange(of: instanceName) { _, newValue in
instanceNamePublisher.send(newValue)

View file

@ -17415,6 +17415,7 @@
},
"action.cancel" : {
"comment" : "MARK: Common strings",
"extractionState" : "stale",
"localizations" : {
"be" : {
"stringUnit" : {

View file

@ -220,11 +220,7 @@ public struct EditAccountView: View {
@ToolbarContentBuilder
private var toolbarContent: some ToolbarContent {
ToolbarItem(placement: .navigationBarLeading) {
Button("action.cancel") {
dismiss()
}
}
CancelToolbarItem()
ToolbarItem(placement: .navigationBarTrailing) {
Button {

View file

@ -0,0 +1,14 @@
import SwiftUI
public struct CancelToolbarItem: ToolbarContent {
@Environment(\.dismiss) private var dismiss
public init() { }
public var body: some ToolbarContent {
ToolbarItem(placement: .navigationBarLeading) {
Button("action.cancel", role: .cancel, action: { dismiss() })
.keyboardShortcut(.cancelAction)
}
}
}

View file

@ -126,6 +126,9 @@ struct AvatarImage: View {
RoundedRectangle(cornerRadius: config.cornerRadius)
.stroke(.primary.opacity(0.25), lineWidth: 1)
)
} else {
RoundedRectangle(cornerRadius: config.cornerRadius)
.stroke(.primary.opacity(0.25), lineWidth: 1)
}
}
}

View file

@ -52,9 +52,7 @@ extension StatusEditor {
}
}
.toolbar {
ToolbarItem(placement: .navigationBarLeading) {
Button("action.cancel", action: { dismiss() })
}
CancelToolbarItem()
}
.scrollContentBackground(.hidden)
.navigationTitle("status.editor.emojis.navigation-title")

View file

@ -98,11 +98,7 @@ extension StatusEditor {
}
}
ToolbarItem(placement: .navigationBarLeading) {
Button("action.cancel") {
dismiss()
}
}
CancelToolbarItem()
}
.preferredColorScheme(theme.selectedScheme == .dark ? .dark : .light)
}

View file

@ -40,9 +40,7 @@ extension StatusEditor {
}
}
.toolbar {
ToolbarItem(placement: .navigationBarLeading) {
Button("action.cancel", action: { dismiss() })
}
CancelToolbarItem()
}
.scrollContentBackground(.hidden)
.background(theme.secondaryBackgroundColor)