VancedManager/app/src/main/java/com/vanced/manager/ui/MainActivity.kt

119 lines
4.0 KiB
Kotlin
Raw Normal View History

package com.vanced.manager.ui
2020-03-16 15:41:57 +00:00
import android.content.Intent
2020-03-16 15:41:57 +00:00
import android.os.Bundle
import android.view.Menu
import android.view.MenuItem
import androidx.appcompat.app.AlertDialog
import androidx.fragment.app.Fragment
2020-03-16 15:41:57 +00:00
import com.google.android.material.bottomnavigation.BottomNavigationView
2020-03-18 18:10:54 +00:00
import androidx.fragment.app.FragmentTransaction
import com.google.android.material.appbar.MaterialToolbar
import com.vanced.manager.ui.fragments.HomeFragment
import com.vanced.manager.R
import com.vanced.manager.ui.fragments.SettingsFragment
import com.vanced.manager.ui.core.ThemeActivity
2020-03-16 15:41:57 +00:00
class MainActivity : ThemeActivity() {
2020-03-16 15:41:57 +00:00
val homeFragment: HomeFragment = HomeFragment()
val settingsFragment: SettingsFragment = SettingsFragment()
var currentFragment: Fragment? = null
var activeFragment: Int = R.id.navigation_home
2020-03-16 15:41:57 +00:00
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
2020-03-16 15:41:57 +00:00
setContentView(R.layout.activity_main)
2020-03-18 18:10:54 +00:00
val toolbar: MaterialToolbar = findViewById(R.id.home_toolbar)
setSupportActionBar(toolbar)
val prefs = getSharedPreferences("prefs", MODE_PRIVATE)
val firstStart = prefs.getBoolean("firstStart", true)
if (firstStart) {
2020-04-05 18:08:21 +00:00
showSecurityDialog()
}
supportFragmentManager.beginTransaction().add(R.id.frame_layout, SettingsFragment()).hide(SettingsFragment()).commit()
supportFragmentManager.beginTransaction().add(R.id.frame_layout, HomeFragment()).commit()
2020-03-18 18:10:54 +00:00
val navView: BottomNavigationView = findViewById(R.id.bottom_nav)
2020-03-18 18:10:54 +00:00
when (activeFragment) {
R.id.navigation_home -> currentFragment = homeFragment
R.id.navigation_settings -> currentFragment = settingsFragment
}
2020-03-18 18:10:54 +00:00
navView.setOnNavigationItemSelectedListener{
setFragments(it.itemId)
2020-03-18 18:10:54 +00:00
}
2020-03-16 15:41:57 +00:00
}
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
menuInflater.inflate(R.menu.toolbar_menu, menu)
return super .onCreateOptionsMenu(menu)
}
override fun onOptionsItemSelected(item: MenuItem) = when (item.itemId) {
R.id.about -> {
val intent = Intent(this, AboutActivity::class.java)
startActivity(intent)
true
}
else -> {
super.onOptionsItemSelected(item)
}
}
2020-04-05 18:08:21 +00:00
private fun showSecurityDialog() {
AlertDialog.Builder(this)
.setTitle("Welcome!")
.setMessage("Before we implement a proper security system to check whether app was modified or not, please be sure that you downloaded manager from vanced.app/github")
.setPositiveButton("close"
) { dialog, _ -> dialog.dismiss() }
.create().show()
val prefs = getSharedPreferences("prefs", MODE_PRIVATE)
val editor = prefs.edit()
editor.putBoolean("firstStart", false)
editor.apply()
}
private fun setFragments(itemId: Int): Boolean {
activeFragment = itemId
when (itemId) {
R.id.navigation_home -> {
if (currentFragment is HomeFragment) {
return false
}
supportFragmentManager
.beginTransaction()
.hide(currentFragment!!)
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.show(HomeFragment())
.commit()
currentFragment = homeFragment
}
R.id.navigation_settings -> {
if (currentFragment is SettingsFragment) {
return false
}
supportFragmentManager
.beginTransaction()
.hide(currentFragment!!)
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.show(SettingsFragment())
.commit()
currentFragment = settingsFragment
}
}
return true
}
2020-03-16 15:41:57 +00:00
}