Browse Source

Apply SideMenu options when it becomes visible

Fixes #5444
Guy Carmeli 5 years ago
parent
commit
46ca0f3dcc

+ 4
- 0
lib/android/app/src/main/java/com/reactnativenavigation/presentation/SideMenuPresenter.java View File

@@ -29,6 +29,10 @@ public class SideMenuPresenter {
29 29
         return false;
30 30
     }
31 31
 
32
+    public void applyOptions(Options options) {
33
+        applyLockMode(options.sideMenuRootOptions);
34
+    }
35
+
32 36
     public void mergeOptions(SideMenuRootOptions options) {
33 37
         mergeLockMode(options);
34 38
         mergeVisibility(options);

+ 6
- 0
lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/sidemenu/SideMenuController.java View File

@@ -77,6 +77,12 @@ public class SideMenuController extends ParentController<SideMenuRoot> implement
77 77
 		return children;
78 78
 	}
79 79
 
80
+    @Override
81
+    public void applyOptions(Options options) {
82
+        super.applyOptions(options);
83
+        presenter.applyOptions(options);
84
+    }
85
+
80 86
     @Override
81 87
     public void applyChildOptions(Options options, ViewController child) {
82 88
         super.applyChildOptions(options, child);

+ 7
- 0
lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/sidemenu/SideMenuControllerTest.java View File

@@ -81,6 +81,13 @@ public class SideMenuControllerTest extends BaseTest {
81 81
         verify(presenter).bindView(eq(sideMenu));
82 82
     }
83 83
 
84
+    @Test
85
+    public void applyOptions() {
86
+        Options options = new Options();
87
+        uut.applyOptions(options);
88
+        verify(presenter).applyOptions(options);
89
+    }
90
+
84 91
     @Test
85 92
     public void getCurrentChild() {
86 93
         setLeftRight(left, right);