From d82a9b9e2965b3e674aa0e654cfca55398a508a7 Mon Sep 17 00:00:00 2001 From: Allan Wang Date: Sun, 29 Oct 2017 13:17:31 -0400 Subject: fix/weakRef (#452) * Add activity context wrapper for images * Remove unused receiver * Add action check * Add image activity logging * Do not log image url --- .../pitchedapps/frost/activities/ImageActivity.kt | 7 +++-- .../frost/services/NotificationReceiver.kt | 34 ---------------------- .../pitchedapps/frost/services/UpdateReceiver.kt | 2 +- 3 files changed, 5 insertions(+), 38 deletions(-) delete mode 100644 app/src/main/kotlin/com/pitchedapps/frost/services/NotificationReceiver.kt (limited to 'app/src/main/kotlin/com/pitchedapps/frost') 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 e32a2ea9..0a713649 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt @@ -31,8 +31,8 @@ import com.pitchedapps.frost.BuildConfig import com.pitchedapps.frost.R import com.pitchedapps.frost.utils.* import com.sothree.slidinguppanel.SlidingUpPanelLayout +import org.jetbrains.anko.activityUiThreadWithContext import org.jetbrains.anko.doAsync -import org.jetbrains.anko.uiThread import java.io.File import java.io.IOException @@ -76,7 +76,7 @@ class ImageActivity : KauBaseActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - L.i("Displaying image $imageUrl") + L.i("Displaying image", imageUrl) val layout = if (!text.isNullOrBlank()) R.layout.activity_image else R.layout.activity_image_textless setContentView(layout) container.setBackgroundColor(Prefs.bgColor.withMinAlpha(222)) @@ -179,7 +179,7 @@ class ImageActivity : KauBaseActivity() { success = false } finally { L.d("Download image async finished: $success") - uiThread { + activityUiThreadWithContext { val text = if (success) R.string.image_download_success else R.string.image_download_fail frostSnackbar(text) if (success) fabAction = FabStates.SHARE @@ -199,6 +199,7 @@ class ImageActivity : KauBaseActivity() { override fun onDestroy() { deleteTempFile() + if (!BuildConfig.DEBUG) L.d("Closing $localClassName") super.onDestroy() } } diff --git a/app/src/main/kotlin/com/pitchedapps/frost/services/NotificationReceiver.kt b/app/src/main/kotlin/com/pitchedapps/frost/services/NotificationReceiver.kt deleted file mode 100644 index c903ff72..00000000 --- a/app/src/main/kotlin/com/pitchedapps/frost/services/NotificationReceiver.kt +++ /dev/null @@ -1,34 +0,0 @@ -package com.pitchedapps.frost.services - -import android.app.PendingIntent -import android.content.BroadcastReceiver -import android.content.Context -import android.content.Intent -import android.support.v4.app.NotificationManagerCompat -import com.pitchedapps.frost.utils.L - -/** - * Created by Allan Wang on 2017-08-04. - * - * Cancels a notification - */ -private const val NOTIF_TAG_TO_CANCEL = "notif_tag_to_cancel" -private const val NOTIF_ID_TO_CANCEL = "notif_id_to_cancel" - -class NotificationReceiver : BroadcastReceiver() { - override fun onReceive(context: Context, intent: Intent) { - L.d("NotificationReceiver triggered") - val notifTag = intent.getStringExtra(NOTIF_TAG_TO_CANCEL) - val notifId = intent.getIntExtra(NOTIF_ID_TO_CANCEL, -1) - if (notifId != -1) { - L.d("NotificationReceiver: Cancelling $notifTag $notifId") - NotificationManagerCompat.from(context).cancel(notifTag, notifId) - } - } -} - -fun Context.getNotificationPendingCancelIntent(tag: String?, notifId: Int): PendingIntent { - val cancelIntent = Intent(this, NotificationReceiver::class.java) - .putExtra(NOTIF_TAG_TO_CANCEL, tag).putExtra(NOTIF_ID_TO_CANCEL, notifId) - return PendingIntent.getBroadcast(this, 0, cancelIntent, 0) -} \ No newline at end of file diff --git a/app/src/main/kotlin/com/pitchedapps/frost/services/UpdateReceiver.kt b/app/src/main/kotlin/com/pitchedapps/frost/services/UpdateReceiver.kt index 9e53889e..989ac127 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/services/UpdateReceiver.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/services/UpdateReceiver.kt @@ -13,8 +13,8 @@ import com.pitchedapps.frost.utils.Prefs */ class UpdateReceiver : BroadcastReceiver() { - //todo check action warning override fun onReceive(context: Context, intent: Intent) { + if (intent.action != Intent.ACTION_MY_PACKAGE_REPLACED) return L.d("Frost has updated") context.scheduleNotifications(Prefs.notificationFreq) //Update notifications } -- cgit v1.2.3