Merge "Also monitor MOVED_TO events for wallpaper updates" into lmp-dev
diff --git a/Android.mk b/Android.mk
index b323650..7fa0e87 100644
--- a/Android.mk
+++ b/Android.mk
@@ -631,6 +631,7 @@
     -since $(SRC_API_DIR)/18.txt 18 \
     -since $(SRC_API_DIR)/19.txt 19 \
     -since $(SRC_API_DIR)/20.txt 20 \
+    -since $(SRC_API_DIR)/21.txt 21 \
 		-werror -hide 111 -hide 113 \
 		-overview $(LOCAL_PATH)/core/java/overview.html
 
diff --git a/core/java/android/app/SearchManager.java b/core/java/android/app/SearchManager.java
index 261b15d..4c253f3 100644
--- a/core/java/android/app/SearchManager.java
+++ b/core/java/android/app/SearchManager.java
@@ -23,6 +23,7 @@
 import android.content.DialogInterface;
 import android.content.Intent;
 import android.content.pm.ResolveInfo;
+import android.content.res.Configuration;
 import android.database.Cursor;
 import android.graphics.Rect;
 import android.net.Uri;
@@ -624,9 +625,13 @@
             return;
         }
 
-        ensureSearchDialog();
+        UiModeManager uiModeManager = new UiModeManager();
+        // Don't show search dialog on televisions.
+        if (uiModeManager.getCurrentModeType() != Configuration.UI_MODE_TYPE_TELEVISION) {
+            ensureSearchDialog();
 
-        mSearchDialog.show(initialQuery, selectInitialQuery, launchActivity, appSearchData);
+            mSearchDialog.show(initialQuery, selectInitialQuery, launchActivity, appSearchData);
+        }
     }
 
     private void ensureSearchDialog() {
diff --git a/docs/html/sdk/index.jd b/docs/html/sdk/index.jd
index 9ed70ed..d91e7e8 100644
--- a/docs/html/sdk/index.jd
+++ b/docs/html/sdk/index.jd
@@ -308,7 +308,7 @@
   If you're a new Android developer, you should consider starting with Android Studio, because the
   ADT plugin for Eclipse is no longer in active development.</p>
   <p style="margin: 0;">
-  <a href="/sdk/installing/studio.html">Learn more about Android Studio</a></p>
+  <a href="/sdk/installing/studio.html" style="position:relative;z-index:99">Learn more about Android Studio</a></p>
   </div>
 
 
diff --git a/services/core/java/com/android/server/display/DisplayManagerService.java b/services/core/java/com/android/server/display/DisplayManagerService.java
index 97748e8..09dc477 100644
--- a/services/core/java/com/android/server/display/DisplayManagerService.java
+++ b/services/core/java/com/android/server/display/DisplayManagerService.java
@@ -651,7 +651,10 @@
 
         mDisplayDevices.add(device);
         addLogicalDisplayLocked(device);
-        updateDisplayStateLocked(device);
+        Runnable work = updateDisplayStateLocked(device);
+        if (work != null) {
+            work.run();
+        }
         scheduleTraversalLocked(false);
     }
 
diff --git a/telecomm/java/android/telecom/RemoteConnectionService.java b/telecomm/java/android/telecom/RemoteConnectionService.java
index de1dc17..af4ee22 100644
--- a/telecomm/java/android/telecom/RemoteConnectionService.java
+++ b/telecomm/java/android/telecom/RemoteConnectionService.java
@@ -365,7 +365,7 @@
     }
 
     private boolean hasConnection(String callId) {
-        return mConferenceById.containsKey(callId);
+        return mConnectionById.containsKey(callId);
     }
 
     private RemoteConnection findConnectionForAction(