Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/notifications/NotificationCompatBuilder.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/notifications/NotificationCompatBuilder.java b/chrome/android/java/src/org/chromium/chrome/browser/notifications/NotificationCompatBuilder.java |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..f5befd9974af8faf69ae5a3eb79d921d2491c555 |
| --- /dev/null |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/notifications/NotificationCompatBuilder.java |
| @@ -0,0 +1,156 @@ |
| +// Copyright 2017 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +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; |
| + |
| +/** |
| + * Wraps a NotificationCompat.Builder object. |
| + * Created by awdf on 2/16/17. |
|
Peter Beverloo
2017/02/24 00:43:01
nit: delete (does your editor do this)?
awdf
2017/02/24 00:56:33
darn, thought I got them all. And yes, but I will
|
| + */ |
| +public class NotificationCompatBuilder implements ChromeNotificationBuilder { |
| + private final NotificationCompat.Builder mBuilder; |
| + |
| + public NotificationCompatBuilder(Context context) { |
| + mBuilder = new NotificationCompat.Builder(context); |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setAutoCancel(boolean autoCancel) { |
| + mBuilder.setAutoCancel(autoCancel); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setContentIntent(PendingIntent contentIntent) { |
| + mBuilder.setContentIntent(contentIntent); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setContentTitle(String title) { |
| + mBuilder.setContentTitle(title); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setContentText(String text) { |
| + mBuilder.setContentText(text); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setSmallIcon(int icon) { |
| + mBuilder.setSmallIcon(icon); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setTicker(String text) { |
| + mBuilder.setTicker(text); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setLocalOnly(boolean localOnly) { |
| + mBuilder.setLocalOnly(localOnly); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setGroup(String group) { |
| + mBuilder.setGroup(group); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setOngoing(boolean ongoing) { |
| + mBuilder.setOngoing(ongoing); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setVisibility(int visibility) { |
| + mBuilder.setVisibility(visibility); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setShowWhen(boolean showWhen) { |
| + mBuilder.setShowWhen(showWhen); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder addAction(int icon, String title, PendingIntent intent) { |
| + mBuilder.addAction(icon, title, intent); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setDeleteIntent(PendingIntent intent) { |
| + mBuilder.setDeleteIntent(intent); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setPriority(int pri) { |
| + mBuilder.setPriority(pri); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setProgress(int max, int percentage, boolean indeterminate) { |
| + mBuilder.setProgress(max, percentage, indeterminate); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setSubText(String text) { |
| + mBuilder.setSubText(text); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setContentInfo(String info) { |
| + mBuilder.setContentInfo(info); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setWhen(long time) { |
| + mBuilder.setWhen(time); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setLargeIcon(Bitmap icon) { |
| + mBuilder.setLargeIcon(icon); |
| + return this; |
| + } |
| + |
| + @Override |
| + public ChromeNotificationBuilder setVibrate(long[] vibratePattern) { |
| + mBuilder.setVibrate(vibratePattern); |
| + return this; |
| + } |
| + |
| + @Override |
| + public Notification buildWithBigTextStyle(String bigText) { |
| + NotificationCompat.BigTextStyle bigTextStyle = |
| + new NotificationCompat.BigTextStyle(mBuilder); |
| + bigTextStyle.bigText(bigText); |
| + return bigTextStyle.build(); |
| + } |
| + |
| + @Override |
| + public Notification build() { |
| + return mBuilder.build(); |
| + } |
| +} |