Drag & Drop "move to folder"

* Drag & Drop "move to folder" preliminary implementation
* Use "drag handle" button to initiate drag
* Use the message list item itself as the drag thumbnail for
  one item; "Move N messages" for multiple (not implemented)
* Disable MailboxList update during drag
* Use ListView itself as drag/drop target

Bug: 3138004
Change-Id: I9243e4f583cf91caa1b9dd04fd64d52e8b28fa30
diff --git a/res/drawable-hdpi/drag_background_holo.9.png b/res/drawable-hdpi/drag_background_holo.9.png
new file mode 100644
index 0000000..63a1f5a
--- /dev/null
+++ b/res/drawable-hdpi/drag_background_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/drag_handle.png b/res/drawable-hdpi/drag_handle.png
new file mode 100755
index 0000000..b1f035c
--- /dev/null
+++ b/res/drawable-hdpi/drag_handle.png
Binary files differ
diff --git a/res/drawable-mdpi/drag_background_holo.9.png b/res/drawable-mdpi/drag_background_holo.9.png
new file mode 100644
index 0000000..63a1f5a
--- /dev/null
+++ b/res/drawable-mdpi/drag_background_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/drag_handle.png b/res/drawable-mdpi/drag_handle.png
new file mode 100755
index 0000000..f7ed6df
--- /dev/null
+++ b/res/drawable-mdpi/drag_handle.png
Binary files differ
diff --git a/res/drawable/drag_background.xml b/res/drawable/drag_background.xml
new file mode 100644
index 0000000..6bd40fe
--- /dev/null
+++ b/res/drawable/drag_background.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2010 The Android Open Source Project
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+          http://www.apache.org/licenses/LICENSE-2.0
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+<!-- STOPSHIP Temporary UI -->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:state_activated="true"
+          android:drawable="@drawable/drag_background_holo" />
+    <item android:drawable="@drawable/drag_background_holo" />
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 7187e29..840dfbd 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -142,6 +142,13 @@
     <!-- Dialog text when we are unable to load the message for display -->
     <string name="error_loading_message_body">Unexpected error while loading message text.  Message
         may be too large to view.</string>
+    <!-- Text shown with dragged messages to indicate how many are being dragged -->
+    <plurals name="move_messages">
+        <item quantity="one">Move <xliff:g id="num_message" example="1">%1$d</xliff:g> message
+        </item>
+        <item quantity="other">Move <xliff:g id="num_message" example="3">%1$d</xliff:g> messages
+        </item>
+    </plurals>
     <!-- Notification message in notifications window when one account has
          one or more new messages; e.g, "279 unread (someone@google.com)". -->