package android.support.v4.app;
import android.app.Notification;
import android.app.PendingIntent;
import android.content.Context;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Build.VERSION;
import android.widget.RemoteViews;
import java.util.ArrayList;
import java.util.Iterator;
public class NotificationCompat
{
public static final int FLAG_HIGH_PRIORITY = 128;
private static final NotificationCompatImpl IMPL;
public static final int PRIORITY_DEFAULT = 0;
public static final int PRIORITY_HIGH = 1;
public static final int PRIORITY_LOW = -1;
public static final int PRIORITY_MAX = 2;
public static final int PRIORITY_MIN = -2;
static
{
if (Build.VERSION.SDK_INT >= 16) {
IMPL = new NotificationCompatImplJellybean();
}
for (;;)
{
return;
if (Build.VERSION.SDK_INT >= 14) {
IMPL = new NotificationCompatImplIceCreamSandwich();
} else if (Build.VERSION.SDK_INT >= 11) {
IMPL = new NotificationCompatImplHoneycomb();
} else {
IMPL = new NotificationCompatImplBase();
}
}
}
public static class Action
{
public PendingIntent actionIntent;
public int icon;
public CharSequence title;
public Action(int paramInt, CharSequence paramCharSequence, PendingIntent paramPendingIntent)
{
this.icon = paramInt;
this.title = paramCharSequence;
this.actionIntent = paramPendingIntent;
}
}
public static class InboxStyle
extends NotificationCompat.Style
{
ArrayList<CharSequence> mTexts = new ArrayList();
public InboxStyle() {}
public InboxStyle(NotificationCompat.Builder paramBuilder)
{
setBuilder(paramBuilder);
}
public InboxStyle addLine(CharSequence paramCharSequence)
{
this.mTexts.add(paramCharSequence);
return this;
}
public InboxStyle setBigContentTitle(CharSequence paramCharSequence)
{
this.mBigContentTitle = paramCharSequence;
return this;
}
public InboxStyle setSummaryText(CharSequence paramCharSequence)
{
this.mSummaryText = paramCharSequence;
this.mSummaryTextSet = true;
return this;
}
}
public static class BigTextStyle
extends NotificationCompat.Style
{
CharSequence mBigText;
public BigTextStyle() {}
public BigTextStyle(NotificationCompat.Builder paramBuilder)
{
setBuilder(paramBuilder);
}
public BigTextStyle bigText(CharSequence paramCharSequence)
{
this.mBigText = paramCharSequence;
return this;
}
public BigTextStyle setBigContentTitle(CharSequence paramCharSequence)
{
this.mBigContentTitle = paramCharSequence;
return this;
}
public BigTextStyle setSummaryText(CharSequence paramCharSequence)
{
this.mSummaryText = paramCharSequence;
this.mSummaryTextSet = true;
return this;
}
}
public static class BigPictureStyle
extends NotificationCompat.Style
{
Bitmap mPicture;
public BigPictureStyle() {}
public BigPictureStyle(NotificationCompat.Builder paramBuilder)
{
setBuilder(paramBuilder);
}
public BigPictureStyle bigPicture(Bitmap paramBitmap)
{
this.mPicture = paramBitmap;
return this;
}
public BigPictureStyle setBigContentTitle(CharSequence paramCharSequence)
{
this.mBigContentTitle = paramCharSequence;
return this;
}
public BigPictureStyle setSummaryText(CharSequence paramCharSequence)
{
this.mSummaryText = paramCharSequence;
this.mSummaryTextSet = true;
return this;
}
}
public static abstract class Style
{
CharSequence mBigContentTitle;
NotificationCompat.Builder mBuilder;
CharSequence mSummaryText;
boolean mSummaryTextSet = false;
public Notification build()
{
Notification localNotification = null;
if (this.mBuilder != null) {
localNotification = this.mBuilder.build();
}
return localNotification;
}
public void setBuilder(NotificationCompat.Builder paramBuilder)
{
if (this.mBuilder != paramBuilder)
{
this.mBuilder = paramBuilder;
if (this.mBuilder != null) {
this.mBuilder.setStyle(this);
}
}
}
}
public static class Builder
{
ArrayList<NotificationCompat.Action> mActions = new ArrayList();
CharSequence mContentInfo;
PendingIntent mContentIntent;
CharSequence mContentText;
CharSequence mContentTitle;
Context mContext;
PendingIntent mFullScreenIntent;
Bitmap mLargeIcon;
Notification mNotification = new Notification();
int mNumber;
int mPriority;
int mProgress;
boolean mProgressIndeterminate;
int mProgressMax;
NotificationCompat.Style mStyle;
CharSequence mSubText;
RemoteViews mTickerView;
boolean mUseChronometer;
public Builder(Context paramContext)
{
this.mContext = paramContext;
this.mNotification.when = System.currentTimeMillis();
this.mNotification.audioStreamType = -1;
this.mPriority = 0;
}
private void setFlag(int paramInt, boolean paramBoolean)
{
Notification localNotification2;
if (paramBoolean) {
localNotification2 = this.mNotification;
}
Notification localNotification1;
for (localNotification2.flags = (paramInt | localNotification2.flags);; localNotification1.flags &= (paramInt ^ 0xFFFFFFFF))
{
return;
localNotification1 = this.mNotification;
}
}
public Builder addAction(int paramInt, CharSequence paramCharSequence, PendingIntent paramPendingIntent)
{
this.mActions.add(new NotificationCompat.Action(paramInt, paramCharSequence, paramPendingIntent));
return this;
}
public Notification build()
{
return NotificationCompat.IMPL.build(this);
}
@Deprecated
public Notification getNotification()
{
return NotificationCompat.IMPL.build(this);
}
public Builder setAutoCancel(boolean paramBoolean)
{
setFlag(16, paramBoolean);
return this;
}
public Builder setContent(RemoteViews paramRemoteViews)
{
this.mNotification.contentView = paramRemoteViews;
return this;
}
public Builder setContentInfo(CharSequence paramCharSequence)
{
this.mContentInfo = paramCharSequence;
return this;
}
public Builder setContentIntent(PendingIntent paramPendingIntent)
{
this.mContentIntent = paramPendingIntent;
return this;
}
public Builder setContentText(CharSequence paramCharSequence)
{
this.mContentText = paramCharSequence;
return this;
}
public Builder setContentTitle(CharSequence paramCharSequence)
{
this.mContentTitle = paramCharSequence;
return this;
}
public Builder setDefaults(int paramInt)
{
this.mNotification.defaults = paramInt;
if ((paramInt & 0x4) != 0)
{
Notification localNotification = this.mNotification;
localNotification.flags = (0x1 | localNotification.flags);
}
return this;
}
public Builder setDeleteIntent(PendingIntent paramPendingIntent)
{
this.mNotification.deleteIntent = paramPendingIntent;
return this;
}
public Builder setFullScreenIntent(PendingIntent paramPendingIntent, boolean paramBoolean)
{
this.mFullScreenIntent = paramPendingIntent;
setFlag(128, paramBoolean);
return this;
}
public Builder setLargeIcon(Bitmap paramBitmap)
{
this.mLargeIcon = paramBitmap;
return this;
}
public Builder setLights(int paramInt1, int paramInt2, int paramInt3)
{
int i = 1;
this.mNotification.ledARGB = paramInt1;
this.mNotification.ledOnMS = paramInt2;
this.mNotification.ledOffMS = paramInt3;
int j;
Notification localNotification;
int k;
if ((this.mNotification.ledOnMS != 0) && (this.mNotification.ledOffMS != 0))
{
j = i;
localNotification = this.mNotification;
k = 0xFFFFFFFE & this.mNotification.flags;
if (j == 0) {
break label92;
}
}
for (;;)
{
localNotification.flags = (i | k);
return this;
j = 0;
break;
label92:
i = 0;
}
}
public Builder setNumber(int paramInt)
{
this.mNumber = paramInt;
return this;
}
public Builder setOngoing(boolean paramBoolean)
{
setFlag(2, paramBoolean);
return this;
}
public Builder setOnlyAlertOnce(boolean paramBoolean)
{
setFlag(8, paramBoolean);
return this;
}
public Builder setPriority(int paramInt)
{
this.mPriority = paramInt;
return this;
}
public Builder setProgress(int paramInt1, int paramInt2, boolean paramBoolean)
{
this.mProgressMax = paramInt1;
this.mProgress = paramInt2;
this.mProgressIndeterminate = paramBoolean;
return this;
}
public Builder setSmallIcon(int paramInt)
{
this.mNotification.icon = paramInt;
return this;
}
public Builder setSmallIcon(int paramInt1, int paramInt2)
{
this.mNotification.icon = paramInt1;
this.mNotification.iconLevel = paramInt2;
return this;
}
public Builder setSound(Uri paramUri)
{
this.mNotification.sound = paramUri;
this.mNotification.audioStreamType = -1;
return this;
}
public Builder setSound(Uri paramUri, int paramInt)
{
this.mNotification.sound = paramUri;
this.mNotification.audioStreamType = paramInt;
return this;
}
public Builder setStyle(NotificationCompat.Style paramStyle)
{
if (this.mStyle != paramStyle)
{
this.mStyle = paramStyle;
if (this.mStyle != null) {
this.mStyle.setBuilder(this);
}
}
return this;
}
public Builder setSubText(CharSequence paramCharSequence)
{
this.mSubText = paramCharSequence;
return this;
}
public Builder setTicker(CharSequence paramCharSequence)
{
this.mNotification.tickerText = paramCharSequence;
return this;
}
public Builder setTicker(CharSequence paramCharSequence, RemoteViews paramRemoteViews)
{
this.mNotification.tickerText = paramCharSequence;
this.mTickerView = paramRemoteViews;
return this;
}
public Builder setUsesChronometer(boolean paramBoolean)
{
this.mUseChronometer = paramBoolean;
return this;
}
public Builder setVibrate(long[] paramArrayOfLong)
{
this.mNotification.vibrate = paramArrayOfLong;
return this;
}
public Builder setWhen(long paramLong)
{
this.mNotification.when = paramLong;
return this;
}
}
static class NotificationCompatImplJellybean
implements NotificationCompat.NotificationCompatImpl
{
public Notification build(NotificationCompat.Builder paramBuilder)
{
NotificationCompatJellybean localNotificationCompatJellybean = new NotificationCompatJellybean(paramBuilder.mContext, paramBuilder.mNotification, paramBuilder.mContentTitle, paramBuilder.mContentText, paramBuilder.mContentInfo, paramBuilder.mTickerView, paramBuilder.mNumber, paramBuilder.mContentIntent, paramBuilder.mFullScreenIntent, paramBuilder.mLargeIcon, paramBuilder.mProgressMax, paramBuilder.mProgress, paramBuilder.mProgressIndeterminate, paramBuilder.mUseChronometer, paramBuilder.mPriority, paramBuilder.mSubText);
Iterator localIterator = paramBuilder.mActions.iterator();
while (localIterator.hasNext())
{
NotificationCompat.Action localAction = (NotificationCompat.Action)localIterator.next();
localNotificationCompatJellybean.addAction(localAction.icon, localAction.title, localAction.actionIntent);
}
if (paramBuilder.mStyle != null)
{
if (!(paramBuilder.mStyle instanceof NotificationCompat.BigTextStyle)) {
break label177;
}
NotificationCompat.BigTextStyle localBigTextStyle = (NotificationCompat.BigTextStyle)paramBuilder.mStyle;
localNotificationCompatJellybean.addBigTextStyle(localBigTextStyle.mBigContentTitle, localBigTextStyle.mSummaryTextSet, localBigTextStyle.mSummaryText, localBigTextStyle.mBigText);
}
for (;;)
{
return localNotificationCompatJellybean.build();
label177:
if ((paramBuilder.mStyle instanceof NotificationCompat.InboxStyle))
{
NotificationCompat.InboxStyle localInboxStyle = (NotificationCompat.InboxStyle)paramBuilder.mStyle;
localNotificationCompatJellybean.addInboxStyle(localInboxStyle.mBigContentTitle, localInboxStyle.mSummaryTextSet, localInboxStyle.mSummaryText, localInboxStyle.mTexts);
}
else if ((paramBuilder.mStyle instanceof NotificationCompat.BigPictureStyle))
{
NotificationCompat.BigPictureStyle localBigPictureStyle = (NotificationCompat.BigPictureStyle)paramBuilder.mStyle;
localNotificationCompatJellybean.addBigPictureStyle(localBigPictureStyle.mBigContentTitle, localBigPictureStyle.mSummaryTextSet, localBigPictureStyle.mSummaryText, localBigPictureStyle.mPicture);
}
}
}
}
static class NotificationCompatImplIceCreamSandwich
implements NotificationCompat.NotificationCompatImpl
{
public Notification build(NotificationCompat.Builder paramBuilder)
{
return NotificationCompatIceCreamSandwich.add(paramBuilder.mContext, paramBuilder.mNotification, paramBuilder.mContentTitle, paramBuilder.mContentText, paramBuilder.mContentInfo, paramBuilder.mTickerView, paramBuilder.mNumber, paramBuilder.mContentIntent, paramBuilder.mFullScreenIntent, paramBuilder.mLargeIcon, paramBuilder.mProgressMax, paramBuilder.mProgress, paramBuilder.mProgressIndeterminate);
}
}
static class NotificationCompatImplHoneycomb
implements NotificationCompat.NotificationCompatImpl
{
public Notification build(NotificationCompat.Builder paramBuilder)
{
return NotificationCompatHoneycomb.add(paramBuilder.mContext, paramBuilder.mNotification, paramBuilder.mContentTitle, paramBuilder.mContentText, paramBuilder.mContentInfo, paramBuilder.mTickerView, paramBuilder.mNumber, paramBuilder.mContentIntent, paramBuilder.mFullScreenIntent, paramBuilder.mLargeIcon);
}
}
static class NotificationCompatImplBase
implements NotificationCompat.NotificationCompatImpl
{
public Notification build(NotificationCompat.Builder paramBuilder)
{
Notification localNotification = paramBuilder.mNotification;
localNotification.setLatestEventInfo(paramBuilder.mContext, paramBuilder.mContentTitle, paramBuilder.mContentText, paramBuilder.mContentIntent);
if (paramBuilder.mPriority > 0) {
localNotification.flags = (0x80 | localNotification.flags);
}
return localNotification;
}
}
static abstract interface NotificationCompatImpl
{
public abstract Notification build(NotificationCompat.Builder paramBuilder);
}
}
/* Location: F:\neembuu\Research\android_apps\output_jar.jar
* Qualified Name: android.support.v4.app.NotificationCompat
* JD-Core Version: 0.7.0.1
*/