mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-30 22:07:57 +01:00 
			
		
		
		
	Apply theme to OAuth login redirect activities
This commit is contained in:
		| @@ -4,25 +4,15 @@ import android.content.res.Configuration | ||||
| import android.os.Build | ||||
| import android.os.Bundle | ||||
| import androidx.appcompat.app.AppCompatActivity | ||||
| import androidx.lifecycle.lifecycleScope | ||||
| import androidx.viewbinding.ViewBinding | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.data.preference.PreferencesHelper | ||||
| import eu.kanade.tachiyomi.ui.security.SecureActivityDelegate | ||||
| import eu.kanade.tachiyomi.util.system.LocaleHelper | ||||
| import uy.kohesive.injekt.injectLazy | ||||
| import eu.kanade.tachiyomi.data.preference.PreferenceValues as Values | ||||
| 
 | ||||
| abstract class BaseActivity<VB : ViewBinding> : AppCompatActivity() { | ||||
| abstract class BaseThemedActivity : AppCompatActivity() { | ||||
| 
 | ||||
|     val preferences: PreferencesHelper by injectLazy() | ||||
| 
 | ||||
|     val scope = lifecycleScope | ||||
|     lateinit var binding: VB | ||||
| 
 | ||||
|     @Suppress("LeakingThis") | ||||
|     private val secureActivityDelegate = SecureActivityDelegate(this) | ||||
| 
 | ||||
|     private val isDarkMode: Boolean by lazy { | ||||
|         val themeMode = preferences.themeMode().get() | ||||
|         (themeMode == Values.ThemeMode.dark) || | ||||
| @@ -62,11 +52,6 @@ abstract class BaseActivity<VB : ViewBinding> : AppCompatActivity() { | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     init { | ||||
|         @Suppress("LeakingThis") | ||||
|         LocaleHelper.updateConfiguration(this) | ||||
|     } | ||||
| 
 | ||||
|     override fun onCreate(savedInstanceState: Bundle?) { | ||||
|         setTheme( | ||||
|             when { | ||||
| @@ -76,13 +61,5 @@ abstract class BaseActivity<VB : ViewBinding> : AppCompatActivity() { | ||||
|         ) | ||||
| 
 | ||||
|         super.onCreate(savedInstanceState) | ||||
| 
 | ||||
|         secureActivityDelegate.onCreate() | ||||
|     } | ||||
| 
 | ||||
|     override fun onResume() { | ||||
|         super.onResume() | ||||
| 
 | ||||
|         secureActivityDelegate.onResume() | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,33 @@ | ||||
| package eu.kanade.tachiyomi.ui.base.activity | ||||
|  | ||||
| import android.os.Bundle | ||||
| import androidx.lifecycle.lifecycleScope | ||||
| import androidx.viewbinding.ViewBinding | ||||
| import eu.kanade.tachiyomi.ui.security.SecureActivityDelegate | ||||
| import eu.kanade.tachiyomi.util.system.LocaleHelper | ||||
|  | ||||
| abstract class BaseViewBindingActivity<VB : ViewBinding> : BaseThemedActivity() { | ||||
|  | ||||
|     val scope = lifecycleScope | ||||
|     lateinit var binding: VB | ||||
|  | ||||
|     @Suppress("LeakingThis") | ||||
|     private val secureActivityDelegate = SecureActivityDelegate(this) | ||||
|  | ||||
|     init { | ||||
|         @Suppress("LeakingThis") | ||||
|         LocaleHelper.updateConfiguration(this) | ||||
|     } | ||||
|  | ||||
|     override fun onCreate(savedInstanceState: Bundle?) { | ||||
|         super.onCreate(savedInstanceState) | ||||
|  | ||||
|         secureActivityDelegate.onCreate() | ||||
|     } | ||||
|  | ||||
|     override fun onResume() { | ||||
|         super.onResume() | ||||
|  | ||||
|         secureActivityDelegate.onResume() | ||||
|     } | ||||
| } | ||||
| @@ -24,7 +24,7 @@ import eu.kanade.tachiyomi.data.notification.NotificationReceiver | ||||
| import eu.kanade.tachiyomi.data.preference.asImmediateFlow | ||||
| import eu.kanade.tachiyomi.databinding.MainActivityBinding | ||||
| import eu.kanade.tachiyomi.extension.api.ExtensionGithubApi | ||||
| import eu.kanade.tachiyomi.ui.base.activity.BaseActivity | ||||
| import eu.kanade.tachiyomi.ui.base.activity.BaseViewBindingActivity | ||||
| import eu.kanade.tachiyomi.ui.base.controller.DialogController | ||||
| import eu.kanade.tachiyomi.ui.base.controller.FabController | ||||
| import eu.kanade.tachiyomi.ui.base.controller.NoToolbarElevationController | ||||
| @@ -48,7 +48,7 @@ import timber.log.Timber | ||||
| import java.util.Date | ||||
| import java.util.concurrent.TimeUnit | ||||
|  | ||||
| class MainActivity : BaseActivity<MainActivityBinding>() { | ||||
| class MainActivity : BaseViewBindingActivity<MainActivityBinding>() { | ||||
|  | ||||
|     private lateinit var router: Router | ||||
|  | ||||
|   | ||||
| @@ -7,19 +7,19 @@ import android.view.Gravity | ||||
| import android.view.ViewGroup | ||||
| import android.widget.FrameLayout | ||||
| import android.widget.ProgressBar | ||||
| import androidx.appcompat.app.AppCompatActivity | ||||
| import eu.kanade.tachiyomi.data.track.TrackManager | ||||
| import eu.kanade.tachiyomi.ui.base.activity.BaseThemedActivity | ||||
| import eu.kanade.tachiyomi.ui.main.MainActivity | ||||
| import uy.kohesive.injekt.injectLazy | ||||
|  | ||||
| abstract class BaseOAuthLoginActivity : AppCompatActivity() { | ||||
| abstract class BaseOAuthLoginActivity : BaseThemedActivity() { | ||||
|  | ||||
|     internal val trackManager: TrackManager by injectLazy() | ||||
|  | ||||
|     abstract fun handleResult(data: Uri?) | ||||
|  | ||||
|     override fun onCreate(savedState: Bundle?) { | ||||
|         super.onCreate(savedState) | ||||
|     override fun onCreate(savedInstanceState: Bundle?) { | ||||
|         super.onCreate(savedInstanceState) | ||||
|  | ||||
|         val view = ProgressBar(this) | ||||
|         setContentView( | ||||
|   | ||||
| @@ -10,7 +10,7 @@ import androidx.core.view.isVisible | ||||
| import eu.kanade.tachiyomi.BuildConfig | ||||
| import eu.kanade.tachiyomi.R | ||||
| import eu.kanade.tachiyomi.databinding.WebviewActivityBinding | ||||
| import eu.kanade.tachiyomi.ui.base.activity.BaseActivity | ||||
| import eu.kanade.tachiyomi.ui.base.activity.BaseViewBindingActivity | ||||
| import eu.kanade.tachiyomi.util.system.WebViewUtil | ||||
| import eu.kanade.tachiyomi.util.system.setDefaultSettings | ||||
| import eu.kanade.tachiyomi.util.system.toast | ||||
| @@ -19,7 +19,7 @@ import kotlinx.coroutines.flow.onEach | ||||
| import reactivecircus.flowbinding.appcompat.navigationClicks | ||||
| import reactivecircus.flowbinding.swiperefreshlayout.refreshes | ||||
|  | ||||
| open class BaseWebViewActivity : BaseActivity<WebviewActivityBinding>() { | ||||
| open class BaseWebViewActivity : BaseViewBindingActivity<WebviewActivityBinding>() { | ||||
|  | ||||
|     internal var bundle: Bundle? = null | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user