|
@@ -40,6 +40,7 @@ public class Presenter {
|
40
|
40
|
|
41
|
41
|
public void mergeOptions(View view, Options options) {
|
42
|
42
|
mergeStatusBarOptions(view, options.statusBar);
|
|
43
|
+ mergeNavigationBarOptions(options.navigationBar);
|
43
|
44
|
}
|
44
|
45
|
|
45
|
46
|
public void applyOptions(ViewController view, Options options) {
|
|
@@ -47,6 +48,7 @@ public class Presenter {
|
47
|
48
|
applyOrientation(withDefaultOptions.layout.orientation);
|
48
|
49
|
applyViewOptions(view, withDefaultOptions);
|
49
|
50
|
applyStatusBarOptions(withDefaultOptions);
|
|
51
|
+ applyNavigationBarOptions(withDefaultOptions.navigationBar);
|
50
|
52
|
}
|
51
|
53
|
|
52
|
54
|
public void onViewBroughtToFront(Options options) {
|
|
@@ -85,7 +87,6 @@ public class Presenter {
|
85
|
87
|
}
|
86
|
88
|
|
87
|
89
|
private void applyStatusBarOptions(Options options) {
|
88
|
|
- setNavigationBarBackgroundColor(options.navigationBar);
|
89
|
90
|
setStatusBarBackgroundColor(options.statusBar);
|
90
|
91
|
setTextColorScheme(options.statusBar.textColorScheme);
|
91
|
92
|
setTranslucent(options.statusBar);
|
|
@@ -119,13 +120,6 @@ public class Presenter {
|
119
|
120
|
}
|
120
|
121
|
}
|
121
|
122
|
|
122
|
|
- private void setNavigationBarBackgroundColor(NavigationBarOptions navigationBar) {
|
123
|
|
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP && navigationBar.backgroundColor.canApplyValue()) {
|
124
|
|
- int defaultColor = activity.getWindow().getNavigationBarColor();
|
125
|
|
- activity.getWindow().setNavigationBarColor(navigationBar.backgroundColor.get(defaultColor));
|
126
|
|
- }
|
127
|
|
- }
|
128
|
|
-
|
129
|
123
|
private void setTextColorScheme(TextColorScheme scheme) {
|
130
|
124
|
final View view = activity.getWindow().getDecorView();
|
131
|
125
|
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) return;
|
|
@@ -196,4 +190,19 @@ public class Presenter {
|
196
|
190
|
}
|
197
|
191
|
}
|
198
|
192
|
}
|
|
193
|
+
|
|
194
|
+ private void applyNavigationBarOptions(NavigationBarOptions options) {
|
|
195
|
+ setNavigationBarBackgroundColor(options);
|
|
196
|
+ }
|
|
197
|
+
|
|
198
|
+ private void mergeNavigationBarOptions(NavigationBarOptions options) {
|
|
199
|
+ setNavigationBarBackgroundColor(options);
|
|
200
|
+ }
|
|
201
|
+
|
|
202
|
+ private void setNavigationBarBackgroundColor(NavigationBarOptions navigationBar) {
|
|
203
|
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP && navigationBar.backgroundColor.canApplyValue()) {
|
|
204
|
+ int defaultColor = activity.getWindow().getNavigationBarColor();
|
|
205
|
+ activity.getWindow().setNavigationBarColor(navigationBar.backgroundColor.get(defaultColor));
|
|
206
|
+ }
|
|
207
|
+ }
|
199
|
208
|
}
|