diff --git a/submodules/Display/Source/Navigation/NavigationContainer.swift b/submodules/Display/Source/Navigation/NavigationContainer.swift index 710a05cd44..bc1901c7f5 100644 --- a/submodules/Display/Source/Navigation/NavigationContainer.swift +++ b/submodules/Display/Source/Navigation/NavigationContainer.swift @@ -470,7 +470,10 @@ public final class NavigationContainer: ASDisplayNode, UIGestureRecognizerDelega if let _ = strongSelf.state.transition, let top = strongSelf.state.top, viewTreeContainsFirstResponder(view: top.value.view) { strongSelf.syncKeyboard(leftEdge: topFrame.minX, transition: transition) } else { - strongSelf.syncKeyboard(leftEdge: topFrame.minX - bottomFrame.width, transition: transition) + if let hasActiveInput = strongSelf.state.top?.value.hasActiveInput, hasActiveInput { + } else { + strongSelf.syncKeyboard(leftEdge: topFrame.minX - bottomFrame.width, transition: transition) + } } case .pop: strongSelf.syncKeyboard(leftEdge: topFrame.minX, transition: transition) diff --git a/submodules/MediaPickerUI/Sources/MediaGroupsScreen.swift b/submodules/MediaPickerUI/Sources/MediaGroupsScreen.swift index f394b1228f..0f9337ae58 100644 --- a/submodules/MediaPickerUI/Sources/MediaGroupsScreen.swift +++ b/submodules/MediaPickerUI/Sources/MediaGroupsScreen.swift @@ -283,8 +283,6 @@ public final class MediaGroupsScreen: ViewController { func updatePresentationData(_ presentationData: PresentationData) { self.presentationData = presentationData - - self.backgroundColor = presentationData.theme.list.plainBackgroundColor } private func enqueueTransaction(_ transaction: MediaGroupsTransition) { diff --git a/submodules/MediaPickerUI/Sources/MediaPickerScreen.swift b/submodules/MediaPickerUI/Sources/MediaPickerScreen.swift index 8f4b11f282..5a6fa6749e 100644 --- a/submodules/MediaPickerUI/Sources/MediaPickerScreen.swift +++ b/submodules/MediaPickerUI/Sources/MediaPickerScreen.swift @@ -1381,24 +1381,24 @@ public final class MediaPickerScreen: ViewController, AttachmentContainable { switch self.moreButtonNode.iconNode.iconState { case .search: self.requestAttachmentMenuExpansion() - self.presentWebSearch(MediaGroupsScreen(context: self.context, updatedPresentationData: self.updatedPresentationData, mediaAssetsContext: self.controllerNode.mediaAssetsContext, openGroup: { [weak self] collection in - if let strongSelf = self { - let mediaPicker = MediaPickerScreen(context: strongSelf.context, updatedPresentationData: strongSelf.updatedPresentationData, peer: strongSelf.peer, chatLocation: strongSelf.chatLocation, bannedSendMedia: strongSelf.bannedSendMedia, collection: collection, editingContext: strongSelf.interaction?.editingState, selectionContext: strongSelf.interaction?.selectionState) - - mediaPicker.presentStickers = strongSelf.presentStickers - mediaPicker.presentSchedulePicker = strongSelf.presentSchedulePicker - mediaPicker.presentTimerPicker = strongSelf.presentTimerPicker - mediaPicker.getCaptionPanelView = strongSelf.getCaptionPanelView - mediaPicker.legacyCompletion = strongSelf.legacyCompletion - mediaPicker.dismissAll = { [weak self] in - self?.dismiss(animated: true, completion: nil) + self.presentWebSearch(MediaGroupsScreen(context: self.context, updatedPresentationData: self.updatedPresentationData, mediaAssetsContext: self.controllerNode.mediaAssetsContext, openGroup: { [weak self] collection in + if let strongSelf = self { + let mediaPicker = MediaPickerScreen(context: strongSelf.context, updatedPresentationData: strongSelf.updatedPresentationData, peer: strongSelf.peer, chatLocation: strongSelf.chatLocation, bannedSendMedia: strongSelf.bannedSendMedia, collection: collection, editingContext: strongSelf.interaction?.editingState, selectionContext: strongSelf.interaction?.selectionState) + + mediaPicker.presentStickers = strongSelf.presentStickers + mediaPicker.presentSchedulePicker = strongSelf.presentSchedulePicker + mediaPicker.presentTimerPicker = strongSelf.presentTimerPicker + mediaPicker.getCaptionPanelView = strongSelf.getCaptionPanelView + mediaPicker.legacyCompletion = strongSelf.legacyCompletion + mediaPicker.dismissAll = { [weak self] in + self?.dismiss(animated: true, completion: nil) + } + + mediaPicker._presentedInModal = true + mediaPicker.updateNavigationStack = strongSelf.updateNavigationStack + strongSelf.updateNavigationStack({ _ in return ([strongSelf, mediaPicker], strongSelf.mediaPickerContext)}) } - - mediaPicker._presentedInModal = true - mediaPicker.updateNavigationStack = strongSelf.updateNavigationStack - strongSelf.updateNavigationStack({ _ in return ([strongSelf, mediaPicker], strongSelf.mediaPickerContext)}) - } - })) + })) case .more: let strings = self.presentationData.strings let selectionCount = self.selectionCount