Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(60)

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/notifications/StandardNotificationBuilder.java

Issue 2702023002: Migrate web notifications to ChromeNotificationBuilder (Closed)
Patch Set: Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.chrome.browser.notifications; 5 package org.chromium.chrome.browser.notifications;
6 6
7 import android.app.Notification; 7 import android.app.Notification;
8 import android.content.Context; 8 import android.content.Context;
9 import android.os.Build; 9 import android.os.Build;
10 10
11 import org.chromium.chrome.browser.ChromeApplication;
12
11 /** 13 /**
12 * Builds a notification using the standard Notification.BigTextStyle layout. 14 * Builds a notification using the standard Notification.BigTextStyle layout.
13 */ 15 */
14 public class StandardNotificationBuilder extends NotificationBuilderBase { 16 public class StandardNotificationBuilder extends NotificationBuilderBase {
15 private final Context mContext; 17 private final Context mContext;
16 18
17 public StandardNotificationBuilder(Context context) { 19 public StandardNotificationBuilder(Context context) {
18 super(context.getResources()); 20 super(context.getResources());
19 mContext = context; 21 mContext = context;
20 } 22 }
21 23
22 @Override 24 @Override
23 public Notification build() { 25 public Notification build() {
24 // Note: this is not a NotificationCompat builder so be mindful of the 26 // Note: this is not a NotificationCompat builder so be mindful of the
25 // API level of methods you call on the builder. 27 // API level of methods you call on the builder.
26 Notification.Builder builder = new Notification.Builder(mContext); 28 // TODO(awdf) We should probably use a Compat builder.
29 ChromeNotificationBuilder builder =
30 ((ChromeApplication) mContext)
31 .getChromeNotificationBuilder(false, NotificationConstan ts.TYPE_ID_GENERAL,
32 NotificationConstants.TYPE_NAME_GENERAL);
Peter Beverloo 2017/02/20 01:10:20 dito re: types
27 builder.setContentTitle(mTitle); 33 builder.setContentTitle(mTitle);
28 builder.setContentText(mBody); 34 builder.setContentText(mBody);
29 builder.setSubText(mOrigin); 35 builder.setSubText(mOrigin);
30 builder.setTicker(mTickerText); 36 builder.setTicker(mTickerText);
31 if (mImage != null) { 37 if (mImage != null) {
32 Notification.BigPictureStyle style = 38 Notification.BigPictureStyle style =
33 new Notification.BigPictureStyle().bigPicture(mImage); 39 new Notification.BigPictureStyle().bigPicture(mImage);
34 if (Build.VERSION.CODENAME.equals("N") 40 if (Build.VERSION.CODENAME.equals("N")
35 || Build.VERSION.SDK_INT > Build.VERSION_CODES.M) { 41 || Build.VERSION.SDK_INT > Build.VERSION_CODES.M) {
36 // Android N doesn't show content text when expanded, so duplica te body text as a 42 // Android N doesn't show content text when expanded, so duplica te body text as a
(...skipping 20 matching lines...) Expand all
57 builder.setWhen(mTimestamp); 63 builder.setWhen(mTimestamp);
58 builder.setOnlyAlertOnce(!mRenotify); 64 builder.setOnlyAlertOnce(!mRenotify);
59 setGroupOnBuilder(builder, mOrigin); 65 setGroupOnBuilder(builder, mOrigin);
60 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 66 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
61 // Notification.Builder.setPublicVersion was added in Android L. 67 // Notification.Builder.setPublicVersion was added in Android L.
62 builder.setPublicVersion(createPublicNotification(mContext)); 68 builder.setPublicVersion(createPublicNotification(mContext));
63 } 69 }
64 return builder.build(); 70 return builder.build();
65 } 71 }
66 } 72 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698