Browse Source

Rename startApp animation to setRoot

This commit also resolves the setRoot animations correctly with default options and current child options
Guy Carmeli 6 years ago
parent
commit
b732226d7b

+ 4
- 4
lib/android/app/src/main/java/com/reactnativenavigation/parse/AnimationsOptions.java View File

11
 
11
 
12
         options.push = NestedAnimationsOptions.parse(json.optJSONObject("push"));
12
         options.push = NestedAnimationsOptions.parse(json.optJSONObject("push"));
13
         options.pop = NestedAnimationsOptions.parse(json.optJSONObject("pop"));
13
         options.pop = NestedAnimationsOptions.parse(json.optJSONObject("pop"));
14
-        options.startApp = AnimationOptions.parse(json.optJSONObject("startApp"));
14
+        options.setRoot = AnimationOptions.parse(json.optJSONObject("setRoot"));
15
         options.showModal = AnimationOptions.parse(json.optJSONObject("showModal"));
15
         options.showModal = AnimationOptions.parse(json.optJSONObject("showModal"));
16
         options.dismissModal = AnimationOptions.parse(json.optJSONObject("dismissModal"));
16
         options.dismissModal = AnimationOptions.parse(json.optJSONObject("dismissModal"));
17
 
17
 
20
 
20
 
21
     public NestedAnimationsOptions push = new NestedAnimationsOptions();
21
     public NestedAnimationsOptions push = new NestedAnimationsOptions();
22
     public NestedAnimationsOptions pop = new NestedAnimationsOptions();
22
     public NestedAnimationsOptions pop = new NestedAnimationsOptions();
23
-    public AnimationOptions startApp = new AnimationOptions();
23
+    public AnimationOptions setRoot = new AnimationOptions();
24
     public AnimationOptions showModal = new AnimationOptions();
24
     public AnimationOptions showModal = new AnimationOptions();
25
     public AnimationOptions dismissModal = new AnimationOptions();
25
     public AnimationOptions dismissModal = new AnimationOptions();
26
 
26
 
27
     public void mergeWith(AnimationsOptions other) {
27
     public void mergeWith(AnimationsOptions other) {
28
         push.mergeWith(other.push);
28
         push.mergeWith(other.push);
29
         pop.mergeWith(other.pop);
29
         pop.mergeWith(other.pop);
30
-        startApp.mergeWith(other.startApp);
30
+        setRoot.mergeWith(other.setRoot);
31
         showModal.mergeWith(other.showModal);
31
         showModal.mergeWith(other.showModal);
32
         dismissModal.mergeWith(other.dismissModal);
32
         dismissModal.mergeWith(other.dismissModal);
33
     }
33
     }
35
     void mergeWithDefault(AnimationsOptions defaultOptions) {
35
     void mergeWithDefault(AnimationsOptions defaultOptions) {
36
         push.mergeWithDefault(defaultOptions.push);
36
         push.mergeWithDefault(defaultOptions.push);
37
         pop.mergeWithDefault(defaultOptions.pop);
37
         pop.mergeWithDefault(defaultOptions.pop);
38
-        startApp.mergeWithDefault(defaultOptions.startApp);
38
+        setRoot.mergeWithDefault(defaultOptions.setRoot);
39
         showModal.mergeWithDefault(defaultOptions.showModal);
39
         showModal.mergeWithDefault(defaultOptions.showModal);
40
         dismissModal.mergeWithDefault(defaultOptions.dismissModal);
40
         dismissModal.mergeWithDefault(defaultOptions.dismissModal);
41
     }
41
     }

+ 3
- 2
lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/Navigator.java View File

124
         }
124
         }
125
         root = viewController;
125
         root = viewController;
126
         rootLayout.addView(viewController.getView());
126
         rootLayout.addView(viewController.getView());
127
-        if (viewController.options.animations.startApp.hasAnimation()) {
127
+        Options options = viewController.resolveCurrentOptions().withDefaultOptions(defaultOptions);
128
+        if (options.animations.setRoot.hasAnimation()) {
128
             new NavigationAnimator(viewController.getActivity(), new ElementTransitionManager())
129
             new NavigationAnimator(viewController.getActivity(), new ElementTransitionManager())
129
-                    .animateStartApp(viewController.getView(), viewController.options.animations.startApp, new AnimatorListenerAdapter() {
130
+                    .animateStartApp(viewController.getView(), options.animations.setRoot, new AnimatorListenerAdapter() {
130
                         @Override
131
                         @Override
131
                         public void onAnimationEnd(Animator animation) {
132
                         public void onAnimationEnd(Animator animation) {
132
                             commandListener.onSuccess(viewController.getId());
133
                             commandListener.onSuccess(viewController.getId());

+ 1
- 1
lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/NavigatorTest.java View File

555
         disablePushAnimation(child1);
555
         disablePushAnimation(child1);
556
 
556
 
557
         StackController spy = spy(parentController);
557
         StackController spy = spy(parentController);
558
-        spy.options.animations.startApp.enable = new Bool(false);
558
+        spy.options.animations.setRoot.enable = new Bool(false);
559
         uut.setRoot(spy, new CommandListenerAdapter());
559
         uut.setRoot(spy, new CommandListenerAdapter());
560
         spy.push(child1, new CommandListenerAdapter());
560
         spy.push(child1, new CommandListenerAdapter());
561
         activityController.destroy();
561
         activityController.destroy();