Skip to content

Commit 0e456d6

Browse files
committed
Revert "feat(ios): back gesture with full screen swipe (callstack#705)"
This reverts commit 769a3a2.
1 parent afdfa8b commit 0e456d6

File tree

2 files changed

+2
-61
lines changed

2 files changed

+2
-61
lines changed

ios/Fabric/RNCPagerViewComponentView.mm

Lines changed: 1 addition & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,7 @@
1515

1616
using namespace facebook::react;
1717

18-
@interface RNCPagerViewComponentView () <RCTRNCViewPagerViewProtocol, UIPageViewControllerDataSource, UIPageViewControllerDelegate, UIScrollViewDelegate, UIGestureRecognizerDelegate>
19-
20-
@property(nonatomic, assign) UIPanGestureRecognizer* panGestureRecognizer;
21-
18+
@interface RNCPagerViewComponentView () <RCTRNCViewPagerViewProtocol, UIPageViewControllerDataSource, UIPageViewControllerDelegate, UIScrollViewDelegate>
2219
@end
2320

2421
@implementation RNCPagerViewComponentView {
@@ -66,11 +63,6 @@ - (instancetype)initWithFrame:(CGRect)frame
6663
_destinationIndex = -1;
6764
_layoutDirection = @"ltr";
6865
_overdrag = NO;
69-
UIPanGestureRecognizer* panGestureRecognizer = [UIPanGestureRecognizer new];
70-
self.panGestureRecognizer = panGestureRecognizer;
71-
panGestureRecognizer.delegate = self;
72-
[self addGestureRecognizer: panGestureRecognizer];
73-
7466
}
7567

7668
return self;
@@ -406,29 +398,6 @@ + (ComponentDescriptorProvider)componentDescriptorProvider
406398
}
407399

408400

409-
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
410-
411-
// Recognize simultaneously only if the other gesture is RN Screen's pan gesture (one that is used to perform fullScreenGestureEnabled)
412-
if (gestureRecognizer == self.panGestureRecognizer && [NSStringFromClass([otherGestureRecognizer class]) isEqual: @"RNSPanGestureRecognizer"]) {
413-
UIPanGestureRecognizer* panGestureRecognizer = (UIPanGestureRecognizer*) gestureRecognizer;
414-
CGPoint velocity = [panGestureRecognizer velocityInView:self];
415-
BOOL isLTR = [self isLtrLayout];
416-
BOOL isBackGesture = (isLTR && velocity.x > 0) || (!isLTR && velocity.x < 0);
417-
418-
if (self.currentIndex == 0 && isBackGesture) {
419-
scrollView.panGestureRecognizer.enabled = false;
420-
} else {
421-
const auto &viewProps = *std::static_pointer_cast<const RNCViewPagerProps>(_props);
422-
scrollView.panGestureRecognizer.enabled = viewProps.scrollEnabled;
423-
}
424-
425-
return YES;
426-
}
427-
const auto &viewProps = *std::static_pointer_cast<const RNCViewPagerProps>(_props);
428-
scrollView.panGestureRecognizer.enabled = viewProps.scrollEnabled;
429-
return NO;
430-
}
431-
432401
@end
433402

434403
Class<RCTComponentViewProtocol> RNCViewPagerCls(void)

ios/ReactNativePageView.m

Lines changed: 1 addition & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,7 @@
99
#import "RCTOnPageSelected.h"
1010
#import <math.h>
1111

12-
@interface ReactNativePageView () <UIPageViewControllerDataSource, UIPageViewControllerDelegate, UIScrollViewDelegate, UIGestureRecognizerDelegate>
13-
14-
@property(nonatomic, assign) UIPanGestureRecognizer* panGestureRecognizer;
12+
@interface ReactNativePageView () <UIPageViewControllerDataSource, UIPageViewControllerDelegate, UIScrollViewDelegate>
1513

1614
@property(nonatomic, strong) UIPageViewController *reactPageViewController;
1715
@property(nonatomic, strong) RCTEventDispatcher *eventDispatcher;
@@ -47,10 +45,6 @@ - (instancetype)initWithEventDispatcher:(RCTEventDispatcher *)eventDispatcher {
4745
_cachedControllers = [NSHashTable hashTableWithOptions:NSHashTableStrongMemory];
4846
_overdrag = NO;
4947
_layoutDirection = @"ltr";
50-
UIPanGestureRecognizer* panGestureRecognizer = [UIPanGestureRecognizer new];
51-
self.panGestureRecognizer = panGestureRecognizer;
52-
panGestureRecognizer.delegate = self;
53-
[self addGestureRecognizer: panGestureRecognizer];
5448
}
5549
return self;
5650
}
@@ -470,28 +464,6 @@ - (NSString *)determineScrollDirection:(UIScrollView *)scrollView {
470464
return scrollDirection;
471465
}
472466

473-
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
474-
475-
// Recognize simultaneously only if the other gesture is RN Screen's pan gesture (one that is used to perform fullScreenGestureEnabled)
476-
if (gestureRecognizer == self.panGestureRecognizer && [NSStringFromClass([otherGestureRecognizer class]) isEqual: @"RNSPanGestureRecognizer"]) {
477-
UIPanGestureRecognizer* panGestureRecognizer = (UIPanGestureRecognizer*) gestureRecognizer;
478-
CGPoint velocity = [panGestureRecognizer velocityInView:self];
479-
BOOL isLTR = [self isLtrLayout];
480-
BOOL isBackGesture = (isLTR && velocity.x > 0) || (!isLTR && velocity.x < 0);
481-
482-
if (self.currentIndex == 0 && isBackGesture) {
483-
self.scrollView.panGestureRecognizer.enabled = false;
484-
} else {
485-
self.scrollView.panGestureRecognizer.enabled = self.scrollEnabled;
486-
}
487-
488-
return YES;
489-
}
490-
491-
self.scrollView.panGestureRecognizer.enabled = self.scrollEnabled;
492-
return NO;
493-
}
494-
495467
- (BOOL)isLtrLayout {
496468
return [_layoutDirection isEqualToString:@"ltr"];
497469
}

0 commit comments

Comments
 (0)