Compare commits

..

2 Commits

Author SHA1 Message Date
Shadowfacts 2b50609e5c Fix animating poll configuration button size change when selected option
changes
2021-11-20 11:37:09 -05:00
Shadowfacts 57cb0614a9 Fix keyboard getting dismissed when scrolling autocomplete suggestions
Presentation controller takes care of dismissing keyboard when swipe
down in main scroll view starts
2021-11-20 11:28:37 -05:00
2 changed files with 5 additions and 9 deletions

View File

@ -59,19 +59,21 @@ struct ComposePollView: View {
} }
HStack { HStack {
// use .animation(nil) on the binding and .frame(maxWidth: .infinity) on labels so frame doesn't have a size change animation when the text changes // use .animation(nil) on pickers so frame doesn't have a size change animation when the text changes
Picker(selection: $poll.multiple.animation(nil), label: Text(poll.multiple ? "Allow multiple choices" : "Single choice").frame(maxWidth: .infinity)) { Picker(selection: $poll.multiple, label: Text(poll.multiple ? "Allow multiple choices" : "Single choice")) {
Text("Allow multiple choices").tag(true) Text("Allow multiple choices").tag(true)
Text("Single choice").tag(false) Text("Single choice").tag(false)
} }
.animation(nil)
.pickerStyle(MenuPickerStyle()) .pickerStyle(MenuPickerStyle())
.frame(maxWidth: .infinity) .frame(maxWidth: .infinity)
Picker(selection: $duration.animation(nil), label: Text(verbatim: ComposePollView.formatter.string(from: duration.timeInterval)!).frame(maxWidth: .infinity)) { Picker(selection: $duration, label: Text(verbatim: ComposePollView.formatter.string(from: duration.timeInterval)!)) {
ForEach(Duration.allCases, id: \.self) { (duration) in ForEach(Duration.allCases, id: \.self) { (duration) in
Text(ComposePollView.formatter.string(from: duration.timeInterval)!).tag(duration) Text(ComposePollView.formatter.string(from: duration.timeInterval)!).tag(duration)
} }
} }
.animation(nil)
.pickerStyle(MenuPickerStyle()) .pickerStyle(MenuPickerStyle())
.frame(maxWidth: .infinity) .frame(maxWidth: .infinity)
} }

View File

@ -65,7 +65,6 @@ struct ComposeView: View {
autocompleteSuggestions autocompleteSuggestions
} }
.onAppear(perform: self.didAppear)
.navigationBarTitle("Compose") .navigationBarTitle("Compose")
.actionSheet(isPresented: $uiState.isShowingSaveDraftSheet, content: self.saveAndCloseSheet) .actionSheet(isPresented: $uiState.isShowingSaveDraftSheet, content: self.saveAndCloseSheet)
.alert(isPresented: $isShowingPostErrorAlert) { .alert(isPresented: $isShowingPostErrorAlert) {
@ -154,11 +153,6 @@ struct ComposeView: View {
.disabled(!postButtonEnabled) .disabled(!postButtonEnabled)
} }
private func didAppear() {
let proxy = UIScrollView.appearance(whenContainedInInstancesOf: [ComposeHostingController.self])
proxy.keyboardDismissMode = .interactive
}
private func cancel() { private func cancel() {
if Preferences.shared.automaticallySaveDrafts { if Preferences.shared.automaticallySaveDrafts {
// draft is already stored in drafts manager, drafts manager is saved by ComposeHostingController.viewWillDisappear // draft is already stored in drafts manager, drafts manager is saved by ComposeHostingController.viewWillDisappear