@ -85,10 +85,10 @@ open class HomeActivity : AppCompatActivity() {
final override fun onCreate ( savedInstanceState : Bundle ? ) {
super . onCreate ( savedInstanceState )
setPrivateModeIfNecessary ( )
val mode = setPrivateModeIfNecessary ( )
components . publicSuffixList . prefetch ( )
setupThemeAndBrowsingMode ( )
setupThemeAndBrowsingMode ( mode )
setContentView ( R . layout . activity _home )
@ -191,18 +191,20 @@ open class HomeActivity : AppCompatActivity() {
* External sources such as 3 rd party links and shortcuts use this function to enter
* private mode directly before the content view is created .
* /
private fun setPrivateModeIfNecessary ( ) {
private fun setPrivateModeIfNecessary ( ) : BrowsingMode {
intent ?. toSafeIntent ( ) ?. let {
if ( it . hasExtra ( PRIVATE _BROWSING _MODE ) ) {
val startPrivateMode = it . getBooleanExtra ( PRIVATE _BROWSING _MODE , false )
settings ( ) . usePrivateMode = startPrivateMode
intent . removeExtra ( PRIVATE _BROWSING _MODE )
return BrowsingMode . fromBoolean ( isPrivate = startPrivateMode )
}
}
return BrowsingMode . Normal
}
private fun setupThemeAndBrowsingMode ( ) {
browsingModeManager = createBrowsingModeManager ( )
private fun setupThemeAndBrowsingMode ( mode : BrowsingMode ) {
browsingModeManager = createBrowsingModeManager ( mode )
themeManager = createThemeManager ( )
themeManager . setActivityTheme ( this )
themeManager . applyStatusBarTheme ( this )
@ -317,9 +319,9 @@ open class HomeActivity : AppCompatActivity() {
}
}
protected open fun createBrowsingModeManager ( ) : BrowsingModeManager {
return DefaultBrowsingModeManager ( settings( ) ) { m ode ->
themeManager . currentTheme = m ode
protected open fun createBrowsingModeManager ( initialMode : BrowsingMode ) : BrowsingModeManager {
return DefaultBrowsingModeManager ( initialMode) { newM ode ->
themeManager . currentTheme = newM ode
}
}