Browse Source

Hide Snackbar on screen changes

Guy Carmeli 8 years ago
parent
commit
8999785b09

+ 5
- 1
android/app/src/main/java/com/reactnativenavigation/layouts/BottomTabsLayout.java View File

197
         if (isCurrentStack(screenStack)) {
197
         if (isCurrentStack(screenStack)) {
198
             bottomTabs.setStyleFromScreen(screenParams.styleParams);
198
             bottomTabs.setStyleFromScreen(screenParams.styleParams);
199
         }
199
         }
200
+        snackbarContainer.onScreenChange();
200
     }
201
     }
201
 
202
 
202
     @Override
203
     @Override
207
                 setBottomTabsStyleFromCurrentScreen();
208
                 setBottomTabsStyleFromCurrentScreen();
208
             }
209
             }
209
         });
210
         });
211
+        snackbarContainer.onScreenChange();
210
     }
212
     }
211
 
213
 
212
     @Override
214
     @Override
213
     public void popToRoot(ScreenParams params) {
215
     public void popToRoot(ScreenParams params) {
214
         getCurrentScreenStack().popToRoot(params.animateScreenTransitions);
216
         getCurrentScreenStack().popToRoot(params.animateScreenTransitions);
215
         setBottomTabsStyleFromCurrentScreen();
217
         setBottomTabsStyleFromCurrentScreen();
218
+        snackbarContainer.onScreenChange();
216
     }
219
     }
217
 
220
 
218
     @Override
221
     @Override
227
         screenStacks[currentStackIndex] = newStack;
230
         screenStacks[currentStackIndex] = newStack;
228
 
231
 
229
         bottomTabs.setStyleFromScreen(params.styleParams);
232
         bottomTabs.setStyleFromScreen(params.styleParams);
233
+        snackbarContainer.onScreenChange();
230
     }
234
     }
231
 
235
 
232
     @Override
236
     @Override
233
     public void destroy() {
237
     public void destroy() {
238
+        snackbarContainer.destroy();
234
         for (ScreenStack screenStack : screenStacks) {
239
         for (ScreenStack screenStack : screenStacks) {
235
             screenStack.destroy();
240
             screenStack.destroy();
236
         }
241
         }
237
-
238
         if (sideMenu != null) {
242
         if (sideMenu != null) {
239
             sideMenu.destroy();
243
             sideMenu.destroy();
240
         }
244
         }

+ 4
- 0
android/app/src/main/java/com/reactnativenavigation/layouts/SingleScreenLayout.java View File

108
     public void push(ScreenParams params) {
108
     public void push(ScreenParams params) {
109
         LayoutParams lp = new LayoutParams(MATCH_PARENT, MATCH_PARENT);
109
         LayoutParams lp = new LayoutParams(MATCH_PARENT, MATCH_PARENT);
110
         stack.push(params, lp);
110
         stack.push(params, lp);
111
+        snackbarContainer.onScreenChange();
111
     }
112
     }
112
 
113
 
113
     @Override
114
     @Override
114
     public void pop(ScreenParams params) {
115
     public void pop(ScreenParams params) {
115
         stack.pop(params.animateScreenTransitions);
116
         stack.pop(params.animateScreenTransitions);
117
+        snackbarContainer.onScreenChange();
116
     }
118
     }
117
 
119
 
118
     @Override
120
     @Override
119
     public void popToRoot(ScreenParams params) {
121
     public void popToRoot(ScreenParams params) {
120
         stack.popToRoot(params.animateScreenTransitions);
122
         stack.popToRoot(params.animateScreenTransitions);
123
+        snackbarContainer.onScreenChange();
121
     }
124
     }
122
 
125
 
123
     @Override
126
     @Override
124
     public void newStack(ScreenParams params) {
127
     public void newStack(ScreenParams params) {
125
         RelativeLayout parent = sideMenu == null ? this : sideMenu.getContentContainer();
128
         RelativeLayout parent = sideMenu == null ? this : sideMenu.getContentContainer();
126
         createStack(parent);
129
         createStack(parent);
130
+        snackbarContainer.onScreenChange();
127
     }
131
     }
128
 
132
 
129
     @Override
133
     @Override