am 9ae6845a: am 27b587b6: am faa38a08: am 4422596d: am ce37f1da: am 4979a0b5: am 5f32d337: Merge "Notification.java javadoc: addAction" into jb-dev-docs

* commit '9ae6845ae866c3f1563d3ba8ee0fe43e0135bbf8':
  Notification.java javadoc: addAction
diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java
index e79b214..2c92d093 100644
--- a/core/java/android/app/Notification.java
+++ b/core/java/android/app/Notification.java
@@ -95,16 +95,16 @@
 
     /**
      * A timestamp related to this notification, in milliseconds since the epoch.
-     * 
+     *
      * Default value: {@link System#currentTimeMillis() Now}.
      *
      * Choose a timestamp that will be most relevant to the user. For most finite events, this
      * corresponds to the time the event happened (or will happen, in the case of events that have
      * yet to occur but about which the user is being informed). Indefinite events should be
-     * timestamped according to when the activity began. 
-     * 
+     * timestamped according to when the activity began.
+     *
      * Some examples:
-     * 
+     *
      * <ul>
      *   <li>Notification of a new chat message should be stamped when the message was received.</li>
      *   <li>Notification of an ongoing file download (with a progress bar, for example) should be stamped when the download started.</li>
@@ -112,8 +112,8 @@
      *   <li>Notification of an upcoming meeting should be stamped with the time the meeting will begin (that is, in the future).</li>
      *   <li>Notification of an ongoing stopwatch (increasing timer) should be stamped with the watch's start time.
      *   <li>Notification of an ongoing countdown timer should be stamped with the timer's end time.
-     * </ul> 
-     * 
+     * </ul>
+     *
      */
     public long when;
 
@@ -135,13 +135,13 @@
     /**
      * The number of events that this notification represents. For example, in a new mail
      * notification, this could be the number of unread messages.
-     * 
+     *
      * The system may or may not use this field to modify the appearance of the notification. For
      * example, before {@link android.os.Build.VERSION_CODES#HONEYCOMB}, this number was
      * superimposed over the icon in the status bar. Starting with
      * {@link android.os.Build.VERSION_CODES#HONEYCOMB}, the template used by
      * {@link Notification.Builder} has displayed the number in the expanded notification view.
-     * 
+     *
      * If the number is 0 or negative, it is never shown.
      */
     public int number;
@@ -343,7 +343,7 @@
 
     /**
      * Obsolete flag indicating high-priority notifications; use the priority field instead.
-     * 
+     *
      * @deprecated Use {@link #priority} with a positive value.
      */
     public static final int FLAG_HIGH_PRIORITY      = 0x00000080;
@@ -384,15 +384,15 @@
 
     /**
      * Relative priority for this notification.
-     * 
+     *
      * Priority is an indication of how much of the user's valuable attention should be consumed by
      * this notification. Low-priority notifications may be hidden from the user in certain
      * situations, while the user might be interrupted for a higher-priority notification. The
-     * system will make a determination about how to interpret notification priority as described in 
+     * system will make a determination about how to interpret notification priority as described in
      * MUMBLE MUMBLE.
      */
     public int priority;
-    
+
     /**
      * @hide
      * Notification type: incoming call (voice or video) or similar synchronous communication request.
@@ -643,7 +643,7 @@
         that.flags = this.flags;
 
         that.priority = this.priority;
-        
+
         final String[] thiskind = this.kind;
         if (thiskind != null) {
             final int N = thiskind.length;
@@ -742,9 +742,9 @@
         }
 
         parcel.writeInt(priority);
-        
+
         parcel.writeStringArray(kind); // ok for null
-        
+
         if (extras != null) {
             parcel.writeInt(1);
             extras.writeToParcel(parcel, 0);
@@ -912,16 +912,16 @@
 
     /**
      * Builder class for {@link Notification} objects.
-     * 
+     *
      * Provides a convenient way to set the various fields of a {@link Notification} and generate
      * content views using the platform's notification layout template. If your app supports
      * versions of Android as old as API level 4, you can instead use
      * {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder},
      * available in the <a href="{@docRoot}tools/extras/support-library.html">Android Support
      * library</a>.
-     * 
+     *
      * <p>Example:
-     * 
+     *
      * <pre class="prettyprint">
      * Notification noti = new Notification.Builder(mContext)
      *         .setContentTitle(&quot;New mail from &quot; + sender.toString())
@@ -1021,8 +1021,8 @@
 
         /**
          * Show the {@link Notification#when} field as a stopwatch.
-         * 
-         * Instead of presenting <code>when</code> as a timestamp, the notification will show an 
+         *
+         * Instead of presenting <code>when</code> as a timestamp, the notification will show an
          * automatically updating display of the minutes and seconds since <code>when</code>.
          *
          * Useful when showing an elapsed time (like an ongoing phone call).
@@ -1088,7 +1088,7 @@
         }
 
         /**
-         * Set the third line of text in the platform notification template. 
+         * Set the third line of text in the platform notification template.
          * Don't use if you're also using {@link #setProgress(int, int, boolean)}; they occupy the same location in the standard template.
          */
         public Builder setSubText(CharSequence text) {
@@ -1350,12 +1350,12 @@
             mPriority = pri;
             return this;
         }
-        
+
         /**
          * @hide
-         * 
+         *
          * Add a kind (category) to this notification. Optional.
-         * 
+         *
          * @see Notification#kind
          */
         public Builder addKind(String k) {
@@ -1381,6 +1381,8 @@
         /**
          * Add an action to this notification. Actions are typically displayed by
          * the system as a button adjacent to the notification content.
+         * <br>
+         * A notification displays up to 3 actions, from left to right in the order they were added.
          *
          * @param icon Resource ID of a drawable that represents the action.
          * @param title Text describing the action.
@@ -1563,7 +1565,7 @@
 
         private RemoteViews generateActionButton(Action action) {
             final boolean tombstone = (action.actionIntent == null);
-            RemoteViews button = new RemoteViews(mContext.getPackageName(), 
+            RemoteViews button = new RemoteViews(mContext.getPackageName(),
                     tombstone ? R.layout.notification_action_tombstone
                               : R.layout.notification_action);
             button.setTextViewCompoundDrawables(R.id.action0, action.icon, 0, 0, 0);
@@ -1722,7 +1724,7 @@
 
     /**
      * Helper class for generating large-format notifications that include a large image attachment.
-     * 
+     *
      * This class is a "rebuilder": It consumes a Builder object and modifies its behavior, like so:
      * <pre class="prettyprint">
      * Notification noti = new Notification.BigPictureStyle(
@@ -1734,7 +1736,7 @@
      *      .bigPicture(aBigBitmap)
      *      .build();
      * </pre>
-     * 
+     *
      * @see Notification#bigContentView
      */
     public static class BigPictureStyle extends Style {
@@ -1805,7 +1807,7 @@
 
     /**
      * Helper class for generating large-format notifications that include a lot of text.
-     * 
+     *
      * This class is a "rebuilder": It consumes a Builder object and modifies its behavior, like so:
      * <pre class="prettyprint">
      * Notification noti = new Notification.BigTextStyle(
@@ -1817,7 +1819,7 @@
      *      .bigText(aVeryLongString)
      *      .build();
      * </pre>
-     * 
+     *
      * @see Notification#bigContentView
      */
     public static class BigTextStyle extends Style {
@@ -1862,7 +1864,7 @@
             mBuilder.mContentText = null;
 
             RemoteViews contentView = getStandardView(R.layout.notification_template_big_text);
-            
+
             if (hadThreeLines) {
                 // vertical centering
                 contentView.setViewPadding(R.id.line1, 0, 0, 0, 0);
@@ -1886,7 +1888,7 @@
 
     /**
      * Helper class for generating large-format notifications that include a list of (up to 5) strings.
-     * 
+     *
      * This class is a "rebuilder": It consumes a Builder object and modifies its behavior, like so:
      * <pre class="prettyprint">
      * Notification noti = new Notification.InboxStyle(
@@ -1901,7 +1903,7 @@
      *      .setSummaryText(&quot;+3 more&quot;)
      *      .build();
      * </pre>
-     * 
+     *
      * @see Notification#bigContentView
      */
     public static class InboxStyle extends Style {