From 6e9a01d3440b84e32739e5e3105f92803d5ec301 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oskar=20Kwas=CC=81niewski?= Date: Tue, 7 Jan 2025 14:48:37 +0100 Subject: [PATCH] fix(iOS): enable/disable keyboard shortcuts only on iOS --- .../Libraries/Text/TextInput/Multiline/RCTUITextView.mm | 2 ++ .../Libraries/Text/TextInput/RCTBaseTextInputView.mm | 2 ++ .../Libraries/Text/TextInput/Singleline/RCTUITextField.mm | 2 ++ 3 files changed, 6 insertions(+) diff --git a/packages/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm b/packages/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm index f3d4a3f0136c..565b0f6afb60 100644 --- a/packages/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +++ b/packages/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm @@ -138,6 +138,7 @@ - (void)textDidChange - (void)setDisableKeyboardShortcuts:(BOOL)disableKeyboardShortcuts { +#if TARGET_OS_IOS // Initialize the initial values only once if (_initialValueLeadingBarButtonGroups == nil) { // Capture initial values of leading and trailing button groups @@ -154,6 +155,7 @@ - (void)setDisableKeyboardShortcuts:(BOOL)disableKeyboardShortcuts self.inputAssistantItem.trailingBarButtonGroups = _initialValueTrailingBarButtonGroups; } _disableKeyboardShortcuts = disableKeyboardShortcuts; +#endif } #pragma mark - Overrides diff --git a/packages/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm b/packages/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm index f35faca4051f..6a2d4f8f70a1 100644 --- a/packages/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm +++ b/packages/react-native/Libraries/Text/TextInput/RCTBaseTextInputView.mm @@ -400,6 +400,7 @@ - (void)setInputAccessoryViewButtonLabel:(NSString *)inputAccessoryViewButtonLab - (void)setDisableKeyboardShortcuts:(BOOL)disableKeyboardShortcuts { +#if TARGET_OS_IOS // Initialize the initial values only once if (_initialValueLeadingBarButtonGroups == nil) { // Capture initial values of leading and trailing button groups @@ -415,6 +416,7 @@ - (void)setDisableKeyboardShortcuts:(BOOL)disableKeyboardShortcuts self.backedTextInputView.inputAssistantItem.leadingBarButtonGroups = _initialValueLeadingBarButtonGroups; self.backedTextInputView.inputAssistantItem.trailingBarButtonGroups = _initialValueTrailingBarButtonGroups; } +#endif } #pragma mark - RCTBackedTextInputDelegate diff --git a/packages/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm b/packages/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm index e9cbeef34155..338a1f4fa99c 100644 --- a/packages/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +++ b/packages/react-native/Libraries/Text/TextInput/Singleline/RCTUITextField.mm @@ -121,6 +121,7 @@ - (void)setSecureTextEntry:(BOOL)secureTextEntry - (void)setDisableKeyboardShortcuts:(BOOL)disableKeyboardShortcuts { +#if TARGET_OS_IOS // Initialize the initial values only once if (_initialValueLeadingBarButtonGroups == nil) { // Capture initial values of leading and trailing button groups @@ -137,6 +138,7 @@ - (void)setDisableKeyboardShortcuts:(BOOL)disableKeyboardShortcuts self.inputAssistantItem.trailingBarButtonGroups = _initialValueTrailingBarButtonGroups; } _disableKeyboardShortcuts = disableKeyboardShortcuts; +#endif } #pragma mark - Placeholder