| 
				
			 | 
			
			
				@@ -7,9 +7,7 @@ import android.graphics.Color; 
			 | 
		
	
		
			
			| 
				7
			 | 
			
				7
			 | 
			
			
				 import android.os.Build; 
			 | 
		
	
		
			
			| 
				8
			 | 
			
				8
			 | 
			
			
				 import android.os.Bundle; 
			 | 
		
	
		
			
			| 
				9
			 | 
			
				9
			 | 
			
			
				 import android.support.v7.app.AppCompatActivity; 
			 | 
		
	
		
			
			| 
				10
			 | 
			
				
			 | 
			
			
				-import android.view.View; 
			 | 
		
	
		
			
			| 
				11
			 | 
			
				10
			 | 
			
			
				 import android.view.Window; 
			 | 
		
	
		
			
			| 
				12
			 | 
			
				
			 | 
			
			
				-import android.view.WindowManager; 
			 | 
		
	
		
			
			| 
				13
			 | 
			
				11
			 | 
			
			
				 import android.widget.RelativeLayout; 
			 | 
		
	
		
			
			| 
				14
			 | 
			
				12
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				15
			 | 
			
				13
			 | 
			
			
				 import com.facebook.react.bridge.Callback; 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -30,6 +28,7 @@ import com.reactnativenavigation.params.StyleParams; 
			 | 
		
	
		
			
			| 
				30
			 | 
			
				28
			 | 
			
			
				 import com.reactnativenavigation.params.TitleBarButtonParams; 
			 | 
		
	
		
			
			| 
				31
			 | 
			
				29
			 | 
			
			
				 import com.reactnativenavigation.params.TitleBarLeftButtonParams; 
			 | 
		
	
		
			
			| 
				32
			 | 
			
				30
			 | 
			
			
				 import com.reactnativenavigation.params.parsers.StyleParamsParser; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				31
			 | 
			
			
				+import com.reactnativenavigation.utils.StatusBar; 
			 | 
		
	
		
			
			| 
				33
			 | 
			
				32
			 | 
			
			
				 import com.reactnativenavigation.views.ContentView; 
			 | 
		
	
		
			
			| 
				34
			 | 
			
				33
			 | 
			
			
				 import com.reactnativenavigation.views.LeftButtonOnClickListener; 
			 | 
		
	
		
			
			| 
				35
			 | 
			
				34
			 | 
			
			
				 import com.reactnativenavigation.views.TopBar; 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -170,44 +169,16 @@ public abstract class Screen extends RelativeLayout implements Subscriber { 
			 | 
		
	
		
			
			| 
				170
			 | 
			
				169
			 | 
			
			
				         addView(topBar, new LayoutParams(MATCH_PARENT, WRAP_CONTENT)); 
			 | 
		
	
		
			
			| 
				171
			 | 
			
				170
			 | 
			
			
				     } 
			 | 
		
	
		
			
			| 
				172
			 | 
			
				171
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				173
			 | 
			
				
			 | 
			
			
				-    @TargetApi(Build.VERSION_CODES.LOLLIPOP) 
			 | 
		
	
		
			
			| 
				174
			 | 
			
				172
			 | 
			
			
				     private void setStatusBarColor(StyleParams.Color statusBarColor) { 
			 | 
		
	
		
			
			| 
				175
			 | 
			
				
			 | 
			
			
				-        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) return; 
			 | 
		
	
		
			
			| 
				176
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				177
			 | 
			
				
			 | 
			
			
				-        final Window window = ((NavigationActivity) activity).getScreenWindow(); 
			 | 
		
	
		
			
			| 
				178
			 | 
			
				
			 | 
			
			
				-        if (statusBarColor.hasColor()) { 
			 | 
		
	
		
			
			| 
				179
			 | 
			
				
			 | 
			
			
				-            window.setStatusBarColor(statusBarColor.getColor()); 
			 | 
		
	
		
			
			| 
				180
			 | 
			
				
			 | 
			
			
				-        } else { 
			 | 
		
	
		
			
			| 
				181
			 | 
			
				
			 | 
			
			
				-            window.setStatusBarColor(Color.BLACK); 
			 | 
		
	
		
			
			| 
				182
			 | 
			
				
			 | 
			
			
				-        } 
			 | 
		
	
		
			
			| 
				
			 | 
			
				173
			 | 
			
			
				+        StatusBar.setColor(((NavigationActivity) activity).getScreenWindow(), statusBarColor); 
			 | 
		
	
		
			
			| 
				183
			 | 
			
				174
			 | 
			
			
				     } 
			 | 
		
	
		
			
			| 
				184
			 | 
			
				175
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				185
			 | 
			
				176
			 | 
			
			
				     private void setStatusBarHidden(boolean statusBarHidden) { 
			 | 
		
	
		
			
			| 
				186
			 | 
			
				
			 | 
			
			
				-        final Window window = ((NavigationActivity) activity).getScreenWindow(); 
			 | 
		
	
		
			
			| 
				187
			 | 
			
				
			 | 
			
			
				-        if (statusBarHidden) { 
			 | 
		
	
		
			
			| 
				188
			 | 
			
				
			 | 
			
			
				-            window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
			 | 
		
	
		
			
			| 
				189
			 | 
			
				
			 | 
			
			
				-        } else { 
			 | 
		
	
		
			
			| 
				190
			 | 
			
				
			 | 
			
			
				-            window.clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
			 | 
		
	
		
			
			| 
				191
			 | 
			
				
			 | 
			
			
				-        } 
			 | 
		
	
		
			
			| 
				
			 | 
			
				177
			 | 
			
			
				+        StatusBar.setHidden(((NavigationActivity) activity).getScreenWindow(), statusBarHidden); 
			 | 
		
	
		
			
			| 
				192
			 | 
			
				178
			 | 
			
			
				     } 
			 | 
		
	
		
			
			| 
				193
			 | 
			
				179
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				194
			 | 
			
				
			 | 
			
			
				-    @TargetApi(Build.VERSION_CODES.M) 
			 | 
		
	
		
			
			| 
				195
			 | 
			
				180
			 | 
			
			
				     private void setStatusBarTextColorScheme(StatusBarTextColorScheme textColorScheme) { 
			 | 
		
	
		
			
			| 
				196
			 | 
			
				
			 | 
			
			
				-        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) return; 
			 | 
		
	
		
			
			| 
				197
			 | 
			
				
			 | 
			
			
				-        if (StatusBarTextColorScheme.Dark.equals(textColorScheme)) { 
			 | 
		
	
		
			
			| 
				198
			 | 
			
				
			 | 
			
			
				-            int flags = getSystemUiVisibility(); 
			 | 
		
	
		
			
			| 
				199
			 | 
			
				
			 | 
			
			
				-            flags |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR; 
			 | 
		
	
		
			
			| 
				200
			 | 
			
				
			 | 
			
			
				-            setSystemUiVisibility(flags); 
			 | 
		
	
		
			
			| 
				201
			 | 
			
				
			 | 
			
			
				-        } else { 
			 | 
		
	
		
			
			| 
				202
			 | 
			
				
			 | 
			
			
				-            clearLightStatusBar(); 
			 | 
		
	
		
			
			| 
				203
			 | 
			
				
			 | 
			
			
				-        } 
			 | 
		
	
		
			
			| 
				204
			 | 
			
				
			 | 
			
			
				-    } 
			 | 
		
	
		
			
			| 
				205
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				206
			 | 
			
				
			 | 
			
			
				-    public void clearLightStatusBar() { 
			 | 
		
	
		
			
			| 
				207
			 | 
			
				
			 | 
			
			
				-        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) return; 
			 | 
		
	
		
			
			| 
				208
			 | 
			
				
			 | 
			
			
				-        int flags = getSystemUiVisibility(); 
			 | 
		
	
		
			
			| 
				209
			 | 
			
				
			 | 
			
			
				-        flags &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR; 
			 | 
		
	
		
			
			| 
				210
			 | 
			
				
			 | 
			
			
				-        setSystemUiVisibility(flags); 
			 | 
		
	
		
			
			| 
				
			 | 
			
				181
			 | 
			
			
				+        StatusBar.setTextColorScheme(this, textColorScheme); 
			 | 
		
	
		
			
			| 
				211
			 | 
			
				182
			 | 
			
			
				     } 
			 | 
		
	
		
			
			| 
				212
			 | 
			
				183
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				213
			 | 
			
				184
			 | 
			
			
				     @TargetApi(Build.VERSION_CODES.LOLLIPOP) 
			 |