Index: chrome/android/java/src/org/chromium/chrome/browser/notifications/StandardNotificationBuilder.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/notifications/StandardNotificationBuilder.java b/chrome/android/java/src/org/chromium/chrome/browser/notifications/StandardNotificationBuilder.java |
index d321e1e91abecccca68dc115ba567cafbe9b009c..4e85712fd4f69a2d8aabe7283860f866541adcb3 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/notifications/StandardNotificationBuilder.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/notifications/StandardNotificationBuilder.java |
@@ -5,96 +5,41 @@ |
package org.chromium.chrome.browser.notifications; |
import android.app.Notification; |
-import android.app.PendingIntent; |
import android.content.Context; |
-import android.graphics.Bitmap; |
import android.support.v4.app.NotificationCompat; |
+import android.support.v4.app.NotificationCompat.Action; |
/** |
* Builds a notification using the given inputs. Relies on NotificationCompat and |
* NotificationCompat.BigTextStyle to provide a standard layout. |
*/ |
-public class StandardNotificationBuilder implements NotificationBuilder { |
- private final NotificationCompat.Builder mBuilder; |
+public class StandardNotificationBuilder extends NotificationBuilderBase { |
+ private final Context mContext; |
public StandardNotificationBuilder(Context context) { |
- mBuilder = new NotificationCompat.Builder(context); |
+ mContext = context; |
} |
@Override |
public Notification build() { |
- return mBuilder.build(); |
- } |
- |
- @Override |
- public NotificationBuilder setTitle(CharSequence title) { |
- mBuilder.setContentTitle(title); |
- return this; |
- } |
- |
- @Override |
- public NotificationBuilder setBody(CharSequence body) { |
- mBuilder.setContentText(body).setStyle(new NotificationCompat.BigTextStyle().bigText(body)); |
- return this; |
- } |
- |
- @Override |
- public NotificationBuilder setOrigin(CharSequence origin) { |
- mBuilder.setSubText(origin); |
- return this; |
- } |
- |
- @Override |
- public NotificationBuilder setTicker(CharSequence tickerText) { |
- mBuilder.setTicker(tickerText); |
- return this; |
- } |
- |
- @Override |
- public NotificationBuilder setLargeIcon(Bitmap icon) { |
- mBuilder.setLargeIcon(icon); |
- return this; |
- } |
- |
- @Override |
- public NotificationBuilder setSmallIcon(int iconId) { |
- mBuilder.setSmallIcon(iconId); |
- return this; |
- } |
- |
- @Override |
- public NotificationBuilder setContentIntent(PendingIntent intent) { |
- mBuilder.setContentIntent(intent); |
- return this; |
- } |
- |
- @Override |
- public NotificationBuilder setDeleteIntent(PendingIntent intent) { |
- mBuilder.setDeleteIntent(intent); |
- return this; |
- } |
- |
- @Override |
- public NotificationBuilder addAction(int iconId, CharSequence title, PendingIntent intent) { |
- mBuilder.addAction(iconId, title, intent); |
- return this; |
- } |
- |
- @Override |
- public NotificationBuilder addSettingsAction( |
- int iconId, CharSequence title, PendingIntent intent) { |
- return addAction(iconId, title, intent); |
- } |
- |
- @Override |
- public NotificationBuilder setDefaults(int defaults) { |
- mBuilder.setDefaults(defaults); |
- return this; |
- } |
- |
- @Override |
- public NotificationBuilder setVibrate(long[] pattern) { |
- mBuilder.setVibrate(pattern); |
- return this; |
+ NotificationCompat.Builder builder = new NotificationCompat.Builder(mContext); |
+ builder.setContentTitle(mTitle); |
+ builder.setContentText(mBody).setStyle( |
+ new NotificationCompat.BigTextStyle().bigText(mBody)); |
+ builder.setSubText(mOrigin); |
+ builder.setTicker(mTickerText); |
+ builder.setLargeIcon(mLargeIcon); |
+ builder.setSmallIcon(mSmallIconId); |
+ builder.setContentIntent(mContentIntent); |
+ builder.setDeleteIntent(mDeleteIntent); |
+ for (Action action : mActions) { |
+ builder.addAction(action); |
+ } |
+ if (mSettingsAction != null) { |
+ builder.addAction(mSettingsAction); |
+ } |
+ builder.setDefaults(mDefaults); |
+ builder.setVibrate(mVibratePattern); |
+ return builder.build(); |
} |
} |