aboutsummaryrefslogtreecommitdiff
path: root/app/src
diff options
context:
space:
mode:
authorAllan Wang <me@allanwang.ca>2017-07-16 20:23:42 -0700
committerGitHub <noreply@github.com>2017-07-16 20:23:42 -0700
commit7bf93ea74b00ab7e8ceedac2aac6ad08fdf099ab (patch)
tree6599e231184130f9438b7f76d3141f259510495a /app/src
parentd90cb9b61cd2e033b46f4780ad1340c5f35b7751 (diff)
downloadfrost-7bf93ea74b00ab7e8ceedac2aac6ad08fdf099ab.tar.gz
frost-7bf93ea74b00ab7e8ceedac2aac6ad08fdf099ab.tar.bz2
frost-7bf93ea74b00ab7e8ceedac2aac6ad08fdf099ab.zip
Test against proguard and fix minor details (#67)v1.3.1
* Reenable enum in proguard rules * Add missing permission and upload to beta * Use kau permission const
Diffstat (limited to 'app/src')
-rw-r--r--app/src/main/AndroidManifest.xml2
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt16
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt12
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt19
4 files changed, 22 insertions, 27 deletions
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1ae569ed..4135ab59 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -7,7 +7,7 @@
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
- <!--<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />-->
+ <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<!--<uses-permission android:name="android.permission.VIBRATE" />-->
<!--<uses-permission android:name="android.permission.USE_FINGERPRINT" />-->
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt b/app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt
index 509ac2cb..487f3a9d 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt
@@ -85,7 +85,7 @@ class ImageActivity : AppCompatActivity() {
setContentView(if (!text.isNullOrBlank()) R.layout.activity_image else R.layout.activity_image_textless)
container.setBackgroundColor(Prefs.bgColor.withMinAlpha(222))
caption?.setTextColor(Prefs.textColor)
- caption?.setBackgroundColor(Prefs.bgColor.colorToForeground(0.1f).withAlpha(255))
+ caption?.setBackgroundColor(Prefs.bgColor.colorToForeground(0.2f).withAlpha(255))
caption?.text = text
progress.tint(Prefs.accentColor)
panel?.addPanelSlideListener(object : SlidingUpPanelLayout.SimplePanelSlideListener() {
@@ -174,16 +174,13 @@ class ImageActivity : AppCompatActivity() {
val timeStamp = SimpleDateFormat("yyyyMMdd_HHmmss").format(Date())
val imageFileName = "Frost_" + timeStamp + "_"
val storageDir = getExternalFilesDir(Environment.DIRECTORY_PICTURES)
- return File.createTempFile(
- imageFileName, /* prefix */
- ".png", /* suffix */
- storageDir /* directory */
- )
+ return File.createTempFile(imageFileName, ".png", storageDir)
}
internal fun downloadImage() {
kauRequestPermissions(PERMISSION_WRITE_EXTERNAL_STORAGE) {
granted, _ ->
+ L.d("Download image callback granted: $granted")
if (granted) {
doAsync {
val timeStamp = SimpleDateFormat("yyyyMMdd_HHmmss").format(Date())
@@ -199,6 +196,7 @@ class ImageActivity : AppCompatActivity() {
} catch (e: Exception) {
success = false
} finally {
+ L.d("Download image async finished: $success")
uiThread {
snackbar(if (success) R.string.image_download_success else R.string.image_download_fail)
if (success) {
@@ -230,7 +228,7 @@ class ImageActivity : AppCompatActivity() {
}
}
-internal enum class FabStates(val iicon: IIcon, val iconColor: Int = Prefs.textColor, val backgroundTint: Int = Prefs.accentBackgroundColor.withAlpha(255)) {
+internal enum class FabStates(val iicon: IIcon, val iconColor: Int = Prefs.iconColor, val backgroundTint: Int = Prefs.iconBackgroundColor.withAlpha(255)) {
ERROR(GoogleMaterial.Icon.gmd_error, Color.WHITE, Color.RED) {
override fun onClick(activity: ImageActivity) {
//todo add something
@@ -240,9 +238,7 @@ internal enum class FabStates(val iicon: IIcon, val iconColor: Int = Prefs.textC
override fun onClick(activity: ImageActivity) {}
},
DOWNLOAD(GoogleMaterial.Icon.gmd_file_download) {
- override fun onClick(activity: ImageActivity) {
- activity.downloadImage()
- }
+ override fun onClick(activity: ImageActivity) = activity.downloadImage()
},
SHARE(GoogleMaterial.Icon.gmd_share) {
override fun onClick(activity: ImageActivity) {
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt b/app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt
index f8c7af56..63e57554 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/Prefs.kt
@@ -65,16 +65,10 @@ object Prefs : KPref() {
get() = if (headerColor.isColorVisibleOn(bgColor, 100)) headerColor else textColor
/**
- * Ensures that the color is visible against both the foreground and background
+ * Ensures that the color is visible against the background
*/
- val accentBackgroundColor: Int
- get() {
- if (headerColor.isColorVisibleOn(textColor, 100)) {
- if (headerColor.isColorVisibleOn(bgColor, 100)) return headerColor
- else return headerColor.colorToForeground(0.2f)
- }
- return bgColor.colorToForeground(0.2f)
- }
+ val iconBackgroundColor: Int
+ get() = if (headerColor.isColorVisibleOn(bgColor)) headerColor else headerColor.colorToForeground(0.2f)
val themeInjector: InjectorContract
get() = t.injector
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt b/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt
index 964e771c..669b2c9e 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IAB.kt
@@ -158,13 +158,18 @@ private fun SettingsActivity.finishRestore(snackbar: Snackbar, hasPro: Boolean)
*/
fun Activity.validatePro() {
L.d("Play Store Validate pro")
- getInventory(Prefs.pro, false, { if (Prefs.pro) playStoreNoLongerPro() }) {
- inv, helper ->
- val proSku = inv.hasPurchase(FROST_PRO)
- L.d("Play Store Validation finished: ${Prefs.pro} should be $proSku")
- if (!proSku && Prefs.pro) playStoreNoLongerPro()
- else if (proSku && !Prefs.pro) playStoreFoundPro()
- helper.disposeWhenFinished()
+ try {
+ getInventory(Prefs.pro, false, { if (Prefs.pro) playStoreNoLongerPro() }) {
+ inv, helper ->
+ val proSku = inv.hasPurchase(FROST_PRO)
+ L.d("Play Store Validation finished: ${Prefs.pro} should be $proSku")
+ if (!proSku && Prefs.pro) playStoreNoLongerPro()
+ else if (proSku && !Prefs.pro) playStoreFoundPro()
+ IAB.dispose(helper)
+ }
+ } catch (e: Exception) {
+ L.e(e, "Play store validation exception")
+ IAB.dispose()
}
}