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

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

Issue 2699253003: Abstracting over Notification.Builder + NotificationCompat.Builder (Closed)
Patch Set: remove erroneously added methods from rebase Created 3 years, 9 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
(Empty)
1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 package org.chromium.chrome.browser.notifications;
6
7 import android.app.Notification;
8 import android.app.PendingIntent;
9 import android.content.Context;
10 import android.graphics.Bitmap;
11 import android.support.v4.app.NotificationCompat;
12
13 /**
14 * Wraps a NotificationCompat.Builder object.
15 */
16 public class NotificationCompatBuilder implements ChromeNotificationBuilder {
17 private final NotificationCompat.Builder mBuilder;
18
19 public NotificationCompatBuilder(Context context) {
20 mBuilder = new NotificationCompat.Builder(context);
21 }
22
23 @Override
24 public ChromeNotificationBuilder setAutoCancel(boolean autoCancel) {
25 mBuilder.setAutoCancel(autoCancel);
26 return this;
27 }
28
29 @Override
30 public ChromeNotificationBuilder setContentIntent(PendingIntent contentInten t) {
31 mBuilder.setContentIntent(contentIntent);
32 return this;
33 }
34
35 @Override
36 public ChromeNotificationBuilder setContentTitle(String title) {
37 mBuilder.setContentTitle(title);
38 return this;
39 }
40
41 @Override
42 public ChromeNotificationBuilder setContentText(String text) {
43 mBuilder.setContentText(text);
44 return this;
45 }
46
47 @Override
48 public ChromeNotificationBuilder setSmallIcon(int icon) {
49 mBuilder.setSmallIcon(icon);
50 return this;
51 }
52
53 @Override
54 public ChromeNotificationBuilder setTicker(String text) {
55 mBuilder.setTicker(text);
56 return this;
57 }
58
59 @Override
60 public ChromeNotificationBuilder setLocalOnly(boolean localOnly) {
61 mBuilder.setLocalOnly(localOnly);
62 return this;
63 }
64
65 @Override
66 public ChromeNotificationBuilder setGroup(String group) {
67 mBuilder.setGroup(group);
68 return this;
69 }
70
71 @Override
72 public ChromeNotificationBuilder setOngoing(boolean ongoing) {
73 mBuilder.setOngoing(ongoing);
74 return this;
75 }
76
77 @Override
78 public ChromeNotificationBuilder setVisibility(int visibility) {
79 mBuilder.setVisibility(visibility);
80 return this;
81 }
82
83 @Override
84 public ChromeNotificationBuilder setShowWhen(boolean showWhen) {
85 mBuilder.setShowWhen(showWhen);
86 return this;
87 }
88
89 @Override
90 public ChromeNotificationBuilder addAction(int icon, String title, PendingIn tent intent) {
91 mBuilder.addAction(icon, title, intent);
92 return this;
93 }
94
95 @Override
96 public ChromeNotificationBuilder setDeleteIntent(PendingIntent intent) {
97 mBuilder.setDeleteIntent(intent);
98 return this;
99 }
100
101 @Override
102 public ChromeNotificationBuilder setPriority(int pri) {
103 mBuilder.setPriority(pri);
104 return this;
105 }
106
107 @Override
108 public ChromeNotificationBuilder setProgress(int max, int percentage, boolea n indeterminate) {
109 mBuilder.setProgress(max, percentage, indeterminate);
110 return this;
111 }
112
113 @Override
114 public ChromeNotificationBuilder setSubText(String text) {
115 mBuilder.setSubText(text);
116 return this;
117 }
118
119 @Override
120 public ChromeNotificationBuilder setContentInfo(String info) {
121 mBuilder.setContentInfo(info);
122 return this;
123 }
124
125 @Override
126 public ChromeNotificationBuilder setWhen(long time) {
127 mBuilder.setWhen(time);
128 return this;
129 }
130
131 @Override
132 public ChromeNotificationBuilder setLargeIcon(Bitmap icon) {
133 mBuilder.setLargeIcon(icon);
134 return this;
135 }
136
137 @Override
138 public ChromeNotificationBuilder setVibrate(long[] vibratePattern) {
139 mBuilder.setVibrate(vibratePattern);
140 return this;
141 }
142
143 @Override
144 public Notification buildWithBigTextStyle(String bigText) {
145 NotificationCompat.BigTextStyle bigTextStyle =
146 new NotificationCompat.BigTextStyle(mBuilder);
147 bigTextStyle.bigText(bigText);
148 return bigTextStyle.build();
149 }
150
151 @Override
152 public Notification build() {
153 return mBuilder.build();
154 }
155 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698