diff options
author | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-06-24 11:23:39 +0200 |
---|---|---|
committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-06-24 11:23:39 +0200 |
commit | afeb0093e59351ec44b909aed9769aa2f0ae5574 (patch) | |
tree | 7c4042ec5c67f44b412d2bd6f2040285d9de445a /OpenKeychain/src/main/java/org/sufficientlysecure/keychain | |
parent | 2b26f293b8cb03a0b605e3a95365160f5c034329 (diff) | |
parent | 7366f14d32dc5df6a1035450d968eab8fcbdc5c1 (diff) | |
download | open-keychain-afeb0093e59351ec44b909aed9769aa2f0ae5574.tar.gz open-keychain-afeb0093e59351ec44b909aed9769aa2f0ae5574.tar.bz2 open-keychain-afeb0093e59351ec44b909aed9769aa2f0ae5574.zip |
Merge pull request #1360 from moparisthebest/master
New all-white status bar icon to fix issue #1356
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain')
-rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/PassphraseCacheService.java | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/PassphraseCacheService.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/PassphraseCacheService.java index dbbfe3133..9679cb7bc 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/PassphraseCacheService.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/PassphraseCacheService.java @@ -36,6 +36,9 @@ import android.os.Messenger; import android.os.RemoteException; import android.support.v4.app.NotificationCompat; import android.support.v4.util.LongSparseArray; +import android.graphics.Bitmap; +import android.graphics.Canvas; +import android.graphics.drawable.Drawable; import org.sufficientlysecure.keychain.Constants; import org.sufficientlysecure.keychain.R; @@ -474,11 +477,26 @@ public class PassphraseCacheService extends Service { } } + // from de.azapps.mirakel.helper.Helpers from https://github.com/MirakelX/mirakel-android + private static Bitmap getBitmap(int resId, Context ctx) { + final int mLargeIconWidth = (int) ctx.getResources().getDimension( + android.R.dimen.notification_large_icon_width); + final int mLargeIconHeight = (int) ctx.getResources().getDimension( + android.R.dimen.notification_large_icon_height); + final Drawable d = ctx.getResources().getDrawable(resId); + final Bitmap b = Bitmap.createBitmap(mLargeIconWidth, mLargeIconHeight, Bitmap.Config.ARGB_8888); + final Canvas c = new Canvas(b); + d.setBounds(0, 0, mLargeIconWidth, mLargeIconHeight); + d.draw(c); + return b; + } + private Notification getNotification() { NotificationCompat.Builder builder = new NotificationCompat.Builder(this); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { - builder.setSmallIcon(R.drawable.ic_launcher) + builder.setSmallIcon(R.drawable.ic_stat_notify) + .setLargeIcon(getBitmap(R.drawable.ic_launcher, getBaseContext())) .setContentTitle(getString(R.string.app_name)) .setContentText(String.format(getString(R.string.passp_cache_notif_n_keys), mPassphraseCache.size())); @@ -510,7 +528,8 @@ public class PassphraseCacheService extends Service { ); } else { // Fallback, since expandable notifications weren't available back then - builder.setSmallIcon(R.drawable.ic_launcher) + builder.setSmallIcon(R.drawable.ic_stat_notify) + .setLargeIcon(getBitmap(R.drawable.ic_launcher, getBaseContext())) .setContentTitle(String.format(getString(R.string.passp_cache_notif_n_keys), mPassphraseCache.size())) .setContentText(getString(R.string.passp_cache_notif_click_to_clear)); |