am c5483785: Merge "Rename drag "thumbnail" to the drag "shadow"" into honeycomb

* commit 'c548378562de67c0050f140fc6e7520444f7e8f2':
  Rename drag "thumbnail" to the drag "shadow"
diff --git a/api/current.xml b/api/current.xml
index a234f39..d79de80 100644
--- a/api/current.xml
+++ b/api/current.xml
@@ -216573,7 +216573,7 @@
 >
 <parameter name="data" type="android.content.ClipData">
 </parameter>
-<parameter name="thumbBuilder" type="android.view.View.DragThumbnailBuilder">
+<parameter name="shadowBuilder" type="android.view.View.DragShadowBuilder">
 </parameter>
 <parameter name="myWindowOnly" type="boolean">
 </parameter>
@@ -217420,7 +217420,7 @@
 >
 </field>
 </class>
-<class name="View.DragThumbnailBuilder"
+<class name="View.DragShadowBuilder"
  extends="java.lang.Object"
  abstract="false"
  static="true"
@@ -217428,8 +217428,8 @@
  deprecated="not deprecated"
  visibility="public"
 >
-<constructor name="View.DragThumbnailBuilder"
- type="android.view.View.DragThumbnailBuilder"
+<constructor name="View.DragShadowBuilder"
+ type="android.view.View.DragShadowBuilder"
  static="false"
  final="false"
  deprecated="not deprecated"
@@ -217449,7 +217449,7 @@
  visibility="public"
 >
 </method>
-<method name="onDrawThumbnail"
+<method name="onDrawShadow"
  return="void"
  abstract="false"
  native="false"
@@ -217462,7 +217462,7 @@
 <parameter name="canvas" type="android.graphics.Canvas">
 </parameter>
 </method>
-<method name="onProvideThumbnailMetrics"
+<method name="onProvideShadowMetrics"
  return="void"
  abstract="false"
  native="false"
@@ -217472,9 +217472,9 @@
  deprecated="not deprecated"
  visibility="public"
 >
-<parameter name="thumbnailSize" type="android.graphics.Point">
+<parameter name="shadowSize" type="android.graphics.Point">
 </parameter>
-<parameter name="thumbnailTouchPoint" type="android.graphics.Point">
+<parameter name="shadowTouchPoint" type="android.graphics.Point">
 </parameter>
 </method>
 </class>
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 38777ec..32f0b14 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -10482,17 +10482,17 @@
     /**
      * !!! TODO: real docs
      *
-     * The base class implementation makes the thumbnail the same size and appearance
+     * The base class implementation makes the shadow the same size and appearance
      * as the view itself, and positions it with its center at the touch point.
      */
-    public static class DragThumbnailBuilder {
+    public static class DragShadowBuilder {
         private final WeakReference<View> mView;
 
         /**
-         * Construct a thumbnail builder object for use with the given view.
+         * Construct a shadow builder object for use with the given view.
          * @param view
          */
-        public DragThumbnailBuilder(View view) {
+        public DragShadowBuilder(View view) {
             mView = new WeakReference<View>(view);
         }
 
@@ -10501,56 +10501,57 @@
         }
 
         /**
-         * Provide the draggable-thumbnail metrics for the operation: the dimensions of
-         * the thumbnail image itself, and the point within that thumbnail that should
+         * Provide the draggable-shadow metrics for the operation: the dimensions of
+         * the shadow image itself, and the point within that shadow that should
          * be centered under the touch location while dragging.
          * <p>
-         * The default implementation sets the dimensions of the thumbnail to be the
-         * same as the dimensions of the View itself and centers the thumbnail under
+         * The default implementation sets the dimensions of the shadow to be the
+         * same as the dimensions of the View itself and centers the shadow under
          * the touch point.
          *
-         * @param thumbnailSize The application should set the {@code x} member of this
-         *        parameter to the desired thumbnail width, and the {@code y} member to
+         * @param shadowSize The application should set the {@code x} member of this
+         *        parameter to the desired shadow width, and the {@code y} member to
          *        the desired height.
-         * @param thumbnailTouchPoint The application should set this point to be the
-         *        location within the thumbnail that should track directly underneath
+         * @param shadowTouchPoint The application should set this point to be the
+         *        location within the shadow that should track directly underneath
          *        the touch point on the screen during a drag.
          */
-        public void onProvideThumbnailMetrics(Point thumbnailSize, Point thumbnailTouchPoint) {
+        public void onProvideShadowMetrics(Point shadowSize, Point shadowTouchPoint) {
             final View view = mView.get();
             if (view != null) {
-                thumbnailSize.set(view.getWidth(), view.getHeight());
-                thumbnailTouchPoint.set(thumbnailSize.x / 2, thumbnailSize.y / 2);
+                shadowSize.set(view.getWidth(), view.getHeight());
+                shadowTouchPoint.set(shadowSize.x / 2, shadowSize.y / 2);
             } else {
                 Log.e(View.VIEW_LOG_TAG, "Asked for drag thumb metrics but no view");
             }
         }
 
         /**
-         * Draw the thumbnail image for the upcoming drag.  The thumbnail canvas was
-         * created with the dimensions supplied by the onProvideThumbnailMetrics()
-         * callback.
+         * Draw the shadow image for the upcoming drag.  The shadow canvas was
+         * created with the dimensions supplied by the
+         * {@link #onProvideShadowMetrics(Point, Point)} callback.
          *
          * @param canvas
          */
-        public void onDrawThumbnail(Canvas canvas) {
+        public void onDrawShadow(Canvas canvas) {
             final View view = mView.get();
             if (view != null) {
                 view.draw(canvas);
             } else {
-                Log.e(View.VIEW_LOG_TAG, "Asked to draw drag thumb but no view");
+                Log.e(View.VIEW_LOG_TAG, "Asked to draw drag shadow but no view");
             }
         }
     }
 
     /**
-     * Drag and drop.  App calls startDrag(), then callbacks to the thumbnail builder's
-     * onProvideThumbnailMetrics() and onDrawThumbnail() methods happen, then the drag
+     * Drag and drop.  App calls startDrag(), then callbacks to the shadow builder's
+     * {@link DragShadowBuilder#onProvideShadowMetrics(Point, Point)} and
+     * {@link DragShadowBuilder#onDrawShadow(Canvas)} methods happen, then the drag
      * operation is handed over to the OS.
      * !!! TODO: real docs
      *
      * @param data !!! TODO
-     * @param thumbBuilder !!! TODO
+     * @param shadowBuilder !!! TODO
      * @param myWindowOnly When {@code true}, indicates that the drag operation should be
      *     restricted to the calling application. In this case only the calling application
      *     will see any DragEvents related to this drag operation.
@@ -10563,37 +10564,37 @@
      * @return {@code true} if the drag operation was initiated successfully; {@code false} if
      *     an error prevented the drag from taking place.
      */
-    public final boolean startDrag(ClipData data, DragThumbnailBuilder thumbBuilder,
+    public final boolean startDrag(ClipData data, DragShadowBuilder shadowBuilder,
             boolean myWindowOnly, Object myLocalState) {
         if (ViewDebug.DEBUG_DRAG) {
             Log.d(VIEW_LOG_TAG, "startDrag: data=" + data + " local=" + myWindowOnly);
         }
         boolean okay = false;
 
-        Point thumbSize = new Point();
-        Point thumbTouchPoint = new Point();
-        thumbBuilder.onProvideThumbnailMetrics(thumbSize, thumbTouchPoint);
+        Point shadowSize = new Point();
+        Point shadowTouchPoint = new Point();
+        shadowBuilder.onProvideShadowMetrics(shadowSize, shadowTouchPoint);
 
-        if ((thumbSize.x < 0) || (thumbSize.y < 0) ||
-                (thumbTouchPoint.x < 0) || (thumbTouchPoint.y < 0)) {
-            throw new IllegalStateException("Drag thumb dimensions must not be negative");
+        if ((shadowSize.x < 0) || (shadowSize.y < 0) ||
+                (shadowTouchPoint.x < 0) || (shadowTouchPoint.y < 0)) {
+            throw new IllegalStateException("Drag shadow dimensions must not be negative");
         }
 
         if (ViewDebug.DEBUG_DRAG) {
-            Log.d(VIEW_LOG_TAG, "drag thumb: width=" + thumbSize.x + " height=" + thumbSize.y
-                    + " thumbX=" + thumbTouchPoint.x + " thumbY=" + thumbTouchPoint.y);
+            Log.d(VIEW_LOG_TAG, "drag shadow: width=" + shadowSize.x + " height=" + shadowSize.y
+                    + " shadowX=" + shadowTouchPoint.x + " shadowY=" + shadowTouchPoint.y);
         }
         Surface surface = new Surface();
         try {
             IBinder token = mAttachInfo.mSession.prepareDrag(mAttachInfo.mWindow,
-                    myWindowOnly, thumbSize.x, thumbSize.y, surface);
+                    myWindowOnly, shadowSize.x, shadowSize.y, surface);
             if (ViewDebug.DEBUG_DRAG) Log.d(VIEW_LOG_TAG, "prepareDrag returned token=" + token
                     + " surface=" + surface);
             if (token != null) {
                 Canvas canvas = surface.lockCanvas(null);
                 try {
                     canvas.drawColor(0, PorterDuff.Mode.CLEAR);
-                    thumbBuilder.onDrawThumbnail(canvas);
+                    shadowBuilder.onDrawShadow(canvas);
                 } finally {
                     surface.unlockCanvasAndPost(canvas);
                 }
@@ -10603,12 +10604,12 @@
                 // Cache the local state object for delivery with DragEvents
                 root.setLocalDragState(myLocalState);
 
-                // repurpose 'thumbSize' for the last touch point
-                root.getLastTouchPoint(thumbSize);
+                // repurpose 'shadowSize' for the last touch point
+                root.getLastTouchPoint(shadowSize);
 
                 okay = mAttachInfo.mSession.performDrag(mAttachInfo.mWindow, token,
-                        thumbSize.x, thumbSize.y,
-                        thumbTouchPoint.x, thumbTouchPoint.y, data);
+                        shadowSize.x, shadowSize.y,
+                        shadowTouchPoint.x, shadowTouchPoint.y, data);
                 if (ViewDebug.DEBUG_DRAG) Log.d(VIEW_LOG_TAG, "performDrag returned " + okay);
             }
         } catch (Exception e) {
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
index 6a2a09a..af3ffe5 100644
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -8036,32 +8036,32 @@
         return packRangeInLong(min, max);
     }
 
-    private DragThumbnailBuilder getTextThumbnailBuilder(CharSequence text) {
-        TextView thumbnail = (TextView) inflate(mContext,
+    private DragShadowBuilder getTextThumbnailBuilder(CharSequence text) {
+        TextView shadowView = (TextView) inflate(mContext,
                 com.android.internal.R.layout.text_drag_thumbnail, null);
 
-        if (thumbnail == null) {
+        if (shadowView == null) {
             throw new IllegalArgumentException("Unable to inflate text drag thumbnail");
         }
 
-        if (text.length() > DRAG_THUMBNAIL_MAX_TEXT_LENGTH) {
-            text = text.subSequence(0, DRAG_THUMBNAIL_MAX_TEXT_LENGTH);
+        if (text.length() > DRAG_SHADOW_MAX_TEXT_LENGTH) {
+            text = text.subSequence(0, DRAG_SHADOW_MAX_TEXT_LENGTH);
         }
-        thumbnail.setText(text);
-        thumbnail.setTextColor(getTextColors());
+        shadowView.setText(text);
+        shadowView.setTextColor(getTextColors());
 
-        thumbnail.setTextAppearance(mContext, R.styleable.Theme_textAppearanceLarge);
-        thumbnail.setGravity(Gravity.CENTER);
+        shadowView.setTextAppearance(mContext, R.styleable.Theme_textAppearanceLarge);
+        shadowView.setGravity(Gravity.CENTER);
 
-        thumbnail.setLayoutParams(new LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
+        shadowView.setLayoutParams(new LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
                 ViewGroup.LayoutParams.WRAP_CONTENT));
 
         final int size = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
-        thumbnail.measure(size, size);
+        shadowView.measure(size, size);
 
-        thumbnail.layout(0, 0, thumbnail.getMeasuredWidth(), thumbnail.getMeasuredHeight());
-        thumbnail.invalidate();
-        return new DragThumbnailBuilder(thumbnail);
+        shadowView.layout(0, 0, shadowView.getMeasuredWidth(), shadowView.getMeasuredHeight());
+        shadowView.invalidate();
+        return new DragShadowBuilder(shadowView);
     }
 
     private static class DragLocalState {
@@ -9503,7 +9503,7 @@
     private static final InputFilter[] NO_FILTERS = new InputFilter[0];
     private InputFilter[] mFilters = NO_FILTERS;
     private static final Spanned EMPTY_SPANNED = new SpannedString("");
-    private static int DRAG_THUMBNAIL_MAX_TEXT_LENGTH = 20;
+    private static int DRAG_SHADOW_MAX_TEXT_LENGTH = 20;
     // System wide time for last cut or copy action.
     private static long sLastCutOrCopyTime;
     // Used to highlight a word when it is corrected by the IME
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/ShirtPocket.java b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/ShirtPocket.java
index 14f2587..b9206ea 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/ShirtPocket.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/ShirtPocket.java
@@ -147,23 +147,23 @@
                 final ClipData clip = mClipping;
                 if (clip != null) {
                     final Bitmap icon = clip.getIcon();
-                    DragThumbnailBuilder thumb;
+                    DragShadowBuilder shadow;
                     if (icon != null) {
-                        thumb = new DragThumbnailBuilder(v) {
-                            public void onProvideThumbnailMetrics(Point thumbnailSize, Point thumbnailTouchPoint) {
-                                thumbnailSize.set(icon.getWidth(), icon.getHeight());
-                                thumbnailTouchPoint.set(thumbnailSize.x / 2, thumbnailSize.y / 2);
+                        shadow = new DragShadowBuilder(v) {
+                            public void onProvideShadowMetrics(Point shadowSize, Point shadowTouchPoint) {
+                                shadowSize.set(icon.getWidth(), icon.getHeight());
+                                shadowTouchPoint.set(shadowSize.x / 2, shadowSize.y / 2);
                             }
-                            public void onDrawThumbnail(Canvas canvas) {
+                            public void onDrawShadow(Canvas canvas) {
                                 canvas.drawBitmap(icon, 0, 0, new Paint());
                             }
                         };
                     } else {
                         // uhhh, what now?
-                        thumb = new DragThumbnailBuilder(mWindow.findViewById(R.id.preview));
+                        shadow = new DragShadowBuilder(mWindow.findViewById(R.id.preview));
                     }
 
-                    v.startDrag(clip, thumb, false, null);
+                    v.startDrag(clip, shadow, false, null);
 
                     // TODO: only discard the clipping if it was accepted
                     stash(null);