Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refact: merge Fabric & Paper impls: ScreenStack (2) #1416

Merged
merged 113 commits into from
Apr 27, 2022

Conversation

kkafar and others added 30 commits April 8, 2022 11:38
It caused RN_FABRIC_ENABLED flag to be invalid (as it merged with
    previous flag from the list...)
Otherwise C++ standard headers are not visible from .m files -> project
fails to build.

e.g. Whem=n A.m includes B.h & B.h imports memory header: "#include
<memory>" -- memory header is not visible & compilation fails
1. move the prop to implemented section in JS
2. move the prop to "common" section in RNSScreenView interface
most likely some kind of merging artifact
most likely some kind of merge artifact
temporary solution until customAnimationOnSwipe is not added to
RNSScreenView on Fabric
these directives should be removed once implementations ale fully merged
to Paper specific section

This method is not present in RNSScreenStackComponentView, therefore I
conclude it is not necessary at least for now
@kkafar kkafar requested a review from WoLewicki April 22, 2022 14:02
ios/RNSScreenStack.mm Outdated Show resolved Hide resolved
ios/RNSScreenStack.mm Outdated Show resolved Hide resolved
maybeAddToParentAndUpdateContainer method in Fabric
@kkafar kkafar merged commit 0c34961 into main Apr 27, 2022
@kkafar kkafar deleted the @kkafar/merge-fabric-to-paper-screen-stack branch April 27, 2022 10:37
kkafar added a commit that referenced this pull request May 5, 2022
kkafar added a commit that referenced this pull request May 13, 2022
kkafar added a commit that referenced this pull request May 13, 2022
kkafar added a commit that referenced this pull request May 13, 2022
kkafar added a commit that referenced this pull request May 13, 2022
* chore: unify RNSScreen#vieDidLayoutSubviews

* chore: make RNSScreenStack#hitTest:withEvent: method shared

#1416 (comment)

* chore: make RNSScreenStackView#isScrollViewPanGestureRecongnizer & some
helper methods shared

#1416 (comment)

* chore: move backButtonInCustomView to shared sectionin
RNSScreenStackHeaderConfig.h

* chore: move backButtonInCustomView prop to implemented section in JS

* chore: update `backButtonInCustomView` for Fabric

* chore: unify
RNSScreenStackHeaderConfigView#willShowViewController:animated:withConfig

* refact: linter suggestion

* fix: RNSScreen viewDidLayoutSubviews

* chore: copy interfaces to android/src/paper directory

* fix: commit address in comment

It changed after I rebased
kkafar added a commit that referenced this pull request May 13, 2022
* chore: move preventNativeDismiss prop to common section in RNSScreen
interface

* fix: merge artifact

* chore: add preventNativeDismiss prop to codegen

* chore: add preventNativeDismiss prop update

* fix: add noop for Android

* chore: unify business logic between archs (8) (#1446)

* chore: unify RNSScreen#vieDidLayoutSubviews

* chore: make RNSScreenStack#hitTest:withEvent: method shared

#1416 (comment)

* chore: make RNSScreenStackView#isScrollViewPanGestureRecongnizer & some
helper methods shared

#1416 (comment)

* chore: move backButtonInCustomView to shared sectionin
RNSScreenStackHeaderConfig.h

* chore: move backButtonInCustomView prop to implemented section in JS

* chore: update `backButtonInCustomView` for Fabric

* chore: unify
RNSScreenStackHeaderConfigView#willShowViewController:animated:withConfig

* refact: linter suggestion

* fix: RNSScreen viewDidLayoutSubviews

* chore: copy interfaces to android/src/paper directory

* fix: commit address in comment

It changed after I rebased
kkafar added a commit that referenced this pull request May 13, 2022
…6) (#1443)

* chore: add homeIndicatorHidden prop to codegen

* chore: add prop update on Fabric

* chore: add noop for Android

This prop is iOS only

* chore: move `activityState` prop to common section in RNSScreen
interface

* chore: move activityState setter to common section in RNSScreenView impl

* refact: linter suggestion

* chore: make RNSScreenView#reactSuperview common & make it implement
RNSScreenContainerDelegate protocol

This hasn't been tested yet. However in any instance it crashes (as
    the protocol might be not implemented) we can just implement noops
for Fabric

* chore: move activityState to implemented section in codegen config files

* chore: make series of methods shared (see details)

* `RNSScreenView#notifyFinishTransitioning`
* `RNSScreen#notifyFinishTransitioning`
* `willMoveToParentViewController`
* `RNSScreenContainer#updateContainer`

These methods were coupled together.

* fix: handle activityState on Fabric

Default value for the prop (when it is not set) on Fabric is -1 instead
of nil (I believe we can not get nil from C++) thus this improved
condition should work for both archs.

* chore: add `preventNativeDismiss` prop for Fabric (7) (#1444)

* chore: move preventNativeDismiss prop to common section in RNSScreen
interface

* fix: merge artifact

* chore: add preventNativeDismiss prop to codegen

* chore: add preventNativeDismiss prop update

* fix: add noop for Android

* chore: unify business logic between archs (8) (#1446)

* chore: unify RNSScreen#vieDidLayoutSubviews

* chore: make RNSScreenStack#hitTest:withEvent: method shared

#1416 (comment)

* chore: make RNSScreenStackView#isScrollViewPanGestureRecongnizer & some
helper methods shared

#1416 (comment)

* chore: move backButtonInCustomView to shared sectionin
RNSScreenStackHeaderConfig.h

* chore: move backButtonInCustomView prop to implemented section in JS

* chore: update `backButtonInCustomView` for Fabric

* chore: unify
RNSScreenStackHeaderConfigView#willShowViewController:animated:withConfig

* refact: linter suggestion

* fix: RNSScreen viewDidLayoutSubviews

* chore: copy interfaces to android/src/paper directory

* fix: commit address in comment

It changed after I rebased
kkafar added a commit that referenced this pull request May 13, 2022
* chore: move gestureResponseDistance prop to shared section in RNSScreen
interface

* refact: linter suggestions

* chore: add gestureResponseDistanceProp to Codegen

* chore: add conversion methods for GestureResponseDistanceStruct

* refact: linter suggestion

* chore: add props update for Fabric

As there is no way for creating custom `equality operator` for custom
struct via codegen && such check (newProps != oldProps) would require
three "ands" I think it is easier and potentially cheaper to just assign
this (w/o surrounding if-check)

* chore: unify RNSScreenStack#gestureRecognizerShouldBegin method

* chore: move
RNSScreenStackView#isInGestureResponseDistance:gestureRecognizer: method
to common section

This is now possible, as `gestureResponseDistance` prop is available on
Fabric

* chore: add noop for Android

This prop is annotated as iOS only in docs

* chore: change GestureResponseDistance field type from int to float

* fix: merge artifact

* chore: add deafult value for gestureResponseDistance on JS side

It is still to be checked whether it is only place where this should be
added

* chore: unify RNSScreenStack#isInGestureResponseDistance:topScreen:
method

* chore: add `homeIndicatorHidden` & `activityState` props for Fabric (6) (#1443)

* chore: add homeIndicatorHidden prop to codegen

* chore: add prop update on Fabric

* chore: add noop for Android

This prop is iOS only

* chore: move `activityState` prop to common section in RNSScreen
interface

* chore: move activityState setter to common section in RNSScreenView impl

* refact: linter suggestion

* chore: make RNSScreenView#reactSuperview common & make it implement
RNSScreenContainerDelegate protocol

This hasn't been tested yet. However in any instance it crashes (as
    the protocol might be not implemented) we can just implement noops
for Fabric

* chore: move activityState to implemented section in codegen config files

* chore: make series of methods shared (see details)

* `RNSScreenView#notifyFinishTransitioning`
* `RNSScreen#notifyFinishTransitioning`
* `willMoveToParentViewController`
* `RNSScreenContainer#updateContainer`

These methods were coupled together.

* fix: handle activityState on Fabric

Default value for the prop (when it is not set) on Fabric is -1 instead
of nil (I believe we can not get nil from C++) thus this improved
condition should work for both archs.

* chore: add `preventNativeDismiss` prop for Fabric (7) (#1444)

* chore: move preventNativeDismiss prop to common section in RNSScreen
interface

* fix: merge artifact

* chore: add preventNativeDismiss prop to codegen

* chore: add preventNativeDismiss prop update

* fix: add noop for Android

* chore: unify business logic between archs (8) (#1446)

* chore: unify RNSScreen#vieDidLayoutSubviews

* chore: make RNSScreenStack#hitTest:withEvent: method shared

#1416 (comment)

* chore: make RNSScreenStackView#isScrollViewPanGestureRecongnizer & some
helper methods shared

#1416 (comment)

* chore: move backButtonInCustomView to shared sectionin
RNSScreenStackHeaderConfig.h

* chore: move backButtonInCustomView prop to implemented section in JS

* chore: update `backButtonInCustomView` for Fabric

* chore: unify
RNSScreenStackHeaderConfigView#willShowViewController:animated:withConfig

* refact: linter suggestion

* fix: RNSScreen viewDidLayoutSubviews

* chore: copy interfaces to android/src/paper directory

* fix: commit address in comment

It changed after I rebased
kkafar added a commit that referenced this pull request May 13, 2022
* chore: add customAnimationOnSwipe prop to codegen

* chore: move customAnimationOnSwipe prop to shared section in RNSScreen
interface

* refact: linter suggestion

* chore: add customAnimationOnSwipe update for Fabric

* chore: unify RNSScreenStackAnimator#animateTransition method

This is possible as customAnimationOnSwipe prop is now implemented on
Fabric

* chore: unify RNSScreenStack#gestureRecognizer should begin method

This is possible as customAnimationOnSwipe prop in now implemented on
Fabric

* chore: noop for Android

This prop is annotated as iOS only in docs

* chore: remove not needed difference between implementations

* chore: add `gestureResponseDistance` prop for Fabric (5) (#1442)

* chore: move gestureResponseDistance prop to shared section in RNSScreen
interface

* refact: linter suggestions

* chore: add gestureResponseDistanceProp to Codegen

* chore: add conversion methods for GestureResponseDistanceStruct

* refact: linter suggestion

* chore: add props update for Fabric

As there is no way for creating custom `equality operator` for custom
struct via codegen && such check (newProps != oldProps) would require
three "ands" I think it is easier and potentially cheaper to just assign
this (w/o surrounding if-check)

* chore: unify RNSScreenStack#gestureRecognizerShouldBegin method

* chore: move
RNSScreenStackView#isInGestureResponseDistance:gestureRecognizer: method
to common section

This is now possible, as `gestureResponseDistance` prop is available on
Fabric

* chore: add noop for Android

This prop is annotated as iOS only in docs

* chore: change GestureResponseDistance field type from int to float

* fix: merge artifact

* chore: add deafult value for gestureResponseDistance on JS side

It is still to be checked whether it is only place where this should be
added

* chore: unify RNSScreenStack#isInGestureResponseDistance:topScreen:
method

* chore: add `homeIndicatorHidden` & `activityState` props for Fabric (6) (#1443)

* chore: add homeIndicatorHidden prop to codegen

* chore: add prop update on Fabric

* chore: add noop for Android

This prop is iOS only

* chore: move `activityState` prop to common section in RNSScreen
interface

* chore: move activityState setter to common section in RNSScreenView impl

* refact: linter suggestion

* chore: make RNSScreenView#reactSuperview common & make it implement
RNSScreenContainerDelegate protocol

This hasn't been tested yet. However in any instance it crashes (as
    the protocol might be not implemented) we can just implement noops
for Fabric

* chore: move activityState to implemented section in codegen config files

* chore: make series of methods shared (see details)

* `RNSScreenView#notifyFinishTransitioning`
* `RNSScreen#notifyFinishTransitioning`
* `willMoveToParentViewController`
* `RNSScreenContainer#updateContainer`

These methods were coupled together.

* fix: handle activityState on Fabric

Default value for the prop (when it is not set) on Fabric is -1 instead
of nil (I believe we can not get nil from C++) thus this improved
condition should work for both archs.

* chore: add `preventNativeDismiss` prop for Fabric (7) (#1444)

* chore: move preventNativeDismiss prop to common section in RNSScreen
interface

* fix: merge artifact

* chore: add preventNativeDismiss prop to codegen

* chore: add preventNativeDismiss prop update

* fix: add noop for Android

* chore: unify business logic between archs (8) (#1446)

* chore: unify RNSScreen#vieDidLayoutSubviews

* chore: make RNSScreenStack#hitTest:withEvent: method shared

#1416 (comment)

* chore: make RNSScreenStackView#isScrollViewPanGestureRecongnizer & some
helper methods shared

#1416 (comment)

* chore: move backButtonInCustomView to shared sectionin
RNSScreenStackHeaderConfig.h

* chore: move backButtonInCustomView prop to implemented section in JS

* chore: update `backButtonInCustomView` for Fabric

* chore: unify
RNSScreenStackHeaderConfigView#willShowViewController:animated:withConfig

* refact: linter suggestion

* fix: RNSScreen viewDidLayoutSubviews

* chore: copy interfaces to android/src/paper directory

* fix: commit address in comment

It changed after I rebased
kkafar added a commit that referenced this pull request May 13, 2022
* chore: move hideKeyboardOnSwipe prop to common section in RNSScreen
header

* chore: add hideKeyboardOnSwipe prop to codegen

* chore: make keyboard dismiss logic common

* chore: add hideKeyboardOnSwipe prop update for Fabric

* chore: add noop for Android

This prop is marked as iOS only

* chore: add `customAnimationOnSwipe` prop for Fabric (4) (#1434)

* chore: add customAnimationOnSwipe prop to codegen

* chore: move customAnimationOnSwipe prop to shared section in RNSScreen
interface

* refact: linter suggestion

* chore: add customAnimationOnSwipe update for Fabric

* chore: unify RNSScreenStackAnimator#animateTransition method

This is possible as customAnimationOnSwipe prop is now implemented on
Fabric

* chore: unify RNSScreenStack#gestureRecognizer should begin method

This is possible as customAnimationOnSwipe prop in now implemented on
Fabric

* chore: noop for Android

This prop is annotated as iOS only in docs

* chore: remove not needed difference between implementations

* chore: add `gestureResponseDistance` prop for Fabric (5) (#1442)

* chore: move gestureResponseDistance prop to shared section in RNSScreen
interface

* refact: linter suggestions

* chore: add gestureResponseDistanceProp to Codegen

* chore: add conversion methods for GestureResponseDistanceStruct

* refact: linter suggestion

* chore: add props update for Fabric

As there is no way for creating custom `equality operator` for custom
struct via codegen && such check (newProps != oldProps) would require
three "ands" I think it is easier and potentially cheaper to just assign
this (w/o surrounding if-check)

* chore: unify RNSScreenStack#gestureRecognizerShouldBegin method

* chore: move
RNSScreenStackView#isInGestureResponseDistance:gestureRecognizer: method
to common section

This is now possible, as `gestureResponseDistance` prop is available on
Fabric

* chore: add noop for Android

This prop is annotated as iOS only in docs

* chore: change GestureResponseDistance field type from int to float

* fix: merge artifact

* chore: add deafult value for gestureResponseDistance on JS side

It is still to be checked whether it is only place where this should be
added

* chore: unify RNSScreenStack#isInGestureResponseDistance:topScreen:
method

* chore: add `homeIndicatorHidden` & `activityState` props for Fabric (6) (#1443)

* chore: add homeIndicatorHidden prop to codegen

* chore: add prop update on Fabric

* chore: add noop for Android

This prop is iOS only

* chore: move `activityState` prop to common section in RNSScreen
interface

* chore: move activityState setter to common section in RNSScreenView impl

* refact: linter suggestion

* chore: make RNSScreenView#reactSuperview common & make it implement
RNSScreenContainerDelegate protocol

This hasn't been tested yet. However in any instance it crashes (as
    the protocol might be not implemented) we can just implement noops
for Fabric

* chore: move activityState to implemented section in codegen config files

* chore: make series of methods shared (see details)

* `RNSScreenView#notifyFinishTransitioning`
* `RNSScreen#notifyFinishTransitioning`
* `willMoveToParentViewController`
* `RNSScreenContainer#updateContainer`

These methods were coupled together.

* fix: handle activityState on Fabric

Default value for the prop (when it is not set) on Fabric is -1 instead
of nil (I believe we can not get nil from C++) thus this improved
condition should work for both archs.

* chore: add `preventNativeDismiss` prop for Fabric (7) (#1444)

* chore: move preventNativeDismiss prop to common section in RNSScreen
interface

* fix: merge artifact

* chore: add preventNativeDismiss prop to codegen

* chore: add preventNativeDismiss prop update

* fix: add noop for Android

* chore: unify business logic between archs (8) (#1446)

* chore: unify RNSScreen#vieDidLayoutSubviews

* chore: make RNSScreenStack#hitTest:withEvent: method shared

#1416 (comment)

* chore: make RNSScreenStackView#isScrollViewPanGestureRecongnizer & some
helper methods shared

#1416 (comment)

* chore: move backButtonInCustomView to shared sectionin
RNSScreenStackHeaderConfig.h

* chore: move backButtonInCustomView prop to implemented section in JS

* chore: update `backButtonInCustomView` for Fabric

* chore: unify
RNSScreenStackHeaderConfigView#willShowViewController:animated:withConfig

* refact: linter suggestion

* fix: RNSScreen viewDidLayoutSubviews

* chore: copy interfaces to android/src/paper directory

* fix: commit address in comment

It changed after I rebased
kkafar added a commit that referenced this pull request May 13, 2022
* chore: add method for converting RNSScreenReplaceAnimation enum from Cpp
to obj-c

* chore: update replaceAnimation prop on Fabric

* refact: linter suggestion

* chore: add `hideKeyboardOnSwipe` prop for Fabric (3) (#1433)

* chore: move hideKeyboardOnSwipe prop to common section in RNSScreen
header

* chore: add hideKeyboardOnSwipe prop to codegen

* chore: make keyboard dismiss logic common

* chore: add hideKeyboardOnSwipe prop update for Fabric

* chore: add noop for Android

This prop is marked as iOS only

* chore: add `customAnimationOnSwipe` prop for Fabric (4) (#1434)

* chore: add customAnimationOnSwipe prop to codegen

* chore: move customAnimationOnSwipe prop to shared section in RNSScreen
interface

* refact: linter suggestion

* chore: add customAnimationOnSwipe update for Fabric

* chore: unify RNSScreenStackAnimator#animateTransition method

This is possible as customAnimationOnSwipe prop is now implemented on
Fabric

* chore: unify RNSScreenStack#gestureRecognizer should begin method

This is possible as customAnimationOnSwipe prop in now implemented on
Fabric

* chore: noop for Android

This prop is annotated as iOS only in docs

* chore: remove not needed difference between implementations

* chore: add `gestureResponseDistance` prop for Fabric (5) (#1442)

* chore: move gestureResponseDistance prop to shared section in RNSScreen
interface

* refact: linter suggestions

* chore: add gestureResponseDistanceProp to Codegen

* chore: add conversion methods for GestureResponseDistanceStruct

* refact: linter suggestion

* chore: add props update for Fabric

As there is no way for creating custom `equality operator` for custom
struct via codegen && such check (newProps != oldProps) would require
three "ands" I think it is easier and potentially cheaper to just assign
this (w/o surrounding if-check)

* chore: unify RNSScreenStack#gestureRecognizerShouldBegin method

* chore: move
RNSScreenStackView#isInGestureResponseDistance:gestureRecognizer: method
to common section

This is now possible, as `gestureResponseDistance` prop is available on
Fabric

* chore: add noop for Android

This prop is annotated as iOS only in docs

* chore: change GestureResponseDistance field type from int to float

* fix: merge artifact

* chore: add deafult value for gestureResponseDistance on JS side

It is still to be checked whether it is only place where this should be
added

* chore: unify RNSScreenStack#isInGestureResponseDistance:topScreen:
method

* chore: add `homeIndicatorHidden` & `activityState` props for Fabric (6) (#1443)

* chore: add homeIndicatorHidden prop to codegen

* chore: add prop update on Fabric

* chore: add noop for Android

This prop is iOS only

* chore: move `activityState` prop to common section in RNSScreen
interface

* chore: move activityState setter to common section in RNSScreenView impl

* refact: linter suggestion

* chore: make RNSScreenView#reactSuperview common & make it implement
RNSScreenContainerDelegate protocol

This hasn't been tested yet. However in any instance it crashes (as
    the protocol might be not implemented) we can just implement noops
for Fabric

* chore: move activityState to implemented section in codegen config files

* chore: make series of methods shared (see details)

* `RNSScreenView#notifyFinishTransitioning`
* `RNSScreen#notifyFinishTransitioning`
* `willMoveToParentViewController`
* `RNSScreenContainer#updateContainer`

These methods were coupled together.

* fix: handle activityState on Fabric

Default value for the prop (when it is not set) on Fabric is -1 instead
of nil (I believe we can not get nil from C++) thus this improved
condition should work for both archs.

* chore: add `preventNativeDismiss` prop for Fabric (7) (#1444)

* chore: move preventNativeDismiss prop to common section in RNSScreen
interface

* fix: merge artifact

* chore: add preventNativeDismiss prop to codegen

* chore: add preventNativeDismiss prop update

* fix: add noop for Android

* chore: unify business logic between archs (8) (#1446)

* chore: unify RNSScreen#vieDidLayoutSubviews

* chore: make RNSScreenStack#hitTest:withEvent: method shared

#1416 (comment)

* chore: make RNSScreenStackView#isScrollViewPanGestureRecongnizer & some
helper methods shared

#1416 (comment)

* chore: move backButtonInCustomView to shared sectionin
RNSScreenStackHeaderConfig.h

* chore: move backButtonInCustomView prop to implemented section in JS

* chore: update `backButtonInCustomView` for Fabric

* chore: unify
RNSScreenStackHeaderConfigView#willShowViewController:animated:withConfig

* refact: linter suggestion

* fix: RNSScreen viewDidLayoutSubviews

* chore: copy interfaces to android/src/paper directory

* fix: commit address in comment

It changed after I rebased
kkafar added a commit that referenced this pull request May 13, 2022
* chore: unify RNSScreenStack#updateContainer method

This is now possible as dismissed prop is implemented on both platforms

* fix: set _dismissed = NO in prepareForRecycle

As the component gets recycled, we must re-initialize the prop

* chore: add `replaceAnimation` prop for Fabric (2) (#1432)

* chore: add method for converting RNSScreenReplaceAnimation enum from Cpp
to obj-c

* chore: update replaceAnimation prop on Fabric

* refact: linter suggestion

* chore: add `hideKeyboardOnSwipe` prop for Fabric (3) (#1433)

* chore: move hideKeyboardOnSwipe prop to common section in RNSScreen
header

* chore: add hideKeyboardOnSwipe prop to codegen

* chore: make keyboard dismiss logic common

* chore: add hideKeyboardOnSwipe prop update for Fabric

* chore: add noop for Android

This prop is marked as iOS only

* chore: add `customAnimationOnSwipe` prop for Fabric (4) (#1434)

* chore: add customAnimationOnSwipe prop to codegen

* chore: move customAnimationOnSwipe prop to shared section in RNSScreen
interface

* refact: linter suggestion

* chore: add customAnimationOnSwipe update for Fabric

* chore: unify RNSScreenStackAnimator#animateTransition method

This is possible as customAnimationOnSwipe prop is now implemented on
Fabric

* chore: unify RNSScreenStack#gestureRecognizer should begin method

This is possible as customAnimationOnSwipe prop in now implemented on
Fabric

* chore: noop for Android

This prop is annotated as iOS only in docs

* chore: remove not needed difference between implementations

* chore: add `gestureResponseDistance` prop for Fabric (5) (#1442)

* chore: move gestureResponseDistance prop to shared section in RNSScreen
interface

* refact: linter suggestions

* chore: add gestureResponseDistanceProp to Codegen

* chore: add conversion methods for GestureResponseDistanceStruct

* refact: linter suggestion

* chore: add props update for Fabric

As there is no way for creating custom `equality operator` for custom
struct via codegen && such check (newProps != oldProps) would require
three "ands" I think it is easier and potentially cheaper to just assign
this (w/o surrounding if-check)

* chore: unify RNSScreenStack#gestureRecognizerShouldBegin method

* chore: move
RNSScreenStackView#isInGestureResponseDistance:gestureRecognizer: method
to common section

This is now possible, as `gestureResponseDistance` prop is available on
Fabric

* chore: add noop for Android

This prop is annotated as iOS only in docs

* chore: change GestureResponseDistance field type from int to float

* fix: merge artifact

* chore: add deafult value for gestureResponseDistance on JS side

It is still to be checked whether it is only place where this should be
added

* chore: unify RNSScreenStack#isInGestureResponseDistance:topScreen:
method

* chore: add `homeIndicatorHidden` & `activityState` props for Fabric (6) (#1443)

* chore: add homeIndicatorHidden prop to codegen

* chore: add prop update on Fabric

* chore: add noop for Android

This prop is iOS only

* chore: move `activityState` prop to common section in RNSScreen
interface

* chore: move activityState setter to common section in RNSScreenView impl

* refact: linter suggestion

* chore: make RNSScreenView#reactSuperview common & make it implement
RNSScreenContainerDelegate protocol

This hasn't been tested yet. However in any instance it crashes (as
    the protocol might be not implemented) we can just implement noops
for Fabric

* chore: move activityState to implemented section in codegen config files

* chore: make series of methods shared (see details)

* `RNSScreenView#notifyFinishTransitioning`
* `RNSScreen#notifyFinishTransitioning`
* `willMoveToParentViewController`
* `RNSScreenContainer#updateContainer`

These methods were coupled together.

* fix: handle activityState on Fabric

Default value for the prop (when it is not set) on Fabric is -1 instead
of nil (I believe we can not get nil from C++) thus this improved
condition should work for both archs.

* chore: add `preventNativeDismiss` prop for Fabric (7) (#1444)

* chore: move preventNativeDismiss prop to common section in RNSScreen
interface

* fix: merge artifact

* chore: add preventNativeDismiss prop to codegen

* chore: add preventNativeDismiss prop update

* fix: add noop for Android

* chore: unify business logic between archs (8) (#1446)

* chore: unify RNSScreen#vieDidLayoutSubviews

* chore: make RNSScreenStack#hitTest:withEvent: method shared

#1416 (comment)

* chore: make RNSScreenStackView#isScrollViewPanGestureRecongnizer & some
helper methods shared

#1416 (comment)

* chore: move backButtonInCustomView to shared sectionin
RNSScreenStackHeaderConfig.h

* chore: move backButtonInCustomView prop to implemented section in JS

* chore: update `backButtonInCustomView` for Fabric

* chore: unify
RNSScreenStackHeaderConfigView#willShowViewController:animated:withConfig

* refact: linter suggestion

* fix: RNSScreen viewDidLayoutSubviews

* chore: copy interfaces to android/src/paper directory

* fix: commit address in comment

It changed after I rebased
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants