Get rid of unused extensions

This commit is contained in:
Rahul Patel
2024-09-02 03:49:18 +05:30
committed by Aayush Gupta
parent 282a4eb72e
commit 08d174b445
9 changed files with 9 additions and 137 deletions

View File

@@ -19,62 +19,12 @@
package com.aurora.extensions package com.aurora.extensions
import android.graphics.Color
import android.text.format.DateFormat import android.text.format.DateFormat
import androidx.annotation.ColorInt
import java.util.Calendar import java.util.Calendar
import java.util.Locale import java.util.Locale
import javax.annotation.Nullable
fun Long.toDate(): String { fun Long.toDate(): String {
val calendar = Calendar.getInstance(Locale.getDefault()) val calendar = Calendar.getInstance(Locale.getDefault())
calendar.timeInMillis = this calendar.timeInMillis = this
return DateFormat.format("dd/MM/yy", calendar).toString() return DateFormat.format("dd/MM/yy", calendar).toString()
} }
/**
* Computes a darker color from the given color.
* @param color The color to darken.
* @param factor The factor to darken the color by.
* - higher factor values will result in a lighter color.
* @return The darker color.
*/
fun darkenColor(@ColorInt color: Int, factor: Float = 0.25f): Int {
val a = Color.alpha(color)
val r = (Color.red(color) * factor).coerceIn(0f, 255f).toInt()
val g = (Color.green(color) * factor).coerceIn(0f, 255f).toInt()
val b = (Color.blue(color) * factor).coerceIn(0f, 255f).toInt()
return Color.argb(a, r, g, b)
}
/**
* Computes a lighter color from the given color.
* @param color The color to lighten.
* @param factor The factor to lighten the color by.
* - higher factor values will result in a lighter color.
* @param alpha The alpha value to use for the lighter color.
* @return The lighter color.
*/
fun lightenColor(@ColorInt color: Int, factor: Float = 0.5f, @Nullable alpha: Int? = null): Int {
val a = alpha ?: Color.alpha(color)
val r = (Color.red(color) + (255 - Color.red(color)) * factor).toInt()
val g = (Color.green(color) + (255 - Color.green(color)) * factor).toInt()
val b = (Color.blue(color) + (255 - Color.blue(color)) * factor).toInt()
return Color.argb(a, r, g, b)
}
/**
* Computes a contrasting color (B & W only) from the given color.
* @param color The color to contrast.
* @return The contrasting color.
*/
fun contrastingColor(@ColorInt color: Int): Int {
val red = Color.red(color)
val green = Color.green(color)
val blue = Color.blue(color)
val yiq = ((red * 299) + (green * 587) + (blue * 114)) / 1000
return if (yiq >= 128) Color.BLACK else Color.WHITE
}

View File

@@ -1,32 +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.extensions
inline fun doIf(condition: Boolean?, action: () -> Unit) {
if (condition == true) action()
}
inline fun doIf(condition: () -> Boolean?, action: () -> Unit) {
if (condition() == true) action()
}
inline fun doIf(any: Any?, action: () -> Unit) {
if (any != null) action()
}

View File

@@ -24,7 +24,6 @@ import android.annotation.SuppressLint
import android.os.Build import android.os.Build
import java.util.Locale import java.util.Locale
fun isMAndAbove(): Boolean { fun isMAndAbove(): Boolean {
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.M return Build.VERSION.SDK_INT >= Build.VERSION_CODES.M
} }

View File

@@ -31,18 +31,6 @@ fun Context.toast(text: CharSequence) = runOnUiThread {
Toast.makeText(this, text, Toast.LENGTH_SHORT).apply { show() } Toast.makeText(this, text, Toast.LENGTH_SHORT).apply { show() }
} }
fun Context.toastLong(resId: Int) = runOnUiThread {
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(resId: Int) = requireContext().toast(resId)
fun Fragment.toast(text: CharSequence) = requireContext().toast(text) 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

@@ -25,10 +25,6 @@ import android.view.inputmethod.InputMethodManager
fun View.isVisible() = visibility == View.VISIBLE fun View.isVisible() = visibility == View.VISIBLE
fun View.isGone() = visibility == View.GONE
fun View.isInvisible() = visibility == View.INVISIBLE
fun View.show() { fun View.show() {
visibility = View.VISIBLE visibility = View.VISIBLE
} }
@@ -55,30 +51,3 @@ fun View.hideKeyboard(): Boolean {
} }
return false return false
} }
fun View.setOnSingleClickListener(tolerance: Long = 500, onClick: (v: View) -> Unit) {
var lastClicked = 0L
val currentTimeMillis = System.currentTimeMillis()
setOnClickListener {
if (currentTimeMillis - lastClicked > tolerance) {
onClick(it)
lastClicked = currentTimeMillis
}
}
}
fun View.rotate(resetToZero: Boolean = true, duration: Long = 400) {
if (resetToZero)
rotation = 0f
animate().rotation(360f).setDuration(duration).start()
}
fun View.flip(resetToZero: Boolean = true, duration: Long = 400) {
if (resetToZero)
rotation = 0f
animate().rotation(180f).setDuration(duration).start()
}
fun View.getString(resourceId: Int): String {
return context.getString(resourceId)
}

View File

@@ -24,7 +24,6 @@ import android.content.res.ColorStateList
import android.util.AttributeSet import android.util.AttributeSet
import android.widget.RelativeLayout import android.widget.RelativeLayout
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import com.aurora.extensions.getString
import com.aurora.store.R import com.aurora.store.R
import com.aurora.store.data.model.State import com.aurora.store.data.model.State
import com.aurora.store.databinding.ViewActionButtonBinding import com.aurora.store.databinding.ViewActionButtonBinding
@@ -83,7 +82,7 @@ class ActionButton : RelativeLayout {
fun setText(text: Int) { fun setText(text: Int) {
binding.viewFlipper.displayedChild = 0 binding.viewFlipper.displayedChild = 0
binding.btn.text = getString(text) binding.btn.text = ContextCompat.getString(context, text)
} }
fun setButtonState(enabled: Boolean = true) { fun setButtonState(enabled: Boolean = true) {

View File

@@ -21,12 +21,12 @@ package com.aurora.store.view.epoxy.views.app
import android.content.Context import android.content.Context
import android.util.AttributeSet import android.util.AttributeSet
import androidx.core.content.ContextCompat
import coil.load import coil.load
import coil.transform.RoundedCornersTransformation import coil.transform.RoundedCornersTransformation
import com.airbnb.epoxy.CallbackProp import com.airbnb.epoxy.CallbackProp
import com.airbnb.epoxy.ModelProp import com.airbnb.epoxy.ModelProp
import com.airbnb.epoxy.ModelView import com.airbnb.epoxy.ModelView
import com.aurora.extensions.getString
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.databinding.ViewAppListBinding import com.aurora.store.databinding.ViewAppListBinding
@@ -59,16 +59,16 @@ class AppListView @JvmOverloads constructor(
extras.add("${app.labeledRating}") extras.add("${app.labeledRating}")
extras.add( extras.add(
if (app.isFree) if (app.isFree)
getString(R.string.details_free) ContextCompat.getString(context, R.string.details_free)
else else
getString(R.string.details_paid) ContextCompat.getString(context, R.string.details_paid)
) )
if (app.containsAds) if (app.containsAds)
extras.add(getString(R.string.details_contains_ads)) extras.add(ContextCompat.getString(context, R.string.details_contains_ads))
if (app.dependencies.dependentPackages.isNotEmpty()) if (app.dependencies.dependentPackages.isNotEmpty())
extras.add(getString(R.string.details_gsf_dependent)) extras.add(ContextCompat.getString(context, R.string.details_gsf_dependent))
binding.txtLine3.text = extras.joinToString(separator = "") binding.txtLine3.text = extras.joinToString(separator = "")
} }

View File

@@ -21,10 +21,10 @@ package com.aurora.store.view.epoxy.views.preference
import android.content.Context import android.content.Context
import android.util.AttributeSet import android.util.AttributeSet
import androidx.core.content.ContextCompat
import com.airbnb.epoxy.CallbackProp import com.airbnb.epoxy.CallbackProp
import com.airbnb.epoxy.ModelProp import com.airbnb.epoxy.ModelProp
import com.airbnb.epoxy.ModelView import com.airbnb.epoxy.ModelView
import com.aurora.extensions.getString
import com.aurora.store.R import com.aurora.store.R
import com.aurora.store.data.model.Permission import com.aurora.store.data.model.Permission
import com.aurora.store.databinding.ViewPermissionBinding import com.aurora.store.databinding.ViewPermissionBinding
@@ -51,10 +51,10 @@ class PermissionView @JvmOverloads constructor(
fun isGranted(granted: Boolean) { fun isGranted(granted: Boolean) {
if (granted) { if (granted) {
binding.btnAction.isEnabled = false binding.btnAction.isEnabled = false
binding.btnAction.text = getString(R.string.action_granted) binding.btnAction.text = ContextCompat.getString(context, R.string.action_granted)
} else { } else {
binding.btnAction.isEnabled = true binding.btnAction.isEnabled = true
binding.btnAction.text = getString(R.string.action_grant) binding.btnAction.text = ContextCompat.getString(context, R.string.action_grant)
} }
} }

View File

@@ -40,7 +40,6 @@ import coil.transform.RoundedCornersTransformation
import com.aurora.Constants import com.aurora.Constants
import com.aurora.Constants.EXODUS_SUBMIT_PAGE import com.aurora.Constants.EXODUS_SUBMIT_PAGE
import com.aurora.extensions.browse import com.aurora.extensions.browse
import com.aurora.extensions.getString
import com.aurora.extensions.hide import com.aurora.extensions.hide
import com.aurora.extensions.runOnUiThread import com.aurora.extensions.runOnUiThread
import com.aurora.extensions.share import com.aurora.extensions.share