diff --git a/app/src/main/java/com/aurora/store/view/ui/all/AppsGamesActivity.kt b/app/src/main/java/com/aurora/store/view/ui/all/AppsGamesActivity.kt index 5ae5dbc9d..4267cceef 100644 --- a/app/src/main/java/com/aurora/store/view/ui/all/AppsGamesActivity.kt +++ b/app/src/main/java/com/aurora/store/view/ui/all/AppsGamesActivity.kt @@ -20,6 +20,7 @@ package com.aurora.store.view.ui.all import android.os.Bundle +import android.view.MenuItem import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager import androidx.lifecycle.Lifecycle @@ -28,7 +29,6 @@ import com.aurora.gplayapi.data.models.AuthData import com.aurora.store.R import com.aurora.store.data.providers.AuthProvider import com.aurora.store.databinding.ActivityGenericPagerBinding -import com.aurora.extensions.close import com.aurora.store.view.ui.commons.BaseActivity import com.google.android.material.tabs.TabLayout import com.google.android.material.tabs.TabLayoutMediator @@ -59,10 +59,24 @@ class AppsGamesActivity : BaseActivity() { attachViewPager() } + override fun onOptionsItemSelected(item: MenuItem): Boolean { + when (item.itemId) { + android.R.id.home -> { + onBackPressed() + return true + } + } + return super.onOptionsItemSelected(item) + } + private fun attachToolbar() { - B.layoutToolbarAction.txtTitle.text = getString(R.string.title_apps_games) - B.layoutToolbarAction.imgActionPrimary.setOnClickListener { - close() + setSupportActionBar(B.layoutActionToolbar.toolbar) + val actionBar = supportActionBar + if (actionBar != null) { + actionBar.setDisplayShowCustomEnabled(true) + actionBar.setDisplayHomeAsUpEnabled(true) + actionBar.elevation = 0f + actionBar.title = getString(R.string.title_apps_games) } } diff --git a/app/src/main/java/com/aurora/store/view/ui/spoof/SpoofActivity.kt b/app/src/main/java/com/aurora/store/view/ui/spoof/SpoofActivity.kt index 8deef26e6..0ddf1e596 100644 --- a/app/src/main/java/com/aurora/store/view/ui/spoof/SpoofActivity.kt +++ b/app/src/main/java/com/aurora/store/view/ui/spoof/SpoofActivity.kt @@ -20,16 +20,25 @@ package com.aurora.store.view.ui.spoof import android.os.Bundle +import android.view.Menu +import android.view.MenuItem import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager import androidx.lifecycle.Lifecycle import androidx.viewpager2.adapter.FragmentStateAdapter -import com.aurora.store.R -import com.aurora.store.databinding.ActivityGenericPagerBinding import com.aurora.extensions.close +import com.aurora.extensions.toast +import com.aurora.store.R +import com.aurora.store.data.providers.NativeDeviceInfoProvider +import com.aurora.store.databinding.ActivityGenericPagerBinding +import com.aurora.store.util.PathUtil import com.aurora.store.view.ui.commons.BaseActivity import com.google.android.material.tabs.TabLayout import com.google.android.material.tabs.TabLayoutMediator +import nl.komponents.kovenant.task +import nl.komponents.kovenant.ui.failUi +import nl.komponents.kovenant.ui.successUi +import java.io.FileOutputStream class SpoofActivity : BaseActivity() { @@ -55,10 +64,32 @@ class SpoofActivity : BaseActivity() { attachViewPager() } + override fun onCreateOptionsMenu(menu: Menu?): Boolean { + menuInflater.inflate(R.menu.menu_spoof, menu) + return true + } + + override fun onOptionsItemSelected(item: MenuItem): Boolean { + when (item.itemId) { + android.R.id.home -> { + onBackPressed() + return true + } + R.id.action_export -> { + exportDeviceConfig() + } + } + return super.onOptionsItemSelected(item) + } + private fun attachToolbar() { - B.layoutToolbarAction.txtTitle.text = getString(R.string.title_spoof_manager) - B.layoutToolbarAction.imgActionPrimary.setOnClickListener { - close() + setSupportActionBar(B.layoutActionToolbar.toolbar) + val actionBar = supportActionBar + if (actionBar != null) { + actionBar.setDisplayShowCustomEnabled(true) + actionBar.setDisplayHomeAsUpEnabled(true) + actionBar.elevation = 0f + actionBar.title = getString(R.string.title_spoof_manager) } } @@ -75,6 +106,24 @@ class SpoofActivity : BaseActivity() { }.attach() } + private fun exportDeviceConfig() { + task { + NativeDeviceInfoProvider(this) + .getNativeDeviceProperties() + .store( + FileOutputStream( + PathUtil.getExternalPath() + "/native-device.properties.export" + ), + "DEVICE_CONFIG" + ) + } successUi { + toast(R.string.toast_export_success) + } failUi { + it.printStackTrace() + toast(R.string.toast_export_failed) + } + } + internal class ViewPagerAdapter(fragment: FragmentManager, lifecycle: Lifecycle) : FragmentStateAdapter(fragment, lifecycle) { override fun createFragment(position: Int): Fragment { diff --git a/app/src/main/res/layout/activity_generic_pager.xml b/app/src/main/res/layout/activity_generic_pager.xml index bcdc3c1e6..6dc741feb 100644 --- a/app/src/main/res/layout/activity_generic_pager.xml +++ b/app/src/main/res/layout/activity_generic_pager.xml @@ -23,14 +23,14 @@ android:layout_height="match_parent"> + android:id="@+id/layout_action_toolbar" + layout="@layout/view_toolbar_native" /> + + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 985fdb289..e8a5e4aaa 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -364,4 +364,6 @@ Rated successfully Failed to submit rating Failed to generate AAS Token + Device config exported successfully + Failed to export device config