Improve extenson & remove redundant utils

This commit is contained in:
Rahul Kumar Patel
2021-02-24 17:41:20 +05:30
parent 1d29d1dca1
commit b877552634
20 changed files with 209 additions and 195 deletions

View File

@@ -0,0 +1,75 @@
/*
* Aurora Store
* Copyright (C) 2021, Rahul Kumar Patel <whyorean@gmail.com>
*
* Aurora Store is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* Aurora Store is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Aurora Store. If not, see <http://www.gnu.org/licenses/>.
*
*/
package com.aurora.extensions
import android.app.Activity
import android.content.Intent
import android.os.Build
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
fun AppCompatActivity.close() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
finishAfterTransition()
} else {
finish()
}
}
fun AppCompatActivity.restart() {
val intent = intent
overridePendingTransition(0, 0)
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION)
finish()
overridePendingTransition(0, 0)
startActivity(intent)
}
inline fun <reified T : Activity> Activity.startActivity(): Unit =
this.startActivity(newIntent<T>())
inline fun <reified T : Activity> Activity.startActivity(flags: Int): Unit =
this.startActivity(newIntent<T>(flags))
inline fun <reified T : Activity> Activity.startActivity(extras: Bundle): Unit =
this.startActivity(newIntent<T>(extras))
inline fun <reified T : Activity> Activity.startActivity(flags: Int, extras: Bundle): Unit =
this.startActivity(newIntent<T>(flags, extras))
inline fun <reified T : Activity> Activity.startActivityForResult(requestCode: Int): Unit =
this.startActivityForResult(newIntent<T>(), requestCode)
inline fun <reified T : Activity> Activity.startActivityForResult(
requestCode: Int,
flags: Int
): Unit =
this.startActivityForResult(newIntent<T>(flags), requestCode)
inline fun <reified T : Activity> Activity.startActivityForResult(
extras: Bundle, requestCode: Int
): Unit =
this.startActivityForResult(newIntent<T>(extras), requestCode)
inline fun <reified T : Activity> Activity.startActivityForResult(
extras: Bundle, requestCode: Int, flags: Int
): Unit =
this.startActivityForResult(newIntent<T>(flags, extras), requestCode)

View File

@@ -25,18 +25,27 @@ import android.content.ClipData
import android.content.ClipboardManager import android.content.ClipboardManager
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import android.graphics.Color
import android.net.Uri import android.net.Uri
import android.os.Build import android.os.Bundle
import android.util.DisplayMetrics
import android.util.TypedValue
import android.view.LayoutInflater
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import androidx.core.app.ActivityOptionsCompat
import androidx.core.app.ShareCompat import androidx.core.app.ShareCompat
import com.aurora.Constants import com.aurora.Constants
import com.aurora.gplayapi.data.models.App import com.aurora.gplayapi.data.models.App
import com.aurora.store.MainActivity import com.aurora.store.MainActivity
import com.aurora.store.R import com.aurora.store.R
import com.aurora.store.util.Log import com.aurora.store.util.Log
import com.aurora.store.util.ViewUtil
import kotlin.system.exitProcess import kotlin.system.exitProcess
val Context.inflater: LayoutInflater
get() = LayoutInflater.from(this)
val Context.displayMetrics: DisplayMetrics
get() = resources.displayMetrics
fun Context.browse(url: String) { fun Context.browse(url: String) {
try { try {
@@ -82,18 +91,10 @@ fun <T> Context.open(className: Class<T>, newTask: Boolean = false) {
intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
startActivity( startActivity(
intent, intent,
ViewUtil.getEmptyActivityBundle(this) getEmptyActivityBundle()
) )
} }
fun AppCompatActivity.close() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
finishAfterTransition()
} else {
finish()
}
}
fun Context.restartApp() { fun Context.restartApp() {
val pendingIntent = PendingIntent.getActivity( val pendingIntent = PendingIntent.getActivity(
this, this,
@@ -107,8 +108,23 @@ fun Context.restartApp() {
exitProcess(0) exitProcess(0)
} }
fun Context.getEmptyActivityBundle(): Bundle? {
return ActivityOptionsCompat.makeCustomAnimation(
this,
android.R.anim.fade_in,
android.R.anim.fade_out
).toBundle()
}
fun Context.copyToClipBoard(data: String?) { fun Context.copyToClipBoard(data: String?) {
val clipboard = getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager val clipboard = getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
val clip = ClipData.newPlainText("Download Url", data) val clip = ClipData.newPlainText("Download Url", data)
clipboard.setPrimaryClip(clip) clipboard.setPrimaryClip(clip)
} }
fun Context.getStyledAttributeColor(id: Int): Int {
val arr = obtainStyledAttributes(TypedValue().data, intArrayOf(id))
val styledAttr = arr.getColor(0, Color.WHITE)
arr.recycle()
return styledAttr
}

View File

@@ -0,0 +1,42 @@
/*
* Aurora Store
* Copyright (C) 2021, Rahul Kumar Patel <whyorean@gmail.com>
*
* Aurora Store is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* Aurora Store is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Aurora Store. If not, see <http://www.gnu.org/licenses/>.
*
*/
package com.aurora.extensions
import android.content.Context
import android.content.Intent
import android.os.Bundle
inline fun <reified T : Context> Context.newIntent(): Intent =
Intent(this, T::class.java)
inline fun <reified T : Context> Context.newIntent(flags: Int): Intent {
val intent = newIntent<T>()
intent.flags = flags
return intent
}
inline fun <reified T : Context> Context.newIntent(extras: Bundle): Intent =
newIntent<T>(0, extras)
inline fun <reified T : Context> Context.newIntent(flags: Int, extras: Bundle): Intent {
val intent = newIntent<T>(flags)
intent.putExtras(extras)
return intent
}

View File

@@ -33,8 +33,6 @@ import androidx.fragment.app.Fragment
import com.aurora.Constants import com.aurora.Constants
import com.aurora.store.R import com.aurora.store.R
import com.aurora.store.util.CommonUtil import com.aurora.store.util.CommonUtil
import com.aurora.store.util.ViewUtil
fun Fragment.applyTheme( fun Fragment.applyTheme(
themeId: Int, themeId: Int,
@@ -140,8 +138,7 @@ private fun AppCompatActivity.setLightStatusBar() {
private fun AppCompatActivity.setLightNavigationBar() { private fun AppCompatActivity.setLightNavigationBar() {
var flags = window.decorView.systemUiVisibility var flags = window.decorView.systemUiVisibility
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
window.navigationBarColor = window.navigationBarColor = getStyledAttributeColor(android.R.attr.colorBackground)
ViewUtil.getStyledAttribute(this, android.R.attr.colorBackground)
flags = flags or View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR flags = flags or View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR
} }
window.decorView.systemUiVisibility = flags window.decorView.systemUiVisibility = flags

View File

@@ -25,17 +25,10 @@ import android.os.Looper
fun runAsync(action: () -> Unit) = Thread(Runnable(action)).start() fun runAsync(action: () -> Unit) = Thread(Runnable(action)).start()
fun runOnUiThread(action: () -> Unit) { fun runOnUiThread(action: () -> Unit) {
if (isMainLooperAlive()) { when {
action() isMainThread() -> action.invoke()
} else { else -> Handler(Looper.getMainLooper()).post(Runnable(action))
Handler(Looper.getMainLooper()).post(Runnable(action))
} }
} }
fun runDelayed(delayMillis: Long, action: () -> Unit) = private fun isMainThread() = Looper.myLooper() == Looper.getMainLooper()
Handler().postDelayed(Runnable(action), delayMillis)
fun runDelayedOnUiThread(delayMillis: Long, action: () -> Unit) =
Handler(Looper.getMainLooper()).postDelayed(Runnable(action), delayMillis)
private fun isMainLooperAlive() = Looper.myLooper() == Looper.getMainLooper()

View File

@@ -21,16 +21,28 @@ package com.aurora.extensions
import android.content.Context import android.content.Context
import android.widget.Toast import android.widget.Toast
import androidx.annotation.StringRes import androidx.fragment.app.Fragment
fun Context.toast(text: CharSequence): Toast = fun Context.toast(resId: Int) = runOnUiThread {
Toast.makeText(this, text, Toast.LENGTH_SHORT).apply { show() }
fun Context.longToast(text: CharSequence): Toast =
Toast.makeText(this, text, Toast.LENGTH_LONG).apply { show() }
fun Context.toast(@StringRes resId: Int): Toast =
Toast.makeText(this, resId, Toast.LENGTH_SHORT).apply { show() } Toast.makeText(this, resId, Toast.LENGTH_SHORT).apply { show() }
}
fun Context.longToast(@StringRes resId: Int): Toast = fun Context.toast(text: CharSequence) = runOnUiThread {
Toast.makeText(this, text, Toast.LENGTH_SHORT).apply { show() }
}
fun Context.toastLong(resId: Int) = runOnUiThread {
Toast.makeText(this, resId, Toast.LENGTH_LONG).apply { show() } Toast.makeText(this, resId, Toast.LENGTH_LONG).apply { show() }
}
fun Context.toastLong(text: CharSequence) = runOnUiThread {
Toast.makeText(this, text, Toast.LENGTH_LONG).apply { show() }
}
fun Fragment.toast(resId: Int) = requireContext().toast(resId)
fun Fragment.toast(text: CharSequence) = requireContext().toast(text)
fun Fragment.toastLong(resId: Int) = requireContext().toastLong(resId)
fun Fragment.toastLong(text: CharSequence) = requireContext().toastLong(text)

View File

@@ -39,14 +39,14 @@ import androidx.navigation.NavController
import androidx.navigation.NavDestination import androidx.navigation.NavDestination
import androidx.navigation.Navigation import androidx.navigation.Navigation
import androidx.navigation.ui.NavigationUI import androidx.navigation.ui.NavigationUI
import com.aurora.extensions.getEmptyActivityBundle
import com.aurora.extensions.getStyledAttributeColor
import com.aurora.extensions.load
import com.aurora.extensions.open
import com.aurora.gplayapi.data.models.AuthData import com.aurora.gplayapi.data.models.AuthData
import com.aurora.store.data.providers.AuthProvider import com.aurora.store.data.providers.AuthProvider
import com.aurora.store.databinding.ActivityMainBinding import com.aurora.store.databinding.ActivityMainBinding
import com.aurora.store.util.Log import com.aurora.store.util.Log
import com.aurora.store.util.ViewUtil
import com.aurora.store.util.ViewUtil.getStyledAttribute
import com.aurora.extensions.load
import com.aurora.extensions.open
import com.aurora.store.view.ui.about.AboutActivity import com.aurora.store.view.ui.about.AboutActivity
import com.aurora.store.view.ui.account.AccountActivity import com.aurora.store.view.ui.account.AccountActivity
import com.aurora.store.view.ui.all.AppsGamesActivity import com.aurora.store.view.ui.all.AppsGamesActivity
@@ -122,8 +122,7 @@ class MainActivity : BaseActivity() {
} }
B.viewToolbar.imgActionSecondary.setOnClickListener { B.viewToolbar.imgActionSecondary.setOnClickListener {
val userAppIntent = Intent(this, DownloadActivity::class.java) open(DownloadActivity::class.java)
startActivity(userAppIntent, ViewUtil.getEmptyActivityBundle(this))
} }
} }
@@ -131,7 +130,7 @@ class MainActivity : BaseActivity() {
B.searchFab.setOnClickListener { B.searchFab.setOnClickListener {
startActivity( startActivity(
Intent(this, SearchSuggestionActivity::class.java), Intent(this, SearchSuggestionActivity::class.java),
ViewUtil.getEmptyActivityBundle(this) getEmptyActivityBundle()
) )
} }
} }
@@ -140,7 +139,7 @@ class MainActivity : BaseActivity() {
val bottomNavigationView: BottomNavigationView = B.navView val bottomNavigationView: BottomNavigationView = B.navView
navController = Navigation.findNavController(this, R.id.nav_host_fragment) navController = Navigation.findNavController(this, R.id.nav_host_fragment)
val backGroundColor = getStyledAttribute(this, android.R.attr.colorBackground) val backGroundColor = getStyledAttributeColor(android.R.attr.colorBackground)
bottomNavigationView.setBackgroundColor(ColorUtils.setAlphaComponent(backGroundColor, 245)) bottomNavigationView.setBackgroundColor(ColorUtils.setAlphaComponent(backGroundColor, 245))

View File

@@ -29,6 +29,7 @@ import android.util.ArrayMap
import androidx.core.app.NotificationCompat import androidx.core.app.NotificationCompat
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import com.aurora.Constants import com.aurora.Constants
import com.aurora.extensions.isLAndAbove
import com.aurora.gplayapi.data.models.App import com.aurora.gplayapi.data.models.App
import com.aurora.store.R import com.aurora.store.R
import com.aurora.store.data.downloader.DownloadManager import com.aurora.store.data.downloader.DownloadManager
@@ -39,7 +40,6 @@ import com.aurora.store.data.receiver.DownloadResumeReceiver
import com.aurora.store.data.receiver.InstallReceiver import com.aurora.store.data.receiver.InstallReceiver
import com.aurora.store.util.CommonUtil import com.aurora.store.util.CommonUtil
import com.aurora.store.util.Log import com.aurora.store.util.Log
import com.aurora.extensions.isLAndAbove
import com.aurora.store.view.ui.details.AppDetailsActivity import com.aurora.store.view.ui.details.AppDetailsActivity
import com.aurora.store.view.ui.downloads.DownloadActivity import com.aurora.store.view.ui.downloads.DownloadActivity
import com.google.gson.Gson import com.google.gson.Gson

View File

@@ -52,7 +52,7 @@ class AC2DMTask {
.response() .response()
return response.third.fold(success = { return response.third.fold(success = {
Util.parseResponse(String(it)) AC2DMUtil.parseResponse(String(it))
}, failure = { }, failure = {
mapOf() mapOf()
}) })

View File

@@ -25,7 +25,7 @@ import java.util.StringTokenizer;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
public class Util { public class AC2DMUtil {
public static Map<String, String> parseResponse(String response) { public static Map<String, String> parseResponse(String response) {
Map<String, String> keyValueMap = new HashMap<String, String>(); Map<String, String> keyValueMap = new HashMap<String, String>();

View File

@@ -22,11 +22,8 @@ package com.aurora.store.util
import android.content.Context import android.content.Context
import android.content.pm.PackageInfo import android.content.pm.PackageInfo
import android.content.pm.PackageManager import android.content.pm.PackageManager
import android.net.Uri
import android.os.Build import android.os.Build
import androidx.annotation.RequiresApi import androidx.annotation.RequiresApi
import androidx.core.content.FileProvider
import com.aurora.store.BuildConfig
import com.aurora.extensions.isLAndAbove import com.aurora.extensions.isLAndAbove
import org.apache.commons.io.IOUtils import org.apache.commons.io.IOUtils
import java.io.File import java.io.File
@@ -111,12 +108,4 @@ class ApkCopier(private val context: Context, private val packageName: String) {
Log.e("ApkCopier : %s", e.message) Log.e("ApkCopier : %s", e.message)
} }
} }
fun getUri(file: File): Uri {
return FileProvider.getUriForFile(
context,
"${BuildConfig.APPLICATION_ID}.fileProvider",
file
)
}
} }

View File

@@ -21,8 +21,6 @@ package com.aurora.store.util
import android.content.Context import android.content.Context
import android.os.Build import android.os.Build
import android.os.Bundle
import androidx.core.app.ActivityOptionsCompat
import com.aurora.store.R import com.aurora.store.R
import java.text.DecimalFormat import java.text.DecimalFormat
import java.util.* import java.util.*
@@ -37,6 +35,7 @@ object CommonUtil {
Pair(6, " MB"), Pair(6, " MB"),
Pair(9, " GB") Pair(9, " GB")
) )
private val diPrefixes: Map<Int, String> = hashMapOf( private val diPrefixes: Map<Int, String> = hashMapOf(
Pair(1, ""), Pair(1, ""),
Pair(3, " K"), Pair(3, " K"),
@@ -134,14 +133,6 @@ object CommonUtil {
} }
} }
fun getEmptyActivityBundle(context: Context): Bundle? {
return ActivityOptionsCompat.makeCustomAnimation(
context,
android.R.anim.fade_in,
android.R.anim.fade_out
).toBundle()
}
fun cleanupInstallationSessions(context: Context) { fun cleanupInstallationSessions(context: Context) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
val packageInstaller = context.packageManager.packageInstaller val packageInstaller = context.packageManager.packageInstaller

View File

@@ -92,26 +92,17 @@ object Preferences {
} }
} }
fun Context.save(key: String, value: Int) { /*Preference Extensions*/
Preferences.putInteger(this, key, value)
}
fun Fragment.save(key: String, value: Int) { fun Context.save(key: String, value: Int) = Preferences.putInteger(this, key, value)
Preferences.putInteger(requireContext(), key, value)
}
fun Context.save(key: String, value: Boolean) { fun Context.save(key: String, value: Boolean) = Preferences.putBoolean(this, key, value)
Preferences.putBoolean(this, key, value)
}
fun Fragment.save(key: String, value: Boolean) { fun Context.save(key: String, value: String) = Preferences.putString(this, key, value)
Preferences.putBoolean(requireContext(), key, value)
}
fun Context.save(key: String, value: String) {
Preferences.putString(this, key, value)
}
fun Fragment.save(key: String, value: String) { fun Fragment.save(key: String, value: Int) = requireContext().save(key, value)
Preferences.putString(requireContext(), key, value)
} fun Fragment.save(key: String, value: Boolean) = requireContext().save(key, value)
fun Fragment.save(key: String, value: String) = requireContext().save(key, value)

View File

@@ -1,71 +0,0 @@
/*
* Aurora Store
* Copyright (C) 2021, Rahul Kumar Patel <whyorean@gmail.com>
*
* Aurora Store is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* Aurora Store is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Aurora Store. If not, see <http://www.gnu.org/licenses/>.
*
*/
package com.aurora.store.util
import android.app.Activity
import android.content.Context
import android.graphics.Color
import android.os.Build
import android.os.Bundle
import android.util.TypedValue
import android.view.View
import android.view.WindowManager
import androidx.annotation.RequiresApi
import androidx.core.app.ActivityOptionsCompat
object ViewUtil {
fun getEmptyActivityBundle(context: Context?): Bundle? {
return ActivityOptionsCompat.makeCustomAnimation(
context!!,
android.R.anim.fade_in,
android.R.anim.fade_out
).toBundle()
}
@RequiresApi(Build.VERSION_CODES.LOLLIPOP)
fun configureActivityLayout(activity: Activity, isLight: Boolean) {
val window = activity.window
val params = window.attributes
params.flags = params.flags and WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS
window.attributes = params
window.statusBarColor = Color.TRANSPARENT
setFullScreenLightStatusBar(activity, isLight)
}
private fun setFullScreenLightStatusBar(activity: Activity, isLight: Boolean) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
var flags = activity.window.decorView.systemUiVisibility
if (isLight)
flags = flags or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
flags = flags or View.SYSTEM_UI_FLAG_LAYOUT_STABLE
flags = flags or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
activity.window.decorView.systemUiVisibility = flags
}
}
fun getStyledAttribute(context: Context, styleID: Int): Int {
val arr = context.obtainStyledAttributes(TypedValue().data, intArrayOf(styleID))
val styledColor = arr.getColor(0, Color.WHITE)
arr.recycle()
return styledColor
}
}

View File

@@ -19,22 +19,19 @@
package com.aurora.store.view.ui.account package com.aurora.store.view.ui.account
import android.content.Intent
import android.os.Bundle import android.os.Bundle
import android.view.View import android.view.View
import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.ViewModelProvider
import com.aurora.extensions.browse
import com.aurora.extensions.close
import com.aurora.extensions.load
import com.aurora.gplayapi.data.models.AuthData import com.aurora.gplayapi.data.models.AuthData
import com.aurora.store.MainActivity
import com.aurora.store.R import com.aurora.store.R
import com.aurora.store.data.AuthState import com.aurora.store.data.AuthState
import com.aurora.store.data.event.BusEvent import com.aurora.store.data.event.BusEvent
import com.aurora.store.data.providers.AccountProvider import com.aurora.store.data.providers.AccountProvider
import com.aurora.store.data.providers.AuthProvider import com.aurora.store.data.providers.AuthProvider
import com.aurora.store.databinding.ActivityAccountBinding import com.aurora.store.databinding.ActivityAccountBinding
import com.aurora.store.util.CommonUtil.getEmptyActivityBundle
import com.aurora.extensions.browse
import com.aurora.extensions.close
import com.aurora.extensions.load
import com.aurora.store.view.ui.commons.BaseActivity import com.aurora.store.view.ui.commons.BaseActivity
import com.aurora.store.viewmodel.auth.AuthViewModel import com.aurora.store.viewmodel.auth.AuthViewModel
import com.bumptech.glide.load.resource.bitmap.RoundedCorners import com.bumptech.glide.load.resource.bitmap.RoundedCorners
@@ -224,14 +221,6 @@ class AccountActivity : BaseActivity() {
} }
} }
private fun moveToContent() {
runOnUiThread {
val intent = Intent(this, MainActivity::class.java)
intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
startActivity(intent, getEmptyActivityBundle(this))
}
}
override fun onConnected() { override fun onConnected() {
hideNetworkConnectivitySheet() hideNetworkConnectivitySheet()
} }

View File

@@ -32,7 +32,7 @@ import com.aurora.store.data.event.BusEvent
import com.aurora.store.databinding.ActivityGoogleBinding import com.aurora.store.databinding.ActivityGoogleBinding
import com.aurora.store.util.AC2DMTask import com.aurora.store.util.AC2DMTask
import com.aurora.store.util.Preferences import com.aurora.store.util.Preferences
import com.aurora.store.util.Util import com.aurora.store.util.AC2DMUtil
import com.aurora.extensions.close import com.aurora.extensions.close
import com.aurora.extensions.isLAndAbove import com.aurora.extensions.isLAndAbove
import com.aurora.store.view.ui.commons.BaseActivity import com.aurora.store.view.ui.commons.BaseActivity
@@ -79,7 +79,7 @@ class GoogleActivity : BaseActivity() {
B.webview.webViewClient = object : WebViewClient() { B.webview.webViewClient = object : WebViewClient() {
override fun onPageFinished(view: WebView, url: String) { override fun onPageFinished(view: WebView, url: String) {
val cookies = CookieManager.getInstance().getCookie(url) val cookies = CookieManager.getInstance().getCookie(url)
val cookieMap = Util.parseCookieString(cookies) val cookieMap = AC2DMUtil.parseCookieString(cookies)
if (cookieMap.isNotEmpty() && cookieMap[AUTH_TOKEN] != null) { if (cookieMap.isNotEmpty() && cookieMap[AUTH_TOKEN] != null) {
val oauthToken = cookieMap[AUTH_TOKEN] val oauthToken = cookieMap[AUTH_TOKEN]
B.webview.evaluateJavascript("(function() { return document.getElementById('profileIdentifier').innerHTML; })();") { B.webview.evaluateJavascript("(function() { return document.getElementById('profileIdentifier').innerHTML; })();") {

View File

@@ -26,13 +26,13 @@ import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import com.aurora.Constants import com.aurora.Constants
import com.aurora.extensions.applyTheme
import com.aurora.extensions.getEmptyActivityBundle
import com.aurora.gplayapi.data.models.App import com.aurora.gplayapi.data.models.App
import com.aurora.store.data.providers.NetworkProvider import com.aurora.store.data.providers.NetworkProvider
import com.aurora.store.util.Preferences import com.aurora.store.util.Preferences
import com.aurora.store.util.Preferences.PREFERENCE_THEME_ACCENT import com.aurora.store.util.Preferences.PREFERENCE_THEME_ACCENT
import com.aurora.store.util.Preferences.PREFERENCE_THEME_TYPE import com.aurora.store.util.Preferences.PREFERENCE_THEME_TYPE
import com.aurora.store.util.ViewUtil
import com.aurora.extensions.applyTheme
import com.aurora.store.view.ui.account.GoogleActivity import com.aurora.store.view.ui.account.GoogleActivity
import com.aurora.store.view.ui.details.* import com.aurora.store.view.ui.details.*
import com.aurora.store.view.ui.sheets.NetworkDialogSheet import com.aurora.store.view.ui.sheets.NetworkDialogSheet
@@ -108,7 +108,7 @@ abstract class BaseActivity : AppCompatActivity(), NetworkProvider.NetworkListen
intent.putExtra(Constants.STRING_EXTRA, title) intent.putExtra(Constants.STRING_EXTRA, title)
startActivity( startActivity(
intent, intent,
ViewUtil.getEmptyActivityBundle(this) getEmptyActivityBundle()
) )
} }
@@ -133,7 +133,7 @@ abstract class BaseActivity : AppCompatActivity(), NetworkProvider.NetworkListen
val intent = Intent(this, GoogleActivity::class.java) val intent = Intent(this, GoogleActivity::class.java)
startActivity( startActivity(
intent, intent,
ViewUtil.getEmptyActivityBundle(this) getEmptyActivityBundle()
) )
} }

View File

@@ -24,9 +24,9 @@ import android.content.Intent
import android.os.Build import android.os.Build
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import com.aurora.Constants import com.aurora.Constants
import com.aurora.extensions.getEmptyActivityBundle
import com.aurora.gplayapi.data.models.App import com.aurora.gplayapi.data.models.App
import com.aurora.gplayapi.data.models.Category import com.aurora.gplayapi.data.models.Category
import com.aurora.store.util.ViewUtil
import com.aurora.store.view.ui.details.AppDetailsActivity import com.aurora.store.view.ui.details.AppDetailsActivity
import com.aurora.store.view.ui.details.DevProfileActivity import com.aurora.store.view.ui.details.DevProfileActivity
import com.google.gson.Gson import com.google.gson.Gson
@@ -74,19 +74,13 @@ open class BaseFragment : Fragment() {
intent.putExtra(Constants.BROWSE_EXTRA, browseUrl) intent.putExtra(Constants.BROWSE_EXTRA, browseUrl)
intent.putExtra(Constants.STRING_EXTRA, title) intent.putExtra(Constants.STRING_EXTRA, title)
startActivity( startActivity(intent, requireContext().getEmptyActivityBundle())
intent,
ViewUtil.getEmptyActivityBundle(requireContext())
)
} }
fun openEditorStreamBrowseActivity(browseUrl: String, title: String = "") { fun openEditorStreamBrowseActivity(browseUrl: String, title: String = "") {
val intent = Intent(requireContext(), EditorStreamBrowseActivity::class.java) val intent = Intent(requireContext(), EditorStreamBrowseActivity::class.java)
intent.putExtra(Constants.BROWSE_EXTRA, browseUrl) intent.putExtra(Constants.BROWSE_EXTRA, browseUrl)
intent.putExtra(Constants.STRING_EXTRA, title) intent.putExtra(Constants.STRING_EXTRA, title)
startActivity( startActivity(intent, requireContext().getEmptyActivityBundle())
intent,
ViewUtil.getEmptyActivityBundle(requireContext())
)
} }
} }

View File

@@ -24,10 +24,10 @@ import android.os.Bundle
import android.view.MenuItem import android.view.MenuItem
import androidx.preference.Preference import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat import androidx.preference.PreferenceFragmentCompat
import com.aurora.extensions.getStyledAttributeColor
import com.aurora.extensions.restartApp
import com.aurora.store.R import com.aurora.store.R
import com.aurora.store.databinding.ActivitySettingBinding import com.aurora.store.databinding.ActivitySettingBinding
import com.aurora.store.util.ViewUtil.getStyledAttribute
import com.aurora.extensions.restartApp
import com.aurora.store.view.ui.commons.BaseActivity import com.aurora.store.view.ui.commons.BaseActivity
import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.google.android.material.dialog.MaterialAlertDialogBuilder
@@ -144,7 +144,7 @@ class SettingsActivity : BaseActivity(),
restartApp() restartApp()
} }
.setNegativeButton(getString(R.string.action_later)) { dialog, _ -> dialog.dismiss() } .setNegativeButton(getString(R.string.action_later)) { dialog, _ -> dialog.dismiss() }
val backGroundColor = getStyledAttribute(this, android.R.attr.colorBackground) val backGroundColor = getStyledAttributeColor(android.R.attr.colorBackground)
builder.background = ColorDrawable(backGroundColor) builder.background = ColorDrawable(backGroundColor)
builder.create() builder.create()
builder.show() builder.show()

View File

@@ -28,12 +28,12 @@ import android.view.inputmethod.EditorInfo
import android.widget.TextView import android.widget.TextView
import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.ViewModelProvider
import com.aurora.Constants import com.aurora.Constants
import com.aurora.gplayapi.SearchSuggestEntry
import com.aurora.store.databinding.ActivitySearchSuggestionBinding
import com.aurora.store.util.ViewUtil
import com.aurora.extensions.close import com.aurora.extensions.close
import com.aurora.extensions.getEmptyActivityBundle
import com.aurora.extensions.open import com.aurora.extensions.open
import com.aurora.extensions.showKeyboard import com.aurora.extensions.showKeyboard
import com.aurora.gplayapi.SearchSuggestEntry
import com.aurora.store.databinding.ActivitySearchSuggestionBinding
import com.aurora.store.view.epoxy.views.SearchSuggestionViewModel_ import com.aurora.store.view.epoxy.views.SearchSuggestionViewModel_
import com.aurora.store.view.ui.commons.BaseActivity import com.aurora.store.view.ui.commons.BaseActivity
import com.aurora.store.view.ui.downloads.DownloadActivity import com.aurora.store.view.ui.downloads.DownloadActivity
@@ -151,9 +151,6 @@ class SearchSuggestionActivity : BaseActivity() {
private fun search(query: String) { private fun search(query: String) {
val intent = Intent(this, SearchResultsActivity::class.java) val intent = Intent(this, SearchResultsActivity::class.java)
intent.putExtra(Constants.STRING_EXTRA, query) intent.putExtra(Constants.STRING_EXTRA, query)
startActivity( startActivity(intent, getEmptyActivityBundle())
intent,
ViewUtil.getEmptyActivityBundle(this)
)
} }
} }