react-native-external-keyboard 0.8.4 → 0.9.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of react-native-external-keyboard might be problematic. Click here for more details.

Files changed (61) hide show
  1. package/android/src/main/java/com/externalkeyboard/delegates/FocusOrderDelegate.java +2 -4
  2. package/android/src/main/java/com/externalkeyboard/delegates/FocusOrderDelegateHost.java +14 -0
  3. package/android/src/main/java/com/externalkeyboard/views/ExternalKeyboardView/ExternalKeyboardView.java +2 -1
  4. package/android/src/main/java/com/externalkeyboard/views/TextInputFocusWrapper/TextInputFocusWrapper.java +150 -3
  5. package/android/src/main/java/com/externalkeyboard/views/TextInputFocusWrapper/TextInputFocusWrapperManager.java +92 -0
  6. package/android/src/oldarch/TextInputFocusWrapperManagerSpec.java +24 -0
  7. package/ios/Delegates/RNCEKVFocusOrderDelegate/RNCEKVFocusGuideDelegate/RNCEKVFocusGuideDelegate.h +1 -1
  8. package/ios/Delegates/RNCEKVFocusOrderDelegate/RNCEKVFocusOrderDelegate.h +5 -0
  9. package/ios/Delegates/RNCEKVFocusOrderDelegate/RNCEKVFocusOrderDelegate.mm +84 -48
  10. package/ios/Delegates/RNCEKVFocusOrderDelegate/RNCEKVFocusOrderProtocol.h +6 -8
  11. package/ios/Delegates/RNCEKVGroupIdentifierDelegate/RNCEKVGroupIdentifierDelegate.mm +60 -60
  12. package/ios/Delegates/RNCEKVHaloDelegate/RNCEKVHaloDelegate.h +4 -3
  13. package/ios/Delegates/RNCEKVHaloDelegate/RNCEKVHaloDelegate.mm +110 -87
  14. package/ios/Delegates/RNCEKVHaloDelegate/RNCEKVHaloProtocol.h +1 -1
  15. package/ios/Extensions/RCTEnhancedScrollView+RNCEKVExternalKeyboard.mm +1 -1
  16. package/ios/Extensions/RCTTextInputComponentView+RNCEKVExternalKeyboard.mm +15 -0
  17. package/ios/Extensions/RCTViewComponentView+RNCEKVExternalKeyboard.h +1 -1
  18. package/ios/Extensions/RCTViewComponentView+RNCEKVExternalKeyboard.mm +31 -23
  19. package/ios/Extensions/UIViewController+RNCEKVExternalKeyboard.h +1 -0
  20. package/ios/Extensions/UIViewController+RNCEKVExternalKeyboard.mm +8 -0
  21. package/ios/Helpers/RNCEKVNativeProps/RNCEKVNativeProps.h +123 -0
  22. package/ios/Protocols/RNCEKVCustomFocusEffectProtocol.h +15 -0
  23. package/ios/Protocols/RNCEKVCustomGroudIdProtocol.h +15 -0
  24. package/ios/Views/Base/ContextMenu/RNCEKVViewContextMenuBase.h +33 -0
  25. package/ios/Views/Base/ContextMenu/RNCEKVViewContextMenuBase.mm +83 -0
  26. package/ios/Views/Base/FocusChange/RNCEKVViewFocusChangeBase.h +37 -0
  27. package/ios/Views/Base/FocusChange/RNCEKVViewFocusChangeBase.mm +88 -0
  28. package/ios/Views/Base/FocusOrderGroup/RNCEKVViewOrderGroupBase.h +49 -0
  29. package/ios/Views/Base/FocusOrderGroup/RNCEKVViewOrderGroupBase.mm +200 -0
  30. package/ios/Views/Base/FocusRequest/RNCEKVViewFocusRequestBase.h +34 -0
  31. package/ios/Views/Base/FocusRequest/RNCEKVViewFocusRequestBase.mm +117 -0
  32. package/ios/Views/Base/GroupIdentifier/RNCEKVViewGroupIdentifierBase.h +27 -0
  33. package/ios/Views/Base/GroupIdentifier/RNCEKVViewGroupIdentifierBase.mm +61 -0
  34. package/ios/Views/Base/KeyPress/RNCEKVViewKeyPress.h +30 -0
  35. package/ios/Views/Base/KeyPress/RNCEKVViewKeyPress.mm +82 -0
  36. package/ios/Views/Base/KeyboardHallo/RNCEKVExternalKeyboardHalloBase.h +33 -0
  37. package/ios/Views/Base/KeyboardHallo/RNCEKVExternalKeyboardHalloBase.mm +102 -0
  38. package/ios/Views/Base/ViewGroup/RNCEKVViewGroupBase.h +36 -0
  39. package/ios/Views/Base/ViewGroup/RNCEKVViewGroupBase.mm +63 -0
  40. package/ios/Views/RNCEKVExternalKeyboardView/RNCEKVExternalKeyboardView.h +75 -74
  41. package/ios/Views/RNCEKVExternalKeyboardView/RNCEKVExternalKeyboardView.mm +23 -492
  42. package/ios/Views/RNCEKVExternalKeyboardView/RNCEKVExternalKeyboardViewManager.mm +3 -6
  43. package/ios/Views/RNCEKVKeyboardFocusGroupView/RNCEKVKeyboardFocusGroup.mm +12 -12
  44. package/ios/Views/RNCEKVTextInputFocusWrapper/RNCEKVTextInputFocusWrapper.h +44 -6
  45. package/ios/Views/RNCEKVTextInputFocusWrapper/RNCEKVTextInputFocusWrapper.mm +42 -66
  46. package/ios/Views/RNCEKVTextInputFocusWrapper/RNCEKVTextInputFocusWrapperManager.mm +76 -7
  47. package/lib/commonjs/components/KeyboardExtendedInput/KeyboardExtendedInput.js +51 -0
  48. package/lib/commonjs/components/KeyboardExtendedInput/KeyboardExtendedInput.js.map +1 -1
  49. package/lib/commonjs/nativeSpec/TextInputFocusWrapperNativeComponent.ts +16 -0
  50. package/lib/module/components/KeyboardExtendedInput/KeyboardExtendedInput.js +51 -0
  51. package/lib/module/components/KeyboardExtendedInput/KeyboardExtendedInput.js.map +1 -1
  52. package/lib/module/nativeSpec/TextInputFocusWrapperNativeComponent.ts +16 -0
  53. package/lib/typescript/src/components/KeyboardExtendedInput/KeyboardExtendedInput.d.ts.map +1 -1
  54. package/lib/typescript/src/components/KeyboardExtendedInput/KeyboardExtendedInput.types.d.ts +11 -0
  55. package/lib/typescript/src/components/KeyboardExtendedInput/KeyboardExtendedInput.types.d.ts.map +1 -1
  56. package/lib/typescript/src/nativeSpec/TextInputFocusWrapperNativeComponent.d.ts +16 -1
  57. package/lib/typescript/src/nativeSpec/TextInputFocusWrapperNativeComponent.d.ts.map +1 -1
  58. package/package.json +1 -1
  59. package/src/components/KeyboardExtendedInput/KeyboardExtendedInput.tsx +56 -0
  60. package/src/components/KeyboardExtendedInput/KeyboardExtendedInput.types.ts +11 -0
  61. package/src/nativeSpec/TextInputFocusWrapperNativeComponent.ts +16 -0
@@ -0,0 +1,82 @@
1
+ //
2
+ // RNCEKVViewKeyPress.m
3
+ // react-native-external-keyboard
4
+ //
5
+ // Created by Artur Kalach on 09/04/2026.
6
+ //
7
+
8
+ #import <Foundation/Foundation.h>
9
+
10
+ #import "RNCEKVViewKeyPress.h"
11
+ #import "RNCEKVKeyboardKeyPressHandler.h"
12
+
13
+
14
+
15
+
16
+ @implementation RNCEKVViewKeyPress {
17
+ RNCEKVKeyboardKeyPressHandler *_keyboardKeyPressHandler;
18
+ }
19
+
20
+ - (instancetype)initWithFrame:(CGRect)frame {
21
+ if (self = [super initWithFrame:frame]) {
22
+ // _isAttachedToWindow = NO;
23
+ // _enableA11yFocus = NO;
24
+ _keyboardKeyPressHandler = [[RNCEKVKeyboardKeyPressHandler alloc] init];
25
+ // _autoFocusRequested = NO;
26
+ }
27
+
28
+ return self;
29
+ }
30
+
31
+ - (void)cleanReferences {
32
+ [super cleanReferences];
33
+
34
+ // _isAttachedToWindow = NO;
35
+ // _enableA11yFocus = NO;
36
+ // _autoFocusRequested = NO;
37
+ }
38
+
39
+ #ifdef RCT_NEW_ARCH_ENABLED
40
+ - (void)updateKeyPressProps:(const RNCEKV::KeyPressProps &)oldProps
41
+ newProps:(const RNCEKV::KeyPressProps &)newProps {
42
+ if (oldProps.hasKeyUpPress != newProps.hasKeyUpPress) {
43
+ [self setHasOnPressUp:newProps.hasKeyUpPress];
44
+ }
45
+
46
+ if (oldProps.hasKeyDownPress != newProps.hasKeyDownPress) {
47
+ [self setHasOnPressDown:newProps.hasKeyDownPress];
48
+ }
49
+ }
50
+
51
+ #endif
52
+
53
+
54
+ - (void)pressesBegan:(NSSet<UIPress *> *)presses
55
+ withEvent:(UIPressesEvent *)event {
56
+ NSDictionary *eventInfo = [_keyboardKeyPressHandler actionDownHandler:presses
57
+ withEvent:event];
58
+
59
+ if (self.hasOnPressUp || self.hasOnPressDown) {
60
+ [self onKeyDownPressHandler:eventInfo];
61
+ }
62
+
63
+ [super pressesBegan:presses withEvent:event];
64
+ }
65
+
66
+ - (void)pressesEnded:(NSSet<UIPress *> *)presses
67
+ withEvent:(UIPressesEvent *)event {
68
+ NSDictionary *eventInfo = [_keyboardKeyPressHandler actionUpHandler:presses
69
+ withEvent:event];
70
+
71
+ if (self.hasOnPressUp || self.hasOnPressDown) {
72
+ [self onKeyUpPressHandler:eventInfo];
73
+ }
74
+
75
+ [super pressesEnded:presses withEvent:event];
76
+ }
77
+
78
+ - (void)onKeyDownPressHandler:(NSDictionary *)eventInfo{}
79
+ - (void)onKeyUpPressHandler:(NSDictionary *)eventInfo{}
80
+
81
+
82
+ @end
@@ -0,0 +1,33 @@
1
+ //
2
+ // RNCEKVExternalKeyboardHalloBase.h
3
+ // Pods
4
+ //
5
+ // Created by Artur Kalach on 08/04/2026.
6
+ //
7
+
8
+ #ifndef RNCEKVExternalKeyboardHalloBase_h
9
+ #define RNCEKVExternalKeyboardHalloBase_h
10
+
11
+ #import "RNCEKVViewOrderGroupBase.h"
12
+ #import "RNCEKVCustomFocusEffectProtocol.h"
13
+ #import "RNCEKVHaloProtocol.h"
14
+
15
+ #ifdef RCT_NEW_ARCH_ENABLED
16
+ #include "RNCEKVNativeProps.h"
17
+ #endif
18
+
19
+ @interface RNCEKVExternalKeyboardHalloBase : RNCEKVViewOrderGroupBase<RNCEKVHaloProtocol, RNCEKVCustomFocusEffectProtocol>
20
+
21
+ @property (nonatomic, assign) CGFloat haloCornerRadius;
22
+ @property (nonatomic, assign) CGFloat haloExpendX;
23
+ @property (nonatomic, assign) CGFloat haloExpendY;
24
+ @property BOOL isHaloHidden;
25
+
26
+ #ifdef RCT_NEW_ARCH_ENABLED
27
+ - (void)updateHaloProps:(const RNCEKV::HaloProps &)oldProps
28
+ newProps:(const RNCEKV::HaloProps &)newProps;
29
+ #endif
30
+
31
+ @end
32
+
33
+ #endif /* RNCEKVExternalKeyboardHalloBase_h */
@@ -0,0 +1,102 @@
1
+ //
2
+ // RNCEKVExternakKeyboardHalloBase.m
3
+ // react-native-external-keyboard
4
+ //
5
+ // Created by Artur Kalach on 08/04/2026.
6
+ //
7
+
8
+ #import <Foundation/Foundation.h>
9
+
10
+ #import "RNCEKVHaloDelegate.h"
11
+ #import "RNCEKVExternalKeyboardHalloBase.h"
12
+
13
+ #ifdef RCT_NEW_ARCH_ENABLED
14
+ #import <React/RCTConversions.h>
15
+ #endif
16
+
17
+ @implementation RNCEKVExternalKeyboardHalloBase {
18
+ RNCEKVHaloDelegate *_haloDelegate;
19
+ }
20
+
21
+ - (instancetype)initWithFrame:(CGRect)frame
22
+ {
23
+ if (self = [super initWithFrame:frame]) {
24
+ _haloDelegate = [[RNCEKVHaloDelegate alloc] initWithView:self];
25
+ }
26
+
27
+ return self;
28
+ }
29
+
30
+ - (UIFocusEffect*)customFocusEffect {
31
+ return [_haloDelegate getHalo];
32
+ }
33
+
34
+ - (void)cleanReferences {
35
+ [super cleanReferences];
36
+ [_haloDelegate clear];
37
+ _isHaloHidden = false;
38
+ // _isHaloActive = @2; // ToDo RNCEKV-0
39
+ _haloExpendX = 0;
40
+ _haloExpendY = 0;
41
+ _haloCornerRadius = 0;
42
+ }
43
+
44
+ // ToDo RNCEKV-8 review and find better place for halo calculation
45
+ //- (void)layoutSubviews {
46
+ // [super layoutSubviews];
47
+ //// [_haloDelegate displayHalo];
48
+ //}
49
+
50
+ - (void)setIsHaloHidden:(BOOL)isHaloHidden {
51
+ _isHaloHidden = isHaloHidden;
52
+ // [_haloDelegate displayHalo];
53
+ }
54
+
55
+ - (void)setHaloCornerRadius:(CGFloat)haloCornerRadius {
56
+ _haloCornerRadius = haloCornerRadius;
57
+ // if (self.window) {
58
+ // [_haloDelegate updateHalo];
59
+ // }
60
+ }
61
+
62
+ - (void)setHaloExpendX:(CGFloat)haloExpendX {
63
+ _haloExpendX = haloExpendX;
64
+ // if (self.window) {
65
+ // [_haloDelegate updateHalo];
66
+ // }
67
+ }
68
+
69
+ - (void)setHaloExpendY:(CGFloat)haloExpendY {
70
+ _haloExpendY = haloExpendY;
71
+ // if (self.window) {
72
+ //// [_haloDelegate updateHalo];
73
+ // }
74
+ }
75
+
76
+ - (void)updateHaloProps:(const RNCEKV::HaloProps &)oldProps
77
+ newProps:(const RNCEKV::HaloProps &)newProps {
78
+ if (_isHaloHidden == newProps.haloEffect) {
79
+ [self setIsHaloHidden: !newProps.haloEffect];
80
+ }
81
+
82
+ if (oldProps.haloExpendX != newProps.haloExpendX) {
83
+ [self setHaloExpendX:newProps.haloExpendX];
84
+ }
85
+
86
+ if (oldProps.haloExpendY != newProps.haloExpendY) {
87
+ [self setHaloExpendY:newProps.haloExpendY];
88
+ }
89
+
90
+ if (oldProps.haloCornerRadius != newProps.haloCornerRadius) {
91
+ [self setHaloCornerRadius:newProps.haloCornerRadius];
92
+ }
93
+
94
+ UIColor *newColor = RCTUIColorFromSharedColor(newProps.tintColor);
95
+ BOOL renewColor = newColor != nil && self.tintColor == nil;
96
+ BOOL isColorChanged = oldProps.tintColor != newProps.tintColor;
97
+ if (isColorChanged || renewColor) {
98
+ self.tintColor = RCTUIColorFromSharedColor(newProps.tintColor);
99
+ }
100
+ }
101
+
102
+ @end
@@ -0,0 +1,36 @@
1
+ //
2
+ // RNCEKVViewGroupBase.h
3
+ // Pods
4
+ //
5
+ // Created by Artur Kalach on 07/04/2026.
6
+ //
7
+
8
+ #ifndef RNCEKVViewGroupBase_h
9
+ #define RNCEKVViewGroupBase_h
10
+
11
+ #import <UIKit/UIKit.h>
12
+
13
+ #ifdef RCT_NEW_ARCH_ENABLED
14
+ #import <React/RCTViewComponentView.h>
15
+ #define RNCEKVBaseViewClass RCTViewComponentView
16
+ #else
17
+ #import <React/RCTView.h>
18
+ #define RNCEKVBaseViewClass RCTView
19
+ #endif
20
+
21
+ NS_ASSUME_NONNULL_BEGIN
22
+
23
+ @interface RNCEKVViewGroupBase : RNCEKVBaseViewClass
24
+
25
+ - (UIView*)getStoredView;
26
+ - (void)onSubviewAdded:(UIView *)subview;
27
+ - (void)onSubviewRemoved:(UIView *)subview;
28
+ - (void)onSubviewsLayoutUpdated;
29
+
30
+ - (void)cleanReferences;
31
+
32
+ @end
33
+
34
+ NS_ASSUME_NONNULL_END
35
+
36
+ #endif /* RNCEKVViewGroupBase_h */
@@ -0,0 +1,63 @@
1
+ //
2
+ // RNCEKVViewGroupBase.m
3
+ // react-native-external-keyboard
4
+ //
5
+ // Created by Artur Kalach on 07/04/2026.
6
+ //
7
+
8
+ #import "RNCEKVViewGroupBase.h"
9
+
10
+ @interface RNCEKVViewGroupBase ()
11
+
12
+ @property (nonatomic, weak, nullable) UIView *storedView;
13
+
14
+ @end
15
+
16
+
17
+ @implementation RNCEKVViewGroupBase
18
+
19
+ - (void)didAddSubview:(UIView *)subview {
20
+ [super didAddSubview:subview];
21
+
22
+ if (self.storedView == nil) {
23
+ self.storedView = subview;
24
+ [self onSubviewAdded:subview];
25
+ }
26
+ }
27
+
28
+ - (void)cleanReferences{
29
+ self.storedView = nil;
30
+ }
31
+
32
+ - (void)willRemoveSubview:(UIView *)subview {
33
+ [super willRemoveSubview:subview];
34
+
35
+ if (self.storedView == subview) {
36
+ self.storedView = nil;
37
+ [self onSubviewRemoved:subview];
38
+ }
39
+ }
40
+
41
+ - (UIView*)getStoredView {
42
+ return self.storedView;
43
+ }
44
+
45
+ #pragma mark - Layout updates
46
+
47
+ - (void)layoutSubviews {
48
+ [super layoutSubviews];
49
+
50
+ if (self.storedView != nil) {
51
+ [self onSubviewsLayoutUpdated];
52
+ }
53
+ }
54
+
55
+ #pragma mark - Hooks (override in subclass)
56
+
57
+ - (void)onSubviewAdded:(UIView *)subview {}
58
+
59
+ - (void)onSubviewRemoved:(UIView *)subview {}
60
+
61
+ - (void)onSubviewsLayoutUpdated {}
62
+
63
+ @end
@@ -6,49 +6,50 @@
6
6
  #import "RNCEKVFocusOrderProtocol.h"
7
7
  #import "RNCEKVHaloProtocol.h"
8
8
  #import "RNCEKVGroupIdentifierProtocol.h"
9
+ #import "RNCEKVExternalKeyboardHalloBase.h"
10
+ #import "RNCEKVViewKeyPress.h"
9
11
 
10
12
  #ifdef RCT_NEW_ARCH_ENABLED
11
13
  #import "RCTViewComponentView+RNCEKVExternalKeyboard.h"
12
14
 
13
15
  NS_ASSUME_NONNULL_BEGIN
14
-
15
- #define RKNA_PROP_UPDATE(prop, setter, newProps) \
16
- if ([RNCEKVPropHelper isPropChanged: _##prop stringValue: newProps.prop]) { \
17
- [self setter: [RNCEKVPropHelper unwrapStringValue: newProps.prop]]; \
18
- }
19
-
20
- @interface RNCEKVExternalKeyboardView : RCTViewComponentView <UIContextMenuInteractionDelegate, RNCEKVHaloProtocol, RNCEKVFocusProtocol, RNCEKVFocusOrderProtocol, RNCEKVGroupIdentifierProtocol>
21
- @property (nonatomic, strong, nullable) NSNumber *isHaloActive;
22
- @property BOOL canBeFocused;
23
- @property BOOL hasOnPressUp;
24
- @property BOOL hasOnPressDown;
25
- @property BOOL hasOnFocusChanged;
16
+ //
17
+ //#define RKNA_PROP_UPDATE(prop, setter, newProps) \
18
+ //if ([RNCEKVPropHelper isPropChanged: _##prop stringValue: newProps.prop]) { \
19
+ //[self setter: [RNCEKVPropHelper unwrapStringValue: newProps.prop]]; \
20
+ //}
21
+
22
+ @interface RNCEKVExternalKeyboardView : RNCEKVViewKeyPress
23
+ //@property (nonatomic, strong, nullable) NSNumber *isHaloActive;
24
+ //@property BOOL canBeFocused;
25
+ //@property BOOL hasOnPressUp;
26
+ //@property BOOL hasOnPressDown;
27
+ //@property BOOL hasOnFocusChanged;
26
28
  @property BOOL isGroup;
27
- @property BOOL enableA11yFocus;
28
- @property (nonatomic, assign) CGFloat haloCornerRadius;
29
- @property (nonatomic, assign) CGFloat haloExpendX;
30
- @property (nonatomic, assign) CGFloat haloExpendY;
31
- @property (nullable, nonatomic, strong) UIView* myPreferredFocusedView;
32
- @property (nonatomic, strong, nullable) NSString *customGroupId;
33
- @property BOOL autoFocus;
34
- @property BOOL enableContextMenu;
35
- @property NSNumber* orderPosition;
36
- @property NSNumber* lockFocus;
37
- @property (nonatomic, strong) NSString* orderGroup;
38
- @property (nonatomic, strong) NSString* orderId;
39
- @property (nonatomic, strong) NSString* orderLeft;
40
- @property (nonatomic, strong) NSString* orderRight;
41
- @property (nonatomic, strong) NSString* orderUp;
42
- @property (nonatomic, strong) NSString* orderDown;
43
- @property NSString* orderForward;
44
- @property NSString* orderBackward;
45
- @property NSString* orderLast;
46
- @property NSString* orderFirst;
47
- @property BOOL isLinked;
48
-
49
- - (UIView*)getFocusTargetView;
50
-
51
- - (void)focus;
29
+ //@property BOOL enableA11yFocus;
30
+ //@property (nonatomic, assign) CGFloat haloCornerRadius;
31
+ //@property (nonatomic, assign) CGFloat haloExpendX;
32
+ //@property (nonatomic, assign) CGFloat haloExpendY;
33
+ //@property (nullable, nonatomic, strong) UIView* myPreferredFocusedView;
34
+ //@property (nonatomic, strong, nullable) NSString *customGroupId;
35
+ //@property BOOL enableContextMenu;
36
+ //@property NSNumber* orderPosition;
37
+ //@property NSNumber* lockFocus;
38
+ //@property (nonatomic, strong) NSString* orderGroup;
39
+ //@property (nonatomic, strong) NSString* orderId;
40
+ //@property (nonatomic, strong) NSString* orderLeft;
41
+ //@property (nonatomic, strong) NSString* orderRight;
42
+ //@property (nonatomic, strong) NSString* orderUp;
43
+ //@property (nonatomic, strong) NSString* orderDown;
44
+ //@property NSString* orderForward;
45
+ //@property NSString* orderBackward;
46
+ //@property NSString* orderLast;
47
+ //@property NSString* orderFirst;
48
+ //@property BOOL isLinked;
49
+
50
+ //- (UIView*)getFocusTargetView;
51
+
52
+ //- (void)focus;
52
53
 
53
54
  @end
54
55
 
@@ -59,44 +60,44 @@ NS_ASSUME_NONNULL_END
59
60
 
60
61
 
61
62
  #import <React/RCTView.h>
62
- @interface RNCEKVExternalKeyboardView : RCTView <UIContextMenuInteractionDelegate, RNCEKVHaloProtocol, RNCEKVFocusOrderProtocol, RNCEKVFocusProtocol, RNCEKVGroupIdentifierProtocol>
63
-
64
- @property BOOL autoFocus;
65
- @property BOOL canBeFocused;
66
- @property BOOL hasOnPressUp;
67
- @property BOOL hasOnPressDown;
68
- @property BOOL hasOnFocusChanged;
63
+ @interface RNCEKVExternalKeyboardView : RNCEKVViewKeyPress /*<UIContextMenuInteractionDelegate, RNCEKVHaloProtocol, RNCEKVFocusOrderProtocol, RNCEKVFocusProtocol, RNCEKVGroupIdentifierProtocol>*/
64
+ //
65
+ //@property BOOL autoFocus;
66
+ //@property BOOL canBeFocused;
67
+ //@property BOOL hasOnPressUp;
68
+ //@property BOOL hasOnPressDown;
69
+ //@property BOOL hasOnFocusChanged;
69
70
  @property BOOL isGroup;
70
- @property BOOL enableA11yFocus;
71
- @property UIView* myPreferredFocusedView;
72
- @property (nonatomic, assign) CGFloat haloCornerRadius;
73
- @property (nonatomic, assign) CGFloat haloExpendX;
74
- @property (nonatomic, assign) CGFloat haloExpendY;
75
- @property (nonatomic, copy) RCTDirectEventBlock onFocusChange;
76
- @property (nonatomic, copy) RCTDirectEventBlock onContextMenuPress;
77
- @property (nonatomic, copy) RCTDirectEventBlock onKeyUpPress;
78
- @property (nonatomic, copy) RCTDirectEventBlock onKeyDownPress;
79
- @property (nonatomic, copy) RCTBubblingEventBlock onBubbledContextMenuPress;
80
- @property (nonatomic, strong, nullable) NSString *customGroupId;
81
- @property NSNumber* orderPosition;
82
- @property NSNumber* lockFocus;
83
- @property (nonatomic, strong)NSString* orderGroup;
84
- @property (nonatomic, strong) NSString* orderId;
85
- @property (nonatomic, strong)NSString* orderLeft;
86
- @property (nonatomic, strong)NSString* orderRight;
87
- @property (nonatomic, strong) NSString* orderUp;
88
- @property (nonatomic, strong) NSString* orderDown;
89
- @property NSString* orderForward;
90
- @property NSString* orderBackward;
91
- @property NSString* orderLast;
92
- @property NSString* orderFirst;
93
- @property BOOL isLinked;
94
- @property BOOL enableContextMenu;
95
-
96
- - (UIView*)getFocusTargetView;
97
-
98
- @property (nonatomic, strong, nullable) NSNumber *isHaloActive;
99
- - (void)focus;
71
+ //@property BOOL enableA11yFocus;
72
+ //@property UIView* myPreferredFocusedView;
73
+ //@property (nonatomic, assign) CGFloat haloCornerRadius;
74
+ //@property (nonatomic, assign) CGFloat haloExpendX;
75
+ //@property (nonatomic, assign) CGFloat haloExpendY;
76
+ //@property (nonatomic, copy) RCTDirectEventBlock onFocusChange;
77
+ //@property (nonatomic, copy) RCTDirectEventBlock onContextMenuPress;
78
+ //@property (nonatomic, copy) RCTDirectEventBlock onKeyUpPress;
79
+ //@property (nonatomic, copy) RCTDirectEventBlock onKeyDownPress;
80
+ //@property (nonatomic, copy) RCTBubblingEventBlock onBubbledContextMenuPress;
81
+ //@property (nonatomic, strong, nullable) NSString *customGroupId;
82
+ //@property NSNumber* orderPosition;
83
+ //@property NSNumber* lockFocus;
84
+ //@property (nonatomic, strong)NSString* orderGroup;
85
+ //@property (nonatomic, strong) NSString* orderId;
86
+ //@property (nonatomic, strong)NSString* orderLeft;
87
+ //@property (nonatomic, strong)NSString* orderRight;
88
+ //@property (nonatomic, strong) NSString* orderUp;
89
+ //@property (nonatomic, strong) NSString* orderDown;
90
+ //@property NSString* orderForward;
91
+ //@property NSString* orderBackward;
92
+ //@property NSString* orderLast;
93
+ //@property NSString* orderFirst;
94
+ //@property BOOL isLinked;
95
+ //@property BOOL enableContextMenu;
96
+
97
+ //- (UIView*)getFocusTargetView;
98
+
99
+ //@property (nonatomic, strong, nullable) NSNumber *isHaloActive;
100
+ //- (void)focus;
100
101
  @end
101
102
 
102
103