|
@@ -8,8 +8,9 @@ import android.widget.RelativeLayout;
|
8
|
8
|
|
9
|
9
|
import com.aurelhubert.ahbottomnavigation.AHBottomNavigation;
|
10
|
10
|
import com.reactnativenavigation.NavigationApplication;
|
|
11
|
+import com.reactnativenavigation.events.EventBus;
|
|
12
|
+import com.reactnativenavigation.events.ScreenChangedEvent;
|
11
|
13
|
import com.reactnativenavigation.params.ActivityParams;
|
12
|
|
-import com.reactnativenavigation.params.FabParams;
|
13
|
14
|
import com.reactnativenavigation.params.ScreenParams;
|
14
|
15
|
import com.reactnativenavigation.params.SideMenuParams;
|
15
|
16
|
import com.reactnativenavigation.params.SnackbarParams;
|
|
@@ -52,7 +53,6 @@ public class BottomTabsLayout extends RelativeLayout implements Layout, AHBottom
|
52
|
53
|
addScreenStacks();
|
53
|
54
|
createSnackbarContainer();
|
54
|
55
|
showInitialScreenStack();
|
55
|
|
- showFab();
|
56
|
56
|
}
|
57
|
57
|
|
58
|
58
|
private void createSideMenu() {
|
|
@@ -110,13 +110,7 @@ public class BottomTabsLayout extends RelativeLayout implements Layout, AHBottom
|
110
|
110
|
|
111
|
111
|
private void showInitialScreenStack() {
|
112
|
112
|
showStackAndUpdateStyle(screenStacks[0]);
|
113
|
|
- }
|
114
|
|
-
|
115
|
|
- private void showFab() {
|
116
|
|
- FabParams fabParams = getCurrentScreenStack().peek().getFabParams();
|
117
|
|
- if (fabParams != null) {
|
118
|
|
- snackbarAndFabContainer.showFab(fabParams);
|
119
|
|
- }
|
|
113
|
+ EventBus.instance.post(new ScreenChangedEvent(screenStacks[0].peek().getScreenParams()));
|
120
|
114
|
}
|
121
|
115
|
|
122
|
116
|
@Override
|
|
@@ -207,31 +201,31 @@ public class BottomTabsLayout extends RelativeLayout implements Layout, AHBottom
|
207
|
201
|
}
|
208
|
202
|
|
209
|
203
|
@Override
|
210
|
|
- public void push(ScreenParams screenParams) {
|
211
|
|
- ScreenStack screenStack = getScreenStack(screenParams.getNavigatorId());
|
212
|
|
- screenStack.push(screenParams, createScreenLayoutParams(screenParams));
|
|
204
|
+ public void push(ScreenParams params) {
|
|
205
|
+ ScreenStack screenStack = getScreenStack(params.getNavigatorId());
|
|
206
|
+ screenStack.push(params, createScreenLayoutParams(params));
|
213
|
207
|
if (isCurrentStack(screenStack)) {
|
214
|
|
- bottomTabs.setStyleFromScreen(screenParams.styleParams);
|
|
208
|
+ bottomTabs.setStyleFromScreen(params.styleParams);
|
215
|
209
|
}
|
216
|
|
- snackbarAndFabContainer.onScreenChange();
|
|
210
|
+ EventBus.instance.post(new ScreenChangedEvent(params));
|
217
|
211
|
}
|
218
|
212
|
|
219
|
213
|
@Override
|
220
|
|
- public void pop(ScreenParams screenParams) {
|
221
|
|
- getCurrentScreenStack().pop(screenParams.animateScreenTransitions, new ScreenStack.OnScreenPop() {
|
|
214
|
+ public void pop(ScreenParams params) {
|
|
215
|
+ getCurrentScreenStack().pop(params.animateScreenTransitions, new ScreenStack.OnScreenPop() {
|
222
|
216
|
@Override
|
223
|
217
|
public void onScreenPopAnimationEnd() {
|
224
|
218
|
setBottomTabsStyleFromCurrentScreen();
|
225
|
219
|
}
|
226
|
220
|
});
|
227
|
|
- snackbarAndFabContainer.onScreenChange();
|
|
221
|
+ EventBus.instance.post(new ScreenChangedEvent(getCurrentScreenStack().peek().getScreenParams()));
|
228
|
222
|
}
|
229
|
223
|
|
230
|
224
|
@Override
|
231
|
225
|
public void popToRoot(ScreenParams params) {
|
232
|
226
|
getCurrentScreenStack().popToRoot(params.animateScreenTransitions);
|
233
|
227
|
setBottomTabsStyleFromCurrentScreen();
|
234
|
|
- snackbarAndFabContainer.onScreenChange();
|
|
228
|
+ EventBus.instance.post(new ScreenChangedEvent(getCurrentScreenStack().peek().getScreenParams()));
|
235
|
229
|
}
|
236
|
230
|
|
237
|
231
|
@Override
|
|
@@ -246,7 +240,7 @@ public class BottomTabsLayout extends RelativeLayout implements Layout, AHBottom
|
246
|
240
|
screenStacks[currentStackIndex] = newStack;
|
247
|
241
|
|
248
|
242
|
bottomTabs.setStyleFromScreen(params.styleParams);
|
249
|
|
- snackbarAndFabContainer.onScreenChange();
|
|
243
|
+ EventBus.instance.post(new ScreenChangedEvent(params));
|
250
|
244
|
}
|
251
|
245
|
|
252
|
246
|
@Override
|
|
@@ -264,7 +258,7 @@ public class BottomTabsLayout extends RelativeLayout implements Layout, AHBottom
|
264
|
258
|
public boolean onTabSelected(int position, boolean wasSelected) {
|
265
|
259
|
hideCurrentStack();
|
266
|
260
|
showNewStack(position);
|
267
|
|
- snackbarAndFabContainer.onScreenChange();
|
|
261
|
+ EventBus.instance.post(new ScreenChangedEvent(getCurrentScreenStack().peek().getScreenParams()));
|
268
|
262
|
return true;
|
269
|
263
|
}
|
270
|
264
|
|