react-native-navigation 8.8.3 → 8.8.5
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.
- package/android/src/main/java/com/reactnativenavigation/views/stack/topbar/titlebar/TitleBarReactButtonView.java +14 -2
- package/ios/RNNBasePresenter.mm +7 -0
- package/ios/RNNComponentPresenter.mm +85 -0
- package/ios/RNNNavigationOptions.h +2 -0
- package/ios/RNNNavigationOptions.mm +4 -0
- package/ios/RNNReactButtonView.h +2 -0
- package/ios/RNNReactButtonView.mm +183 -2
- package/ios/RNNReactTitleView.mm +26 -5
- package/ios/RNNScrollEdgeEffectOptions.h +20 -0
- package/ios/RNNScrollEdgeEffectOptions.mm +45 -0
- package/ios/RNNStackController.mm +7 -0
- package/ios/RNNStackPresenter.h +4 -0
- package/ios/RNNStackPresenter.mm +8 -0
- package/ios/RNNUIBarButtonItem.h +1 -7
- package/ios/RNNUIBarButtonItem.mm +65 -30
- package/ios/TopBarAppearancePresenter.mm +115 -27
- package/ios/TopBarPresenter.h +6 -0
- package/ios/TopBarPresenter.mm +4 -0
- package/ios/TopBarTitlePresenter.mm +16 -2
- package/lib/typescript/interfaces/Options.d.ts +53 -0
- package/lib/typescript/interfaces/Options.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/interfaces/Options.ts +55 -0
|
@@ -2,6 +2,7 @@ package com.reactnativenavigation.views.stack.topbar.titlebar;
|
|
|
2
2
|
|
|
3
3
|
import android.annotation.SuppressLint;
|
|
4
4
|
import android.content.Context;
|
|
5
|
+
import android.util.TypedValue;
|
|
5
6
|
import android.view.View;
|
|
6
7
|
|
|
7
8
|
import com.facebook.react.ReactInstanceManager;
|
|
@@ -10,7 +11,6 @@ import com.reactnativenavigation.options.params.Number;
|
|
|
10
11
|
import com.reactnativenavigation.react.ReactView;
|
|
11
12
|
|
|
12
13
|
import static android.view.View.MeasureSpec.EXACTLY;
|
|
13
|
-
import static android.view.View.MeasureSpec.UNSPECIFIED;
|
|
14
14
|
import static android.view.View.MeasureSpec.makeMeasureSpec;
|
|
15
15
|
import static com.reactnativenavigation.utils.UiUtils.dpToPx;
|
|
16
16
|
|
|
@@ -39,7 +39,19 @@ public class TitleBarReactButtonView extends ReactView {
|
|
|
39
39
|
if (dimension.hasValue()) {
|
|
40
40
|
return makeMeasureSpec(MeasureSpec.getSize(dpToPx(getContext(), dimension.get())), EXACTLY);
|
|
41
41
|
} else {
|
|
42
|
-
|
|
42
|
+
// When JS doesn't pass width/height, default to the theme's actionBarSize (48dp on Material).
|
|
43
|
+
// Yoga's intrinsic measurement of the React view collapses `paddingHorizontal` on the
|
|
44
|
+
// trailing edge in RTL (RN/Fabric measurement quirk), so we cannot trust UNSPECIFIED here -
|
|
45
|
+
// it produces a 0dp visible inset against the screen edge in RTL.
|
|
46
|
+
return makeMeasureSpec(resolveActionBarSize(), EXACTLY);
|
|
43
47
|
}
|
|
44
48
|
}
|
|
49
|
+
|
|
50
|
+
private int resolveActionBarSize() {
|
|
51
|
+
TypedValue tv = new TypedValue();
|
|
52
|
+
if (getContext().getTheme().resolveAttribute(android.R.attr.actionBarSize, tv, true)) {
|
|
53
|
+
return TypedValue.complexToDimensionPixelSize(tv.data, getContext().getResources().getDisplayMetrics());
|
|
54
|
+
}
|
|
55
|
+
return (int) dpToPx(getContext(), 48f);
|
|
56
|
+
}
|
|
45
57
|
}
|
package/ios/RNNBasePresenter.mm
CHANGED
|
@@ -144,6 +144,13 @@
|
|
|
144
144
|
}
|
|
145
145
|
|
|
146
146
|
- (UINavigationItem *)currentNavigationItem {
|
|
147
|
+
if ([self.boundViewController isKindOfClass:[UINavigationController class]]) {
|
|
148
|
+
UINavigationController *navigationController =
|
|
149
|
+
(UINavigationController *)self.boundViewController;
|
|
150
|
+
if (navigationController.topViewController) {
|
|
151
|
+
return navigationController.topViewController.navigationItem;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
147
154
|
return self.boundViewController.getCurrentChild.navigationItem;
|
|
148
155
|
}
|
|
149
156
|
|
|
@@ -1,9 +1,83 @@
|
|
|
1
1
|
#import "RNNComponentPresenter.h"
|
|
2
2
|
#import "RNNComponentViewController.h"
|
|
3
|
+
#import "RNNScrollEdgeEffectOptions.h"
|
|
3
4
|
#import "TopBarTitlePresenter.h"
|
|
4
5
|
#import "UITabBarController+RNNOptions.h"
|
|
5
6
|
#import "UIViewController+RNNOptions.h"
|
|
6
7
|
|
|
8
|
+
static NSNumber *RNNScrollEdgeEffectStyleFromString(NSString *value) {
|
|
9
|
+
if ([value isEqualToString:@"hard"])
|
|
10
|
+
return @(2);
|
|
11
|
+
if ([value isEqualToString:@"soft"])
|
|
12
|
+
return @(1);
|
|
13
|
+
return @(0); // automatic
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
static RNNScrollEdgeOptions *RNNScrollEdgeOptionsForKey(RNNScrollEdgeEffectOptions *options,
|
|
17
|
+
NSString *edgeKey) {
|
|
18
|
+
if ([edgeKey isEqualToString:@"topEdgeEffect"])
|
|
19
|
+
return options.top;
|
|
20
|
+
if ([edgeKey isEqualToString:@"bottomEdgeEffect"])
|
|
21
|
+
return options.bottom;
|
|
22
|
+
if ([edgeKey isEqualToString:@"leftEdgeEffect"])
|
|
23
|
+
return options.left;
|
|
24
|
+
if ([edgeKey isEqualToString:@"rightEdgeEffect"])
|
|
25
|
+
return options.right;
|
|
26
|
+
return nil;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
static BOOL RNNScrollEdgeEffectHasAnyValue(RNNScrollEdgeEffectOptions *options) {
|
|
30
|
+
if (!options)
|
|
31
|
+
return NO;
|
|
32
|
+
if (options.hidden.hasValue || options.style.hasValue)
|
|
33
|
+
return YES;
|
|
34
|
+
NSArray<RNNScrollEdgeOptions *> *edges =
|
|
35
|
+
@[ options.top ?: [RNNScrollEdgeOptions new], options.bottom ?: [RNNScrollEdgeOptions new],
|
|
36
|
+
options.left ?: [RNNScrollEdgeOptions new], options.right ?: [RNNScrollEdgeOptions new] ];
|
|
37
|
+
for (RNNScrollEdgeOptions *edge in edges) {
|
|
38
|
+
if (edge.hidden.hasValue || edge.style.hasValue)
|
|
39
|
+
return YES;
|
|
40
|
+
}
|
|
41
|
+
return NO;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
static void RNNApplyScrollEdgeEffectToScrollView(UIScrollView *scrollView,
|
|
45
|
+
RNNScrollEdgeEffectOptions *options) {
|
|
46
|
+
if (![scrollView respondsToSelector:NSSelectorFromString(@"topEdgeEffect")])
|
|
47
|
+
return;
|
|
48
|
+
NSArray<NSString *> *edgeKeys =
|
|
49
|
+
@[ @"topEdgeEffect", @"bottomEdgeEffect", @"leftEdgeEffect", @"rightEdgeEffect" ];
|
|
50
|
+
for (NSString *key in edgeKeys) {
|
|
51
|
+
id effect = [scrollView valueForKey:key];
|
|
52
|
+
if (!effect)
|
|
53
|
+
continue;
|
|
54
|
+
RNNScrollEdgeOptions *perEdge = RNNScrollEdgeOptionsForKey(options, key);
|
|
55
|
+
|
|
56
|
+
Bool *hidden = (perEdge.hidden.hasValue) ? perEdge.hidden : options.hidden;
|
|
57
|
+
Text *style = (perEdge.style.hasValue) ? perEdge.style : options.style;
|
|
58
|
+
|
|
59
|
+
if (hidden.hasValue &&
|
|
60
|
+
[effect respondsToSelector:NSSelectorFromString(@"setHidden:")]) {
|
|
61
|
+
[effect setValue:@([hidden withDefault:NO]) forKey:@"hidden"];
|
|
62
|
+
}
|
|
63
|
+
if (style.hasValue &&
|
|
64
|
+
[effect respondsToSelector:NSSelectorFromString(@"setStyle:")]) {
|
|
65
|
+
[effect setValue:RNNScrollEdgeEffectStyleFromString(style.get) forKey:@"style"];
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
static void RNNApplyScrollEdgeEffectToView(UIView *view, RNNScrollEdgeEffectOptions *options) {
|
|
71
|
+
if (!RNNScrollEdgeEffectHasAnyValue(options))
|
|
72
|
+
return;
|
|
73
|
+
if ([view isKindOfClass:[UIScrollView class]]) {
|
|
74
|
+
RNNApplyScrollEdgeEffectToScrollView((UIScrollView *)view, options);
|
|
75
|
+
}
|
|
76
|
+
for (UIView *subview in view.subviews) {
|
|
77
|
+
RNNApplyScrollEdgeEffectToView(subview, options);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
7
81
|
@implementation RNNComponentPresenter {
|
|
8
82
|
TopBarTitlePresenter *_topBarTitlePresenter;
|
|
9
83
|
RNNButtonsPresenter *_buttonsPresenter;
|
|
@@ -34,6 +108,11 @@
|
|
|
34
108
|
- (void)componentDidAppear {
|
|
35
109
|
[_topBarTitlePresenter componentDidAppear];
|
|
36
110
|
[_buttonsPresenter componentDidAppear];
|
|
111
|
+
|
|
112
|
+
RNNComponentViewController *viewController = self.boundViewController;
|
|
113
|
+
RNNNavigationOptions *withDefault =
|
|
114
|
+
[viewController.options withDefault:[self defaultOptions]];
|
|
115
|
+
RNNApplyScrollEdgeEffectToView(viewController.view, withDefault.scrollEdgeEffect);
|
|
37
116
|
}
|
|
38
117
|
|
|
39
118
|
- (void)componentDidDisappear {
|
|
@@ -102,6 +181,8 @@
|
|
|
102
181
|
defaultDisabledColor:withDefault.topBar.rightButtonDisabledColor
|
|
103
182
|
animated:[withDefault.topBar.animateRightButtons withDefault:NO]];
|
|
104
183
|
}
|
|
184
|
+
|
|
185
|
+
RNNApplyScrollEdgeEffectToView(viewController.view, withDefault.scrollEdgeEffect);
|
|
105
186
|
}
|
|
106
187
|
|
|
107
188
|
- (void)applyOptionsOnInit:(RNNNavigationOptions *)options {
|
|
@@ -236,6 +317,10 @@
|
|
|
236
317
|
}
|
|
237
318
|
|
|
238
319
|
[_topBarTitlePresenter mergeOptions:mergeOptions.topBar resolvedOptions:withDefault.topBar];
|
|
320
|
+
|
|
321
|
+
if (RNNScrollEdgeEffectHasAnyValue(mergeOptions.scrollEdgeEffect)) {
|
|
322
|
+
RNNApplyScrollEdgeEffectToView(viewController.view, mergeOptions.scrollEdgeEffect);
|
|
323
|
+
}
|
|
239
324
|
}
|
|
240
325
|
|
|
241
326
|
- (void)renderComponents:(RNNNavigationOptions *)options
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
#import "RNNModalOptions.h"
|
|
7
7
|
#import "RNNOverlayOptions.h"
|
|
8
8
|
#import "RNNPreviewOptions.h"
|
|
9
|
+
#import "RNNScrollEdgeEffectOptions.h"
|
|
9
10
|
#import "RNNSharedElementAnimationOptions.h"
|
|
10
11
|
#import "RNNSideMenuOptions.h"
|
|
11
12
|
#import "RNNSplitViewOptions.h"
|
|
@@ -34,6 +35,7 @@ extern const NSInteger BLUR_TOPBAR_TAG;
|
|
|
34
35
|
@property(nonatomic, strong) RNNModalOptions *modal;
|
|
35
36
|
@property(nonatomic, strong) DeprecationOptions *deprecations;
|
|
36
37
|
@property(nonatomic, strong) WindowOptions *window;
|
|
38
|
+
@property(nonatomic, strong) RNNScrollEdgeEffectOptions *scrollEdgeEffect;
|
|
37
39
|
|
|
38
40
|
@property(nonatomic, strong) Bool *popGesture;
|
|
39
41
|
@property(nonatomic, strong) Bool *navigationButtonEventOnSwipeBack;
|
|
@@ -39,6 +39,8 @@
|
|
|
39
39
|
self.modal = [[RNNModalOptions alloc] initWithDict:dict[@"modal"]];
|
|
40
40
|
self.deprecations = [[DeprecationOptions alloc] initWithDict:dict[@"deprecations"]];
|
|
41
41
|
self.window = [[WindowOptions alloc] initWithDict:dict[@"window"]];
|
|
42
|
+
self.scrollEdgeEffect =
|
|
43
|
+
[[RNNScrollEdgeEffectOptions alloc] initWithDict:dict[@"scrollEdgeEffect"]];
|
|
42
44
|
|
|
43
45
|
self.popGesture = [[Bool alloc] initWithValue:dict[@"popGesture"]];
|
|
44
46
|
self.navigationButtonEventOnSwipeBack = [[Bool alloc] initWithValue:dict[@"navigationButtonEventOnSwipeBack"]];
|
|
@@ -71,6 +73,7 @@
|
|
|
71
73
|
[result.modal mergeOptions:options.modal];
|
|
72
74
|
[result.deprecations mergeOptions:options.deprecations];
|
|
73
75
|
[result.window mergeOptions:options.window];
|
|
76
|
+
[result.scrollEdgeEffect mergeOptions:options.scrollEdgeEffect];
|
|
74
77
|
|
|
75
78
|
if (options.popGesture.hasValue)
|
|
76
79
|
result.popGesture = options.popGesture;
|
|
@@ -105,6 +108,7 @@
|
|
|
105
108
|
[newOptions.modal mergeOptions:self.modal];
|
|
106
109
|
[newOptions.deprecations mergeOptions:self.deprecations];
|
|
107
110
|
[newOptions.window mergeOptions:self.window];
|
|
111
|
+
[newOptions.scrollEdgeEffect mergeOptions:self.scrollEdgeEffect];
|
|
108
112
|
|
|
109
113
|
newOptions.popGesture = self.popGesture;
|
|
110
114
|
newOptions.navigationButtonEventOnSwipeBack = self.navigationButtonEventOnSwipeBack;
|
package/ios/RNNReactButtonView.h
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
#import "RNNReactButtonView.h"
|
|
2
|
+
#import <React/RCTSurface.h>
|
|
2
3
|
|
|
3
|
-
|
|
4
|
+
static const CGFloat kMinBarButtonSlotSize = 44.0;
|
|
5
|
+
|
|
6
|
+
@implementation RNNReactButtonView {
|
|
7
|
+
NSLayoutConstraint *_widthConstraint;
|
|
8
|
+
NSLayoutConstraint *_heightConstraint;
|
|
9
|
+
BOOL _didCenterHorizontally;
|
|
10
|
+
CGFloat _lastReportedWidth;
|
|
11
|
+
}
|
|
4
12
|
|
|
5
13
|
- (instancetype)initWithHost:(RCTHost *)host
|
|
6
14
|
moduleName:(NSString *)moduleName
|
|
@@ -10,15 +18,188 @@
|
|
|
10
18
|
reactViewReadyBlock:(RNNReactViewReadyCompletionBlock)reactViewReadyBlock {
|
|
11
19
|
self = [super initWithHost:host moduleName:moduleName initialProperties:initialProperties eventEmitter:eventEmitter sizeMeasureMode:convertToSurfaceSizeMeasureMode(RCTRootViewSizeFlexibilityWidthAndHeight) reactViewReadyBlock:reactViewReadyBlock];
|
|
12
20
|
[host.surfacePresenter addObserver:self];
|
|
13
|
-
self.backgroundColor = UIColor
|
|
21
|
+
self.backgroundColor = [UIColor clearColor];
|
|
22
|
+
|
|
23
|
+
if (@available(iOS 26.0, *)) {
|
|
24
|
+
if (![self designRequiresCompatibility]) {
|
|
25
|
+
self.sizeFlexibility = RCTRootViewSizeFlexibilityWidth;
|
|
26
|
+
self.translatesAutoresizingMaskIntoConstraints = NO;
|
|
27
|
+
_widthConstraint = [self.widthAnchor constraintEqualToConstant:0];
|
|
28
|
+
_heightConstraint = [self.heightAnchor constraintEqualToConstant:kMinBarButtonSlotSize];
|
|
29
|
+
_widthConstraint.priority = UILayoutPriorityDefaultHigh;
|
|
30
|
+
_heightConstraint.priority = UILayoutPriorityDefaultHigh;
|
|
31
|
+
_widthConstraint.active = YES;
|
|
32
|
+
_heightConstraint.active = YES;
|
|
33
|
+
_didCenterHorizontally = NO;
|
|
34
|
+
self.delegate = self;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
14
37
|
|
|
15
38
|
return self;
|
|
16
39
|
}
|
|
17
40
|
|
|
41
|
+
- (BOOL)designRequiresCompatibility {
|
|
42
|
+
static BOOL checked = NO;
|
|
43
|
+
static BOOL result = NO;
|
|
44
|
+
if (!checked) {
|
|
45
|
+
checked = YES;
|
|
46
|
+
result = [[[NSBundle mainBundle] objectForInfoDictionaryKey:@"UIDesignRequiresCompatibility"] boolValue];
|
|
47
|
+
}
|
|
48
|
+
return result;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
- (UIView *)surfaceHostView {
|
|
52
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
53
|
+
UIView *surfaceView = (UIView *)self.surface.view;
|
|
54
|
+
if (surfaceView != nil && surfaceView.superview == self) {
|
|
55
|
+
return surfaceView;
|
|
56
|
+
}
|
|
57
|
+
#endif
|
|
58
|
+
return self.subviews.firstObject;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
- (void)accumulateLeafBoundsInContainer:(UIView *)container unionRect:(CGRect *)unionRect {
|
|
62
|
+
for (UIView *subview in container.subviews) {
|
|
63
|
+
if (subview.hidden || subview.alpha < 0.01) {
|
|
64
|
+
continue;
|
|
65
|
+
}
|
|
66
|
+
if (subview.subviews.count == 0) {
|
|
67
|
+
CGRect rect = [subview convertRect:subview.bounds toView:self];
|
|
68
|
+
if (rect.size.width > 0 && rect.size.height > 0) {
|
|
69
|
+
*unionRect = CGRectIsNull(*unionRect) ? rect : CGRectUnion(*unionRect, rect);
|
|
70
|
+
}
|
|
71
|
+
} else {
|
|
72
|
+
[self accumulateLeafBoundsInContainer:subview unionRect:unionRect];
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
- (CGRect)visibleLeafContentBounds {
|
|
78
|
+
CGRect unionRect = CGRectNull;
|
|
79
|
+
UIView *surfaceView = [self surfaceHostView];
|
|
80
|
+
if (surfaceView) {
|
|
81
|
+
[self accumulateLeafBoundsInContainer:surfaceView unionRect:&unionRect];
|
|
82
|
+
}
|
|
83
|
+
if (CGRectIsNull(unionRect)) {
|
|
84
|
+
[self accumulateLeafBoundsInContainer:self unionRect:&unionRect];
|
|
85
|
+
}
|
|
86
|
+
return CGRectIsNull(unionRect) ? CGRectZero : unionRect;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
- (CGSize)measuredSurfaceContentSize {
|
|
90
|
+
CGSize intrinsic = CGSizeZero;
|
|
91
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
92
|
+
intrinsic = self.surface.intrinsicSize;
|
|
93
|
+
#else
|
|
94
|
+
intrinsic = self.intrinsicContentSize;
|
|
95
|
+
#endif
|
|
96
|
+
if (intrinsic.width <= 0 || intrinsic.height <= 0) {
|
|
97
|
+
return CGSizeZero;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
CGFloat maxWidth = self.bounds.size.width > 0 ? self.bounds.size.width : CGFLOAT_MAX;
|
|
101
|
+
CGSize fit = [self sizeThatFits:CGSizeMake(maxWidth, CGFLOAT_MAX)];
|
|
102
|
+
if (fit.height > 0 && fit.height < intrinsic.height - 0.5) {
|
|
103
|
+
intrinsic.height = fit.height;
|
|
104
|
+
}
|
|
105
|
+
return intrinsic;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
- (void)centerSurfaceContentIfNeeded {
|
|
109
|
+
if (self.bounds.size.width <= 0 || self.bounds.size.height <= 0) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
UIView *surfaceView = [self surfaceHostView];
|
|
114
|
+
if (!surfaceView || surfaceView == self) {
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
CGRect surfaceFrame = surfaceView.frame;
|
|
119
|
+
if (surfaceFrame.size.width <= 0) {
|
|
120
|
+
surfaceFrame.size.width = self.bounds.size.width;
|
|
121
|
+
}
|
|
122
|
+
if (surfaceFrame.size.height <= 0) {
|
|
123
|
+
surfaceFrame.size.height = self.bounds.size.height;
|
|
124
|
+
}
|
|
125
|
+
surfaceView.frame = CGRectMake(0, 0, surfaceFrame.size.width, surfaceFrame.size.height);
|
|
126
|
+
|
|
127
|
+
CGRect contentBounds = [self visibleLeafContentBounds];
|
|
128
|
+
if (!CGRectIsEmpty(contentBounds)) {
|
|
129
|
+
CGFloat targetY = (self.bounds.size.height - contentBounds.size.height) / 2.0;
|
|
130
|
+
CGFloat deltaY = targetY - contentBounds.origin.y;
|
|
131
|
+
if (fabs(deltaY) > 0.5) {
|
|
132
|
+
surfaceView.frame = CGRectOffset(surfaceView.frame, 0, deltaY);
|
|
133
|
+
}
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
CGSize contentSize = [self measuredSurfaceContentSize];
|
|
138
|
+
if (contentSize.height > 0 && self.bounds.size.height > contentSize.height + 0.5) {
|
|
139
|
+
CGFloat ty = (self.bounds.size.height - contentSize.height) / 2.0;
|
|
140
|
+
surfaceView.frame = CGRectMake(0, ty, self.bounds.size.width, contentSize.height);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
- (void)handleIntrinsicSizeChange:(CGSize)intrinsicSize {
|
|
145
|
+
if (intrinsicSize.width <= 0 || intrinsicSize.height <= 0) {
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
CGFloat width = MAX(intrinsicSize.width, kMinBarButtonSlotSize);
|
|
150
|
+
if (_widthConstraint && _heightConstraint) {
|
|
151
|
+
_widthConstraint.constant = width;
|
|
152
|
+
_heightConstraint.constant = kMinBarButtonSlotSize;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
if (self.intrinsicSizeDidChangeHandler && width > kMinBarButtonSlotSize &&
|
|
156
|
+
width > _lastReportedWidth) {
|
|
157
|
+
_lastReportedWidth = width;
|
|
158
|
+
self.intrinsicSizeDidChangeHandler(intrinsicSize);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
[self setNeedsLayout];
|
|
162
|
+
}
|
|
163
|
+
|
|
18
164
|
- (void)didMountComponentsWithRootTag:(NSInteger)rootTag {
|
|
19
165
|
if (self.surface.rootTag == rootTag) {
|
|
20
166
|
[super didMountComponentsWithRootTag:rootTag];
|
|
21
167
|
[self sizeToFit];
|
|
168
|
+
[self setNeedsLayout];
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
173
|
+
- (void)surface:(RCTSurface *)surface didChangeIntrinsicSize:(CGSize)intrinsicSize {
|
|
174
|
+
[self handleIntrinsicSizeChange:intrinsicSize];
|
|
175
|
+
}
|
|
176
|
+
#else
|
|
177
|
+
- (void)rootViewDidChangeIntrinsicSize:(RCTRootView *)rootView {
|
|
178
|
+
[self handleIntrinsicSizeChange:rootView.intrinsicContentSize];
|
|
179
|
+
[rootView setNeedsUpdateConstraints];
|
|
180
|
+
[rootView updateConstraintsIfNeeded];
|
|
181
|
+
}
|
|
182
|
+
#endif
|
|
183
|
+
|
|
184
|
+
- (void)layoutSubviews {
|
|
185
|
+
[super layoutSubviews];
|
|
186
|
+
if (@available(iOS 26.0, *)) {
|
|
187
|
+
if ([self designRequiresCompatibility]) {
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
[self centerSurfaceContentIfNeeded];
|
|
192
|
+
|
|
193
|
+
if (!_didCenterHorizontally && self.superview && self.frame.size.width > 0) {
|
|
194
|
+
CGFloat wrapperWidth = self.superview.bounds.size.width;
|
|
195
|
+
CGFloat selfWidth = self.frame.size.width;
|
|
196
|
+
if (wrapperWidth > selfWidth + 0.5) {
|
|
197
|
+
_didCenterHorizontally = YES;
|
|
198
|
+
CGFloat tx = (wrapperWidth - selfWidth) / 2.0;
|
|
199
|
+
CGAffineTransform transform = self.layer.affineTransform;
|
|
200
|
+
self.layer.affineTransform = CGAffineTransformMakeTranslation(tx, transform.ty);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
22
203
|
}
|
|
23
204
|
}
|
|
24
205
|
|
package/ios/RNNReactTitleView.mm
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
#import "RNNReactTitleView.h"
|
|
2
2
|
|
|
3
|
+
static const CGFloat kTitleViewDefaultHeight = 44.0;
|
|
4
|
+
|
|
3
5
|
@implementation RNNReactTitleView {
|
|
4
6
|
BOOL _fillParent;
|
|
5
7
|
CGFloat _expectedHeight;
|
|
@@ -11,19 +13,30 @@
|
|
|
11
13
|
|
|
12
14
|
- (CGSize)intrinsicContentSize {
|
|
13
15
|
if (_fillParent) {
|
|
14
|
-
return CGSizeMake(UILayoutFittingExpandedSize.width,
|
|
15
|
-
|
|
16
|
-
return [super intrinsicContentSize];
|
|
16
|
+
return CGSizeMake(UILayoutFittingExpandedSize.width,
|
|
17
|
+
_expectedHeight > 0 ? _expectedHeight : kTitleViewDefaultHeight);
|
|
17
18
|
}
|
|
19
|
+
return [super intrinsicContentSize];
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
- (CGSize)sizeThatFits:(CGSize)size {
|
|
23
|
+
if (_fillParent) {
|
|
24
|
+
return size;
|
|
25
|
+
}
|
|
26
|
+
return [super sizeThatFits:size];
|
|
18
27
|
}
|
|
19
28
|
|
|
20
29
|
- (void)setAlignment:(NSString *)alignment inFrame:(CGRect)frame {
|
|
21
30
|
if ([alignment isEqualToString:@"fill"]) {
|
|
22
31
|
_fillParent = YES;
|
|
23
|
-
_expectedHeight = frame.size.height;
|
|
24
|
-
self.
|
|
32
|
+
_expectedHeight = frame.size.height > 0 ? frame.size.height : kTitleViewDefaultHeight;
|
|
33
|
+
self.frame = frame;
|
|
34
|
+
self.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleLeftMargin |
|
|
35
|
+
UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleHeight;
|
|
25
36
|
self.sizeFlexibility = RCTRootViewSizeFlexibilityNone;
|
|
26
37
|
} else {
|
|
38
|
+
_fillParent = NO;
|
|
39
|
+
self.autoresizingMask = UIViewAutoresizingNone;
|
|
27
40
|
self.sizeFlexibility = RCTRootViewSizeFlexibilityWidthAndHeight;
|
|
28
41
|
__weak RNNReactView *weakSelf = self;
|
|
29
42
|
[self setRootViewDidChangeIntrinsicSize:^(CGSize intrinsicSize) {
|
|
@@ -32,6 +45,14 @@
|
|
|
32
45
|
}
|
|
33
46
|
}
|
|
34
47
|
|
|
48
|
+
- (void)layoutSubviews {
|
|
49
|
+
[super layoutSubviews];
|
|
50
|
+
if (_fillParent && self.bounds.size.height > 0 && _expectedHeight != self.bounds.size.height) {
|
|
51
|
+
_expectedHeight = self.bounds.size.height;
|
|
52
|
+
[self invalidateIntrinsicContentSize];
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
35
56
|
- (void)setRootViewDidChangeIntrinsicSize:(void (^)(CGSize))rootViewDidChangeIntrinsicSize {
|
|
36
57
|
_rootViewDidChangeIntrinsicSize = rootViewDidChangeIntrinsicSize;
|
|
37
58
|
self.delegate = self;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
#import "RNNOptions.h"
|
|
2
|
+
|
|
3
|
+
@interface RNNScrollEdgeOptions : RNNOptions
|
|
4
|
+
|
|
5
|
+
@property(nonatomic, strong) Bool *hidden;
|
|
6
|
+
@property(nonatomic, strong) Text *style;
|
|
7
|
+
|
|
8
|
+
@end
|
|
9
|
+
|
|
10
|
+
@interface RNNScrollEdgeEffectOptions : RNNOptions
|
|
11
|
+
|
|
12
|
+
@property(nonatomic, strong) Bool *hidden;
|
|
13
|
+
@property(nonatomic, strong) Text *style;
|
|
14
|
+
|
|
15
|
+
@property(nonatomic, strong) RNNScrollEdgeOptions *top;
|
|
16
|
+
@property(nonatomic, strong) RNNScrollEdgeOptions *bottom;
|
|
17
|
+
@property(nonatomic, strong) RNNScrollEdgeOptions *left;
|
|
18
|
+
@property(nonatomic, strong) RNNScrollEdgeOptions *right;
|
|
19
|
+
|
|
20
|
+
@end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
#import "RNNScrollEdgeEffectOptions.h"
|
|
2
|
+
|
|
3
|
+
@implementation RNNScrollEdgeOptions
|
|
4
|
+
|
|
5
|
+
- (instancetype)initWithDict:(NSDictionary *)dict {
|
|
6
|
+
self = [super initWithDict:dict];
|
|
7
|
+
self.hidden = [BoolParser parse:dict key:@"hidden"];
|
|
8
|
+
self.style = [TextParser parse:dict key:@"style"];
|
|
9
|
+
return self;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
- (void)mergeOptions:(RNNScrollEdgeOptions *)options {
|
|
13
|
+
if (options.hidden.hasValue)
|
|
14
|
+
self.hidden = options.hidden;
|
|
15
|
+
if (options.style.hasValue)
|
|
16
|
+
self.style = options.style;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
@end
|
|
20
|
+
|
|
21
|
+
@implementation RNNScrollEdgeEffectOptions
|
|
22
|
+
|
|
23
|
+
- (instancetype)initWithDict:(NSDictionary *)dict {
|
|
24
|
+
self = [super initWithDict:dict];
|
|
25
|
+
self.hidden = [BoolParser parse:dict key:@"hidden"];
|
|
26
|
+
self.style = [TextParser parse:dict key:@"style"];
|
|
27
|
+
self.top = [[RNNScrollEdgeOptions alloc] initWithDict:dict[@"top"]];
|
|
28
|
+
self.bottom = [[RNNScrollEdgeOptions alloc] initWithDict:dict[@"bottom"]];
|
|
29
|
+
self.left = [[RNNScrollEdgeOptions alloc] initWithDict:dict[@"left"]];
|
|
30
|
+
self.right = [[RNNScrollEdgeOptions alloc] initWithDict:dict[@"right"]];
|
|
31
|
+
return self;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
- (void)mergeOptions:(RNNScrollEdgeEffectOptions *)options {
|
|
35
|
+
if (options.hidden.hasValue)
|
|
36
|
+
self.hidden = options.hidden;
|
|
37
|
+
if (options.style.hasValue)
|
|
38
|
+
self.style = options.style;
|
|
39
|
+
[self.top mergeOptions:options.top];
|
|
40
|
+
[self.bottom mergeOptions:options.bottom];
|
|
41
|
+
[self.left mergeOptions:options.left];
|
|
42
|
+
[self.right mergeOptions:options.right];
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
@end
|
|
@@ -28,6 +28,13 @@
|
|
|
28
28
|
return self;
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
+
- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated {
|
|
32
|
+
if (@available(iOS 26.0, *)) {
|
|
33
|
+
[self.presenter applyTopBarBackgroundBeforeShowingViewController:viewController];
|
|
34
|
+
}
|
|
35
|
+
[super pushViewController:viewController animated:animated];
|
|
36
|
+
}
|
|
37
|
+
|
|
31
38
|
- (void)viewDidLayoutSubviews {
|
|
32
39
|
[super viewDidLayoutSubviews];
|
|
33
40
|
[self.presenter applyOptionsOnViewDidLayoutSubviews:self.resolveOptions];
|
package/ios/RNNStackPresenter.h
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#import "RNNBasePresenter.h"
|
|
2
2
|
#import "RNNComponentViewCreator.h"
|
|
3
3
|
#import "RNNReactComponentRegistry.h"
|
|
4
|
+
#import <UIKit/UIKit.h>
|
|
4
5
|
|
|
5
6
|
@interface RNNStackPresenter : RNNBasePresenter
|
|
6
7
|
|
|
@@ -9,6 +10,9 @@
|
|
|
9
10
|
|
|
10
11
|
- (void)applyOptionsBeforePopping:(RNNNavigationOptions *)options;
|
|
11
12
|
|
|
13
|
+
- (void)applyTopBarBackgroundBeforeShowingViewController:(UIViewController *)viewController
|
|
14
|
+
API_AVAILABLE(ios(26.0));
|
|
15
|
+
|
|
12
16
|
- (BOOL)shouldPopItem:(UINavigationItem *)item options:(RNNNavigationOptions *)options;
|
|
13
17
|
|
|
14
18
|
@end
|
package/ios/RNNStackPresenter.mm
CHANGED
|
@@ -101,6 +101,14 @@
|
|
|
101
101
|
[_topBarPresenter applyOptionsBeforePopping:options.topBar];
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
+
- (void)applyTopBarBackgroundBeforeShowingViewController:(UIViewController *)viewController {
|
|
105
|
+
if (@available(iOS 26.0, *)) {
|
|
106
|
+
RNNNavigationOptions *withDefault = viewController.resolveOptionsWithDefault;
|
|
107
|
+
[_topBarPresenter applyBackgroundForTransitionToViewController:viewController
|
|
108
|
+
topBarOptions:withDefault.topBar];
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
104
112
|
- (void)mergeOptions:(RNNNavigationOptions *)mergeOptions
|
|
105
113
|
resolvedOptions:(RNNNavigationOptions *)resolvedOptions {
|
|
106
114
|
[super mergeOptions:mergeOptions resolvedOptions:resolvedOptions];
|
package/ios/RNNUIBarButtonItem.h
CHANGED
|
@@ -7,13 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
typedef void (^RNNButtonPressCallback)(NSString *buttonId);
|
|
9
9
|
|
|
10
|
-
@interface RNNUIBarButtonItem : UIBarButtonItem
|
|
11
|
-
#ifdef RCT_NEW_ARCH_ENABLED
|
|
12
|
-
RCTSurfaceDelegate
|
|
13
|
-
#else
|
|
14
|
-
RCTRootViewDelegate
|
|
15
|
-
#endif
|
|
16
|
-
>
|
|
10
|
+
@interface RNNUIBarButtonItem : UIBarButtonItem
|
|
17
11
|
|
|
18
12
|
@property(nonatomic, strong) NSString *buttonId;
|
|
19
13
|
|
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
#import <React/RCTSurface.h>
|
|
8
8
|
#endif
|
|
9
9
|
|
|
10
|
+
static const CGFloat kMinBarButtonSlotSize = 44.0;
|
|
11
|
+
|
|
10
12
|
@interface RNNUIBarButtonItem ()
|
|
11
13
|
|
|
12
14
|
@property(nonatomic, strong) NSLayoutConstraint *widthConstraint;
|
|
@@ -18,6 +20,7 @@
|
|
|
18
20
|
@implementation RNNUIBarButtonItem {
|
|
19
21
|
RNNIconCreator *_iconCreator;
|
|
20
22
|
RNNButtonOptions *_buttonOptions;
|
|
23
|
+
BOOL _didApplyWidthResize;
|
|
21
24
|
}
|
|
22
25
|
|
|
23
26
|
- (instancetype)init {
|
|
@@ -94,6 +97,49 @@
|
|
|
94
97
|
return self;
|
|
95
98
|
}
|
|
96
99
|
|
|
100
|
+
- (BOOL)designRequiresCompatibility {
|
|
101
|
+
static BOOL checked = NO;
|
|
102
|
+
static BOOL result = NO;
|
|
103
|
+
if (!checked) {
|
|
104
|
+
checked = YES;
|
|
105
|
+
result = [[[NSBundle mainBundle] objectForInfoDictionaryKey:@"UIDesignRequiresCompatibility"] boolValue];
|
|
106
|
+
}
|
|
107
|
+
return result;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
- (void)applyCustomViewIntrinsicSize:(CGSize)intrinsicSize {
|
|
111
|
+
if (!self.widthConstraint || !self.heightConstraint || intrinsicSize.width <= 0) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
CGFloat width = MAX(intrinsicSize.width, kMinBarButtonSlotSize);
|
|
116
|
+
if (_didApplyWidthResize && width <= self.widthConstraint.constant) {
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
if (self.widthConstraint.constant == width) {
|
|
121
|
+
_didApplyWidthResize = YES;
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
self.widthConstraint.constant = width;
|
|
126
|
+
_didApplyWidthResize = YES;
|
|
127
|
+
|
|
128
|
+
[self.customView setNeedsLayout];
|
|
129
|
+
[self invalidateNavigationBarLayout];
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
- (void)invalidateNavigationBarLayout {
|
|
133
|
+
UIView *view = self.customView;
|
|
134
|
+
while (view) {
|
|
135
|
+
if ([view isKindOfClass:[UINavigationBar class]]) {
|
|
136
|
+
[view setNeedsLayout];
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
view = view.superview;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
97
143
|
- (instancetype)initWithCustomView:(RNNReactView *)reactView
|
|
98
144
|
buttonOptions:(RNNButtonOptions *)buttonOptions
|
|
99
145
|
onPress:(RNNButtonPressCallback)onPress {
|
|
@@ -106,16 +152,25 @@
|
|
|
106
152
|
// back in via the hideSharedBackground option.
|
|
107
153
|
self.hidesSharedBackground =
|
|
108
154
|
[buttonOptions.hideSharedBackground withDefault:YES];
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
155
|
+
if (![self designRequiresCompatibility]) {
|
|
156
|
+
// Reserve a stable 44pt slot for push-transition snapshots, then grow
|
|
157
|
+
// width once when React reports intrinsic size (e.g. wide pickers).
|
|
158
|
+
// Height stays 44; vertical alignment is handled in React.
|
|
159
|
+
reactView.translatesAutoresizingMaskIntoConstraints = NO;
|
|
160
|
+
self.widthConstraint = [reactView.widthAnchor constraintEqualToConstant:kMinBarButtonSlotSize];
|
|
161
|
+
self.heightConstraint = [reactView.heightAnchor constraintEqualToConstant:kMinBarButtonSlotSize];
|
|
162
|
+
self.widthConstraint.priority = UILayoutPriorityRequired;
|
|
163
|
+
self.heightConstraint.priority = UILayoutPriorityRequired;
|
|
164
|
+
self.widthConstraint.active = YES;
|
|
165
|
+
self.heightConstraint.active = YES;
|
|
166
|
+
if ([reactView isKindOfClass:[RNNReactButtonView class]]) {
|
|
167
|
+
RNNReactButtonView *buttonView = (RNNReactButtonView *)reactView;
|
|
168
|
+
__weak RNNUIBarButtonItem *weakSelf = self;
|
|
169
|
+
buttonView.intrinsicSizeDidChangeHandler = ^(CGSize intrinsicSize) {
|
|
170
|
+
[weakSelf applyCustomViewIntrinsicSize:intrinsicSize];
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
}
|
|
119
174
|
}
|
|
120
175
|
[self applyOptions:buttonOptions];
|
|
121
176
|
self.onPress = onPress;
|
|
@@ -219,26 +274,6 @@
|
|
|
219
274
|
}
|
|
220
275
|
|
|
221
276
|
|
|
222
|
-
#ifdef RCT_NEW_ARCH_ENABLED
|
|
223
|
-
// TODO: Verify
|
|
224
|
-
- (void)surface:(RCTSurface *)surface didChangeIntrinsicSize:(CGSize)intrinsicSize {
|
|
225
|
-
self.widthConstraint.constant = intrinsicSize.width;
|
|
226
|
-
self.heightConstraint.constant = intrinsicSize.height;
|
|
227
|
-
[surface setSize:intrinsicSize];
|
|
228
|
-
//[rootView setNeedsUpdateConstraints];
|
|
229
|
-
//[rootView updateConstraintsIfNeeded];
|
|
230
|
-
//surface.hidden = NO;
|
|
231
|
-
}
|
|
232
|
-
#else
|
|
233
|
-
- (void)rootViewDidChangeIntrinsicSize:(RCTRootView *)rootView {
|
|
234
|
-
self.widthConstraint.constant = rootView.intrinsicContentSize.width;
|
|
235
|
-
self.heightConstraint.constant = rootView.intrinsicContentSize.height;
|
|
236
|
-
[rootView setNeedsUpdateConstraints];
|
|
237
|
-
[rootView updateConstraintsIfNeeded];
|
|
238
|
-
rootView.hidden = NO;
|
|
239
|
-
}
|
|
240
|
-
#endif
|
|
241
|
-
|
|
242
277
|
- (void)onButtonPressed:(RNNUIBarButtonItem *)barButtonItem {
|
|
243
278
|
self.onPress(self.buttonId);
|
|
244
279
|
}
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
#import "TopBarAppearancePresenter.h"
|
|
2
2
|
#import "RNNFontAttributesCreator.h"
|
|
3
|
+
#import "UIColor+RNNUtils.h"
|
|
4
|
+
#import "UIImage+utils.h"
|
|
3
5
|
#import "UIViewController+LayoutProtocol.h"
|
|
4
6
|
|
|
5
7
|
@interface TopBarAppearancePresenter ()
|
|
6
8
|
|
|
9
|
+
- (void)applyBackgroundToNavigationItem:(UINavigationItem *)item topBarOptions:(RNNTopBarOptions *)options;
|
|
10
|
+
- (void)syncNavigationBarAppearanceFromNavigationItem:(UINavigationItem *)item;
|
|
11
|
+
- (void)applyBackgroundToAppearance:(UINavigationBarAppearance *)appearance
|
|
12
|
+
withOpaqueColor:(UIColor *)color
|
|
13
|
+
transparent:(BOOL)transparent
|
|
14
|
+
translucent:(BOOL)translucent;
|
|
15
|
+
|
|
7
16
|
@end
|
|
8
17
|
|
|
9
18
|
@implementation TopBarAppearancePresenter
|
|
@@ -11,6 +20,97 @@
|
|
|
11
20
|
@synthesize borderColor = _borderColor;
|
|
12
21
|
@synthesize scrollEdgeBorderColor = _scrollEdgeBorderColor;
|
|
13
22
|
|
|
23
|
+
- (void)applyBackgroundToNavigationItem:(UINavigationItem *)item topBarOptions:(RNNTopBarOptions *)options {
|
|
24
|
+
UIColor *color = [options.background.color withDefault:nil];
|
|
25
|
+
BOOL transparent = color.isTransparent;
|
|
26
|
+
BOOL translucent = [options.background.translucent withDefault:NO];
|
|
27
|
+
|
|
28
|
+
if (!item.standardAppearance) {
|
|
29
|
+
item.standardAppearance = [UINavigationBarAppearance new];
|
|
30
|
+
}
|
|
31
|
+
if (!item.scrollEdgeAppearance) {
|
|
32
|
+
item.scrollEdgeAppearance = [UINavigationBarAppearance new];
|
|
33
|
+
}
|
|
34
|
+
[self applyBackgroundToAppearance:item.standardAppearance
|
|
35
|
+
withOpaqueColor:color
|
|
36
|
+
transparent:transparent
|
|
37
|
+
translucent:translucent];
|
|
38
|
+
[self applyBackgroundToAppearance:item.scrollEdgeAppearance
|
|
39
|
+
withOpaqueColor:color
|
|
40
|
+
transparent:transparent
|
|
41
|
+
translucent:translucent];
|
|
42
|
+
|
|
43
|
+
if ([options.scrollEdgeAppearance.active withDefault:NO]) {
|
|
44
|
+
UIColor *scrollEdgeColor = [options.scrollEdgeAppearance.background.color withDefault:nil];
|
|
45
|
+
BOOL scrollEdgeTransparent = scrollEdgeColor.isTransparent;
|
|
46
|
+
BOOL scrollEdgeTranslucent =
|
|
47
|
+
[options.scrollEdgeAppearance.background.translucent withDefault:translucent];
|
|
48
|
+
UIColor *resolvedScrollEdgeColor = scrollEdgeColor ?: color;
|
|
49
|
+
[self applyBackgroundToAppearance:item.scrollEdgeAppearance
|
|
50
|
+
withOpaqueColor:resolvedScrollEdgeColor
|
|
51
|
+
transparent:scrollEdgeTransparent
|
|
52
|
+
translucent:scrollEdgeTranslucent];
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
if (@available(iOS 26.0, *)) {
|
|
56
|
+
[self syncNavigationBarAppearanceFromNavigationItem:item];
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
- (void)applyBackgroundForTransitionToViewController:(UIViewController *)viewController
|
|
61
|
+
topBarOptions:(RNNTopBarOptions *)options {
|
|
62
|
+
if (@available(iOS 26.0, *)) {
|
|
63
|
+
[self applyBackgroundToNavigationItem:viewController.navigationItem topBarOptions:options];
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
- (void)syncNavigationBarAppearanceFromNavigationItem:(UINavigationItem *)item {
|
|
68
|
+
UINavigationBar *navigationBar = self.navigationController.navigationBar;
|
|
69
|
+
if (item.standardAppearance) {
|
|
70
|
+
navigationBar.standardAppearance = [item.standardAppearance copy];
|
|
71
|
+
}
|
|
72
|
+
UINavigationBarAppearance *scrollEdgeAppearance =
|
|
73
|
+
item.scrollEdgeAppearance ?: item.standardAppearance;
|
|
74
|
+
if (scrollEdgeAppearance) {
|
|
75
|
+
navigationBar.scrollEdgeAppearance = [scrollEdgeAppearance copy];
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
- (void)applyBackgroundToAppearance:(UINavigationBarAppearance *)appearance
|
|
80
|
+
withOpaqueColor:(UIColor *)color
|
|
81
|
+
transparent:(BOOL)transparent
|
|
82
|
+
translucent:(BOOL)translucent {
|
|
83
|
+
if (transparent || color.isTransparent) {
|
|
84
|
+
[appearance configureWithTransparentBackground];
|
|
85
|
+
if (@available(iOS 26.0, *)) {
|
|
86
|
+
appearance.backgroundEffect = nil;
|
|
87
|
+
appearance.backgroundColor = UIColor.clearColor;
|
|
88
|
+
appearance.backgroundImage = nil;
|
|
89
|
+
}
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
if (color) {
|
|
94
|
+
if (@available(iOS 26.0, *)) {
|
|
95
|
+
[appearance configureWithTransparentBackground];
|
|
96
|
+
appearance.backgroundEffect = nil;
|
|
97
|
+
appearance.shadowColor = nil;
|
|
98
|
+
appearance.backgroundColor = color;
|
|
99
|
+
appearance.backgroundImage = [UIImage imageWithSize:CGSizeMake(1, 1) color:color];
|
|
100
|
+
} else {
|
|
101
|
+
[appearance configureWithOpaqueBackground];
|
|
102
|
+
appearance.backgroundColor = color;
|
|
103
|
+
}
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
if (translucent) {
|
|
108
|
+
[appearance configureWithDefaultBackground];
|
|
109
|
+
} else {
|
|
110
|
+
[appearance configureWithOpaqueBackground];
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
14
114
|
- (void)applyOptions:(RNNTopBarOptions *)options {
|
|
15
115
|
[self setTranslucent:[options.background.translucent withDefault:NO]];
|
|
16
116
|
[self
|
|
@@ -77,36 +177,24 @@
|
|
|
77
177
|
}
|
|
78
178
|
|
|
79
179
|
- (void)updateScrollEdgeAppearance {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
} else if (self.scrollEdgeTranslucent) {
|
|
86
|
-
[self.getScrollEdgeAppearance configureWithDefaultBackground];
|
|
87
|
-
} else {
|
|
88
|
-
[self.getScrollEdgeAppearance configureWithOpaqueBackground];
|
|
89
|
-
if (self.backgroundColor) {
|
|
90
|
-
[self.getScrollEdgeAppearance setBackgroundColor:self.backgroundColor];
|
|
91
|
-
}
|
|
92
|
-
}
|
|
180
|
+
UIColor *color = self.scrollEdgeAppearanceColor ?: self.backgroundColor;
|
|
181
|
+
[self applyBackgroundToAppearance:self.getScrollEdgeAppearance
|
|
182
|
+
withOpaqueColor:color
|
|
183
|
+
transparent:self.scrollEdgeTransparent
|
|
184
|
+
translucent:self.scrollEdgeTranslucent];
|
|
93
185
|
}
|
|
94
186
|
|
|
95
187
|
- (void)updateBackgroundAppearance {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
[self.
|
|
106
|
-
[self.getScrollEdgeAppearance configureWithDefaultBackground];
|
|
107
|
-
} else {
|
|
108
|
-
[self.getAppearance configureWithOpaqueBackground];
|
|
109
|
-
[self.getScrollEdgeAppearance configureWithOpaqueBackground];
|
|
188
|
+
[self applyBackgroundToAppearance:self.getAppearance
|
|
189
|
+
withOpaqueColor:self.backgroundColor
|
|
190
|
+
transparent:self.transparent
|
|
191
|
+
translucent:self.translucent];
|
|
192
|
+
[self applyBackgroundToAppearance:self.getScrollEdgeAppearance
|
|
193
|
+
withOpaqueColor:self.backgroundColor
|
|
194
|
+
transparent:self.transparent
|
|
195
|
+
translucent:self.translucent];
|
|
196
|
+
if (@available(iOS 26.0, *)) {
|
|
197
|
+
[self syncNavigationBarAppearanceFromNavigationItem:self.currentNavigationItem];
|
|
110
198
|
}
|
|
111
199
|
}
|
|
112
200
|
|
package/ios/TopBarPresenter.h
CHANGED
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
#import "RNNBasePresenter.h"
|
|
2
2
|
#import "RNNTopBarOptions.h"
|
|
3
|
+
#import <UIKit/UIKit.h>
|
|
3
4
|
|
|
4
5
|
@interface TopBarPresenter : RNNBasePresenter
|
|
5
6
|
|
|
7
|
+
- (UINavigationController *)navigationController;
|
|
8
|
+
|
|
6
9
|
- (void)applyOptions:(RNNTopBarOptions *)options;
|
|
7
10
|
|
|
8
11
|
- (void)applyOptionsBeforePopping:(RNNTopBarOptions *)options;
|
|
9
12
|
|
|
13
|
+
- (void)applyBackgroundForTransitionToViewController:(UIViewController *)viewController
|
|
14
|
+
topBarOptions:(RNNTopBarOptions *)options API_AVAILABLE(ios(26.0));
|
|
15
|
+
|
|
10
16
|
- (void)mergeOptions:(RNNTopBarOptions *)options withDefault:(RNNTopBarOptions *)defaultOptions;
|
|
11
17
|
|
|
12
18
|
- (instancetype)initWithNavigationController:(UINavigationController *)boundNavigationController;
|
package/ios/TopBarPresenter.mm
CHANGED
|
@@ -71,6 +71,10 @@
|
|
|
71
71
|
[self.navigationController.navigationBar setBackIndicatorTransitionMaskImage:image];
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
+
- (void)applyBackgroundForTransitionToViewController:(UIViewController *)viewController
|
|
75
|
+
topBarOptions:(RNNTopBarOptions *)options {
|
|
76
|
+
}
|
|
77
|
+
|
|
74
78
|
- (void)setBackgroundColor:(UIColor *)backgroundColor {
|
|
75
79
|
_backgroundColor = backgroundColor;
|
|
76
80
|
[self updateBackgroundAppearance];
|
|
@@ -83,12 +83,26 @@
|
|
|
83
83
|
reactViewReadyBlock:readyBlock];
|
|
84
84
|
_customTitleView.backgroundColor = UIColor.clearColor;
|
|
85
85
|
NSString *alignment = [options.title.component.alignment withDefault:@""];
|
|
86
|
-
|
|
87
|
-
|
|
86
|
+
UINavigationBar *navigationBar = viewController.navigationController.navigationBar;
|
|
87
|
+
CGRect barBounds = navigationBar.bounds;
|
|
88
|
+
[_customTitleView setAlignment:alignment inFrame:barBounds];
|
|
88
89
|
[_customTitleView layoutIfNeeded];
|
|
89
90
|
|
|
90
91
|
viewController.navigationItem.titleView = nil;
|
|
91
92
|
viewController.navigationItem.titleView = _customTitleView;
|
|
93
|
+
|
|
94
|
+
__weak RNNReactTitleView *weakTitleView = _customTitleView;
|
|
95
|
+
__weak UIViewController *weakViewController = viewController;
|
|
96
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
97
|
+
UINavigationController *navigationController = weakViewController.navigationController;
|
|
98
|
+
if (!navigationController || !weakTitleView) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
[weakTitleView setAlignment:alignment inFrame:navigationController.navigationBar.bounds];
|
|
102
|
+
weakViewController.navigationItem.titleView = weakTitleView;
|
|
103
|
+
[weakTitleView setNeedsLayout];
|
|
104
|
+
[weakTitleView layoutIfNeeded];
|
|
105
|
+
});
|
|
92
106
|
[_customTitleView componentWillAppear];
|
|
93
107
|
[_customTitleView componentDidAppear];
|
|
94
108
|
} else {
|
|
@@ -1584,6 +1584,12 @@ export interface Options {
|
|
|
1584
1584
|
* #### (iOS specific)
|
|
1585
1585
|
*/
|
|
1586
1586
|
window?: WindowOptions;
|
|
1587
|
+
/**
|
|
1588
|
+
* Show / hide or change the style of the iOS 26 scroll edge effect on every
|
|
1589
|
+
* UIScrollView contained in the screen.
|
|
1590
|
+
* #### (iOS 26+ specific)
|
|
1591
|
+
*/
|
|
1592
|
+
scrollEdgeEffect?: OptionsScrollEdgeEffect;
|
|
1587
1593
|
/**
|
|
1588
1594
|
* Enable or disable automatically blurring focused input, dismissing keyboard on unmount
|
|
1589
1595
|
* #### (Android specific)
|
|
@@ -1591,5 +1597,52 @@ export interface Options {
|
|
|
1591
1597
|
*/
|
|
1592
1598
|
blurOnUnmount?: boolean;
|
|
1593
1599
|
}
|
|
1600
|
+
export interface OptionsScrollEdge {
|
|
1601
|
+
/**
|
|
1602
|
+
* Hide the scroll edge effect on this edge.
|
|
1603
|
+
* #### (iOS 26+ specific)
|
|
1604
|
+
*/
|
|
1605
|
+
hidden?: boolean;
|
|
1606
|
+
/**
|
|
1607
|
+
* Style of the scroll edge effect on this edge.
|
|
1608
|
+
* #### (iOS 26+ specific)
|
|
1609
|
+
* @default 'automatic'
|
|
1610
|
+
*/
|
|
1611
|
+
style?: 'automatic' | 'soft' | 'hard';
|
|
1612
|
+
}
|
|
1613
|
+
export interface OptionsScrollEdgeEffect {
|
|
1614
|
+
/**
|
|
1615
|
+
* Hide the scroll edge effect on all four edges of contained scroll views.
|
|
1616
|
+
* Per-edge values (top / bottom / left / right) take precedence over this.
|
|
1617
|
+
* #### (iOS 26+ specific)
|
|
1618
|
+
*/
|
|
1619
|
+
hidden?: boolean;
|
|
1620
|
+
/**
|
|
1621
|
+
* Style of the scroll edge effect on all four edges. Per-edge values take precedence.
|
|
1622
|
+
* #### (iOS 26+ specific)
|
|
1623
|
+
* @default 'automatic'
|
|
1624
|
+
*/
|
|
1625
|
+
style?: 'automatic' | 'soft' | 'hard';
|
|
1626
|
+
/**
|
|
1627
|
+
* Per-edge override for the top edge effect. Falls back to the global hidden / style.
|
|
1628
|
+
* #### (iOS 26+ specific)
|
|
1629
|
+
*/
|
|
1630
|
+
top?: OptionsScrollEdge;
|
|
1631
|
+
/**
|
|
1632
|
+
* Per-edge override for the bottom edge effect. Falls back to the global hidden / style.
|
|
1633
|
+
* #### (iOS 26+ specific)
|
|
1634
|
+
*/
|
|
1635
|
+
bottom?: OptionsScrollEdge;
|
|
1636
|
+
/**
|
|
1637
|
+
* Per-edge override for the left edge effect. Falls back to the global hidden / style.
|
|
1638
|
+
* #### (iOS 26+ specific)
|
|
1639
|
+
*/
|
|
1640
|
+
left?: OptionsScrollEdge;
|
|
1641
|
+
/**
|
|
1642
|
+
* Per-edge override for the right edge effect. Falls back to the global hidden / style.
|
|
1643
|
+
* #### (iOS 26+ specific)
|
|
1644
|
+
*/
|
|
1645
|
+
right?: OptionsScrollEdge;
|
|
1646
|
+
}
|
|
1594
1647
|
export {};
|
|
1595
1648
|
//# sourceMappingURL=Options.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Options.d.ts","sourceRoot":"","sources":["../../../src/interfaces/Options.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Options.d.ts","sourceRoot":"","sources":["../../../src/interfaces/Options.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1721,6 +1721,12 @@ setRoot: {
|
|
|
1721
1721
|
* #### (iOS specific)
|
|
1722
1722
|
*/
|
|
1723
1723
|
window?: WindowOptions;
|
|
1724
|
+
/**
|
|
1725
|
+
* Show / hide or change the style of the iOS 26 scroll edge effect on every
|
|
1726
|
+
* UIScrollView contained in the screen.
|
|
1727
|
+
* #### (iOS 26+ specific)
|
|
1728
|
+
*/
|
|
1729
|
+
scrollEdgeEffect?: OptionsScrollEdgeEffect;
|
|
1724
1730
|
/**
|
|
1725
1731
|
* Enable or disable automatically blurring focused input, dismissing keyboard on unmount
|
|
1726
1732
|
* #### (Android specific)
|
|
@@ -1728,3 +1734,52 @@ setRoot: {
|
|
|
1728
1734
|
*/
|
|
1729
1735
|
blurOnUnmount?: boolean;
|
|
1730
1736
|
}
|
|
1737
|
+
|
|
1738
|
+
export interface OptionsScrollEdge {
|
|
1739
|
+
/**
|
|
1740
|
+
* Hide the scroll edge effect on this edge.
|
|
1741
|
+
* #### (iOS 26+ specific)
|
|
1742
|
+
*/
|
|
1743
|
+
hidden?: boolean;
|
|
1744
|
+
/**
|
|
1745
|
+
* Style of the scroll edge effect on this edge.
|
|
1746
|
+
* #### (iOS 26+ specific)
|
|
1747
|
+
* @default 'automatic'
|
|
1748
|
+
*/
|
|
1749
|
+
style?: 'automatic' | 'soft' | 'hard';
|
|
1750
|
+
}
|
|
1751
|
+
|
|
1752
|
+
export interface OptionsScrollEdgeEffect {
|
|
1753
|
+
/**
|
|
1754
|
+
* Hide the scroll edge effect on all four edges of contained scroll views.
|
|
1755
|
+
* Per-edge values (top / bottom / left / right) take precedence over this.
|
|
1756
|
+
* #### (iOS 26+ specific)
|
|
1757
|
+
*/
|
|
1758
|
+
hidden?: boolean;
|
|
1759
|
+
/**
|
|
1760
|
+
* Style of the scroll edge effect on all four edges. Per-edge values take precedence.
|
|
1761
|
+
* #### (iOS 26+ specific)
|
|
1762
|
+
* @default 'automatic'
|
|
1763
|
+
*/
|
|
1764
|
+
style?: 'automatic' | 'soft' | 'hard';
|
|
1765
|
+
/**
|
|
1766
|
+
* Per-edge override for the top edge effect. Falls back to the global hidden / style.
|
|
1767
|
+
* #### (iOS 26+ specific)
|
|
1768
|
+
*/
|
|
1769
|
+
top?: OptionsScrollEdge;
|
|
1770
|
+
/**
|
|
1771
|
+
* Per-edge override for the bottom edge effect. Falls back to the global hidden / style.
|
|
1772
|
+
* #### (iOS 26+ specific)
|
|
1773
|
+
*/
|
|
1774
|
+
bottom?: OptionsScrollEdge;
|
|
1775
|
+
/**
|
|
1776
|
+
* Per-edge override for the left edge effect. Falls back to the global hidden / style.
|
|
1777
|
+
* #### (iOS 26+ specific)
|
|
1778
|
+
*/
|
|
1779
|
+
left?: OptionsScrollEdge;
|
|
1780
|
+
/**
|
|
1781
|
+
* Per-edge override for the right edge effect. Falls back to the global hidden / style.
|
|
1782
|
+
* #### (iOS 26+ specific)
|
|
1783
|
+
*/
|
|
1784
|
+
right?: OptionsScrollEdge;
|
|
1785
|
+
}
|