in mobile/src/main/java/com/github/shadowsocks/MainActivity.kt [133:162]
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.layout_main)
snackbar = findViewById(R.id.snackbar)
snackbar.setOnApplyWindowInsetsListener(ListHolderListener)
stats = findViewById(R.id.stats)
stats.setOnClickListener { if (state == BaseService.State.Connected) stats.testConnection() }
drawer = findViewById(R.id.drawer)
drawer.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_STABLE or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
navigation = findViewById(R.id.navigation)
navigation.setNavigationItemSelectedListener(this)
if (savedInstanceState == null) {
navigation.menu.findItem(R.id.profiles).isChecked = true
displayFragment(ProfilesFragment())
}
fab = findViewById(R.id.fab)
fab.setOnClickListener { toggle() }
fab.setOnApplyWindowInsetsListener { view, insets ->
view.updateLayoutParams<ViewGroup.MarginLayoutParams> {
bottomMargin = insets.systemWindowInsetBottom +
resources.getDimensionPixelOffset(R.dimen.mtrl_bottomappbar_fab_bottom_margin)
}
insets
}
changeState(BaseService.State.Idle) // reset everything to init state
connection.connect(this, this)
DataStore.publicStore.registerChangeListener(this)
}