Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.ahmadrd.instagramclone.ui.launcher
- import android.content.Intent
- import android.os.Bundle
- import android.view.View
- import android.view.animation.AnimationUtils
- import androidx.appcompat.app.AppCompatActivity
- import androidx.appcompat.app.AppCompatDelegate
- import androidx.lifecycle.ViewModelProvider
- import com.ahmadrd.instagramclone.R
- import com.ahmadrd.instagramclone.utils.SettingPreferences
- import com.ahmadrd.instagramclone.utils.SettingViewModelFactory
- import com.ahmadrd.instagramclone.utils.dataStore
- import com.ahmadrd.instagramclone.viewmodel.SettingThemeViewModel
- import com.google.firebase.auth.FirebaseAuth
- class MainActivity : AppCompatActivity() {
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_main)
- // Apply scale up animation
- val scaleUp = AnimationUtils.loadAnimation(this, R.anim.scale_up)
- findViewById<View>(android.R.id.content).startAnimation(scaleUp)
- window.decorView.postDelayed({
- // Apply scale down animation
- val scaleDown = AnimationUtils.loadAnimation(this, R.anim.scale_down)
- findViewById<View>(android.R.id.content).startAnimation(scaleDown)
- if (FirebaseAuth.getInstance().currentUser == null) {
- startActivity(Intent(this, LoginActivity::class.java))
- finish()
- } else {
- startActivity(Intent(this, HomeActivity::class.java))
- finish()
- }
- }, 5000)
- // Start the next activity after a delay
- // CoroutineScope(Dispatchers.Main).launch {
- // delay(2000) // Adjust the delay as needed
- // // Apply scale down animation
- // val scaleDown = AnimationUtils.loadAnimation(this@MainActivity, R.anim.scale_down)
- // findViewById<View>(android.R.id.content).startAnimation(scaleDown)
- // if (FirebaseAuth.getInstance().currentUser == null) {
- // startActivity(Intent(this@MainActivity, LoginActivity::class.java))
- // } else {
- // startActivity(Intent(this@MainActivity, HomeActivity::class.java))
- // }
- // finish()
- // }
- // For Dark Theme Const
- val settingPreferences = SettingPreferences.getInstance(dataStore)
- val themeViewModel =
- ViewModelProvider(this,
- SettingViewModelFactory(settingPreferences))[SettingThemeViewModel::class.java]
- themeViewModel.getThemeSettings().observe(this) { isDarkModeActive ->
- if (isDarkModeActive) {
- AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES)
- } else {
- AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO)
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment