Use reloadInputViews to update keyboard appearance

This commit is contained in:
Peter
2019-07-26 15:02:36 +01:00
parent ab3f224d56
commit f3120007e5
4 changed files with 29 additions and 10 deletions

View File

@@ -83,7 +83,6 @@
@interface ASPanningOverriddenUITextView : ASTextKitComponentsTextView
{
BOOL _shouldBlockPanGesture;
BOOL _initializedPrimaryInputLanguage;
}
@property (nonatomic, copy) bool (^shouldCopy)();
@@ -93,6 +92,7 @@
@property (nonatomic, copy) void (^backspaceWhileEmpty)();
@property (nonatomic, strong) NSString * _Nullable initialPrimaryLanguage;
@property (nonatomic) bool initializedPrimaryInputLanguage;
@end
@@ -200,6 +200,10 @@
}
}
- (UIKeyboardAppearance)keyboardAppearance {
return [super keyboardAppearance];
}
- (UITextInputMode *)textInputMode {
if (!_initializedPrimaryInputLanguage) {
_initializedPrimaryInputLanguage = true;
@@ -642,6 +646,14 @@
}
}
- (void)setInitialPrimaryLanguage:(NSString *)initialPrimaryLanguage {
((ASPanningOverriddenUITextView *)_textKitComponents.textView).initialPrimaryLanguage = initialPrimaryLanguage;
}
- (void)resetInitialPrimaryLanguage {
((ASPanningOverriddenUITextView *)_textKitComponents.textView).initializedPrimaryInputLanguage = false;
}
- (void)dropAutocorrection {
_isPreservingSelection = YES; // Used in -textViewDidChangeSelection: to avoid informing our delegate about our preservation.
_isPreservingText = YES;
@@ -664,6 +676,15 @@
_isPreservingText = NO;
}
- (bool)isCurrentlyEmoji {
NSString *value = [[UITextInputMode currentInputMode] primaryLanguage];
if ([value isEqualToString:@"emoji"]) {
return true;
} else {
return false;
}
}
#pragma mark - Core
- (void)_updateDisplayingPlaceholder
{