Merge "Explode WindowManagerService."
diff --git a/api/current.xml b/api/current.xml
index 553676c..4e45471 100644
--- a/api/current.xml
+++ b/api/current.xml
@@ -119000,6 +119000,17 @@
visibility="public"
>
</method>
+<method name="getAuthUserName"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</method>
<method name="getAutoRegistration"
return="boolean"
abstract="false"
@@ -119202,6 +119213,19 @@
visibility="public"
>
</method>
+<method name="setAuthUserName"
+ return="android.net.sip.SipProfile.Builder"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>
+<parameter name="name" type="java.lang.String">
+</parameter>
+</method>
<method name="setAutoRegistration"
return="android.net.sip.SipProfile.Builder"
abstract="false"
diff --git a/core/java/android/webkit/ZoomManager.java b/core/java/android/webkit/ZoomManager.java
index 9d472e0..d7a6a53 100644
--- a/core/java/android/webkit/ZoomManager.java
+++ b/core/java/android/webkit/ZoomManager.java
@@ -361,6 +361,7 @@
// returns TRUE if zoom out succeeds and FALSE if no zoom changes.
private boolean zoom(float zoomMultiplier) {
+ mInitialZoomOverview = false;
// TODO: alternatively we can disallow this during draw history mode
mWebView.switchOutDrawHistory();
// Center zooming to the center of the screen.
@@ -378,6 +379,7 @@
* @return true if the new scale triggered an animation and false otherwise.
*/
public boolean startZoomAnimation(float scale, boolean reflowText) {
+ mInitialZoomOverview = false;
float oldScale = mActualScale;
mInitialScrollX = mWebView.getScrollX();
mInitialScrollY = mWebView.getScrollY();
@@ -421,6 +423,7 @@
* in progress by calling isFixedLengthAnimationInProgress().
*/
public void animateZoom(Canvas canvas) {
+ mInitialZoomOverview = false;
if (mZoomScale == 0) {
Log.w(LOGTAG, "A WebView is attempting to perform a fixed length "
+ "zoom animation when no zoom is in progress");
@@ -568,6 +571,8 @@
* C. If the page is in overmode then change to the default scale.
*/
public void handleDoubleTap(float lastTouchX, float lastTouchY) {
+ // User takes action, set initial zoom overview to false.
+ mInitialZoomOverview = false;
WebSettings settings = mWebView.getSettings();
if (!isDoubleTapEnabled()) {
return;
@@ -706,6 +711,7 @@
private class ScaleDetectorListener implements ScaleGestureDetector.OnScaleGestureListener {
public boolean onScaleBegin(ScaleGestureDetector detector) {
+ mInitialZoomOverview = false;
dismissZoomPicker();
mWebView.mViewManager.startZoom();
mWebView.onPinchToZoomAnimationStart();
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
index 993af31..d90d5be 100644
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -4403,12 +4403,8 @@
(mCurrentAlpha * Color.alpha(cursorcolor)) / 255);
}
mHighlightPaint.setStyle(Paint.Style.STROKE);
-
- if (mCursorCount > 0) {
- drawCursor = true;
- } else {
- highlight = mHighlightPath;
- }
+ highlight = mHighlightPath;
+ drawCursor = true;
}
} else {
if (mHighlightPathBogus) {
@@ -4491,7 +4487,12 @@
mCorrectionHighlighter.draw(canvas, cursorOffsetVertical);
}
- if (drawCursor) drawCursor(canvas, cursorOffsetVertical);
+ if (drawCursor) {
+ drawCursor(canvas, cursorOffsetVertical);
+ // Rely on the drawable entirely, do not draw the cursor line.
+ // Has to be done after the IMM related code above which relies on the highlight.
+ highlight = null;
+ }
layout.draw(canvas, highlight, mHighlightPaint, cursorOffsetVertical);
diff --git a/core/tests/coretests/src/android/database/sqlite/SQLiteCursorTest.java b/core/tests/coretests/src/android/database/sqlite/SQLiteCursorTest.java
index 963c8ed..f6b1d04 100644
--- a/core/tests/coretests/src/android/database/sqlite/SQLiteCursorTest.java
+++ b/core/tests/coretests/src/android/database/sqlite/SQLiteCursorTest.java
@@ -22,7 +22,6 @@
import android.test.AndroidTestCase;
import android.test.suitebuilder.annotation.LargeTest;
import android.test.suitebuilder.annotation.SmallTest;
-import android.test.suitebuilder.annotation.Suppress;
import android.util.Log;
import java.io.File;
@@ -55,7 +54,6 @@
super.tearDown();
}
- @Suppress
@SmallTest
public void testQueryObjReassignment() {
mDatabase.enableWriteAheadLogging();
diff --git a/core/tests/coretests/src/android/database/sqlite/SQLiteDatabaseTest.java b/core/tests/coretests/src/android/database/sqlite/SQLiteDatabaseTest.java
index 4516510..39258ae 100644
--- a/core/tests/coretests/src/android/database/sqlite/SQLiteDatabaseTest.java
+++ b/core/tests/coretests/src/android/database/sqlite/SQLiteDatabaseTest.java
@@ -74,7 +74,6 @@
mDatabase.setVersion(CURRENT_DATABASE_VERSION);
}
- @Suppress
@SmallTest
public void testEnableWriteAheadLogging() {
mDatabase.disableWriteAheadLogging();
@@ -87,7 +86,6 @@
assertEquals(pool, mDatabase.mConnectionPool);
}
- @Suppress
@SmallTest
public void testDisableWriteAheadLogging() {
mDatabase.execSQL("create table test (i int);");
@@ -104,7 +102,6 @@
assertFalse(db.isOpen());
}
- @Suppress
@SmallTest
public void testCursorsWithClosedDbConnAfterDisableWriteAheadLogging() {
mDatabase.disableWriteAheadLogging();
@@ -141,7 +138,6 @@
/**
* a transaction should be started before a standalone-update/insert/delete statement
*/
- @Suppress
@SmallTest
public void testStartXactBeforeUpdateSql() throws InterruptedException {
runTestForStartXactBeforeUpdateSql(INSERT);
@@ -753,7 +749,6 @@
*
* @throws InterruptedException
*/
- @Suppress
@SmallTest
public void testTransactionAndWalInterplay1() throws InterruptedException {
createTableAndClearCache();
@@ -812,7 +807,6 @@
* instead of mDatabase.beginTransactionNonExclusive(), use execSQL("BEGIN transaction")
* and instead of mDatabase.endTransaction(), use execSQL("END");
*/
- @Suppress
@SmallTest
public void testTransactionAndWalInterplay2() throws InterruptedException {
createTableAndClearCache();
@@ -869,7 +863,6 @@
* instead of committing the data, do rollback and make sure the data seen by the query
* within the transaction is now gone.
*/
- @Suppress
@SmallTest
public void testTransactionAndWalInterplay3() {
createTableAndClearCache();
diff --git a/voip/java/android/net/sip/SipProfile.java b/voip/java/android/net/sip/SipProfile.java
index c7e18df..34d91dd 100644
--- a/voip/java/android/net/sip/SipProfile.java
+++ b/voip/java/android/net/sip/SipProfile.java
@@ -150,9 +150,8 @@
/**
* Sets the username used for authentication.
*
- * @param name auth. name of the profile
+ * @param name authentication username of the profile
* @return this builder object
- * @hide // TODO: remove when we make it public
*/
public Builder setAuthUserName(String name) {
mProfile.mAuthUserName = name;
@@ -391,10 +390,10 @@
/**
* Gets the username for authentication. If it is null, then the username
- * should be used in authentication instead.
+ * is used in authentication instead.
*
- * @return the auth. username
- * @hide // TODO: remove when we make it public
+ * @return the authentication username
+ * @see #getUserName
*/
public String getAuthUserName() {
return mAuthUserName;