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