Skip to content

Commit 7f622ed

Browse files
committed
support multiline
1 parent 7fad1ea commit 7f622ed

2 files changed

Lines changed: 40 additions & 0 deletions

File tree

packages/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ NS_ASSUME_NONNULL_BEGIN
3838

3939
@property (nonatomic, strong, nullable) NSString *inputAccessoryViewID;
4040
@property (nonatomic, strong, nullable) NSString *inputAccessoryViewButtonLabel;
41+
@property (nonatomic, assign) BOOL disableKeyboardShortcuts;
4142

4243
@end
4344

packages/react-native/Libraries/Text/TextInput/Multiline/RCTUITextView.mm

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,45 @@ - (void)textDidChange
132132
[self _invalidatePlaceholderVisibility];
133133
}
134134

135+
- (BOOL)disableKeyboardShortcuts
136+
{
137+
// Log the call to this method
138+
NSLog(@"RCTUITextField setDisableKeyboardShortcuts called with value: %d", self.disableKeyboardShortcuts);
139+
140+
return self.disableKeyboardShortcuts;
141+
}
142+
143+
- (void)setDisableKeyboardShortcuts:(BOOL)disableKeyboardShortcuts
144+
{
145+
static BOOL isFirstRender = YES;
146+
static NSArray<UIBarButtonItemGroup *> *initialValueLeadingBarButtonGroups;
147+
static NSArray<UIBarButtonItemGroup *> *initialValueTrailingBarButtonGroups;
148+
149+
// Log the call to this method
150+
NSLog(@"RCTUITextField setDisableKeyboardShortcuts called with value: %d", disableKeyboardShortcuts);
151+
NSLog(@"RCTBaseTextInputView isFirstRender: %d", isFirstRender);;
152+
153+
// Initialize the initial values only once
154+
if (isFirstRender) {
155+
isFirstRender = NO;
156+
// Capture initial values of leading and trailing button groups
157+
initialValueLeadingBarButtonGroups = self.inputAssistantItem.leadingBarButtonGroups;
158+
initialValueTrailingBarButtonGroups = self.inputAssistantItem.trailingBarButtonGroups;
159+
160+
NSLog(@"Initial Leading Bar Button Groups: %@", initialValueLeadingBarButtonGroups);
161+
NSLog(@"Initial Trailing Bar Button Groups: %@", initialValueTrailingBarButtonGroups);
162+
}
163+
164+
if (disableKeyboardShortcuts) {
165+
self.inputAssistantItem.leadingBarButtonGroups = @[];
166+
self.inputAssistantItem.trailingBarButtonGroups = @[];
167+
} else {
168+
// Restore the initial values
169+
self.inputAssistantItem.leadingBarButtonGroups = initialValueLeadingBarButtonGroups;
170+
self.inputAssistantItem.trailingBarButtonGroups = initialValueTrailingBarButtonGroups;
171+
}
172+
}
173+
135174
#pragma mark - Overrides
136175

137176
- (void)setFont:(UIFont *)font

0 commit comments

Comments
 (0)