diff options
-rw-r--r-- | core/java/android/widget/FastScroller.java | 5 | ||||
-rw-r--r-- | core/java/android/widget/TextView.java | 21 | ||||
-rw-r--r-- | services/jni/com_android_server_BatteryService.cpp | 2 |
3 files changed, 25 insertions, 3 deletions
diff --git a/core/java/android/widget/FastScroller.java b/core/java/android/widget/FastScroller.java index 54c4b36..aa68a74 100644 --- a/core/java/android/widget/FastScroller.java +++ b/core/java/android/widget/FastScroller.java @@ -154,6 +154,11 @@ class FastScroller { int textColorNormal = textColor.getDefaultColor(); mPaint.setColor(textColorNormal); mPaint.setStyle(Paint.Style.FILL_AND_STROKE); + + // to show mOverlayDrawable properly + if (mList.getWidth() > 0 && mList.getHeight() > 0) { + onSizeChanged(mList.getWidth(), mList.getHeight(), 0, 0); + } mState = STATE_NONE; } diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index e6ed70a..05db266 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -944,6 +944,22 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener setTypeface(tf, styleIndex); } + @Override + public void setEnabled(boolean enabled) { + if (enabled == isEnabled()) { + return; + } + + if (!enabled) { + // Hide the soft input if the currently active TextView is disabled + InputMethodManager imm = InputMethodManager.peekInstance(); + if (imm != null && imm.isActive(this)) { + imm.hideSoftInputFromWindow(getWindowToken(), 0); + } + } + super.setEnabled(enabled); + } + /** * Sets the typeface and style in which the text should be displayed, * and turns on the fake bold and italic bits in the Paint if the @@ -4436,7 +4452,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener } @Override public InputConnection onCreateInputConnection(EditorInfo outAttrs) { - if (onCheckIsTextEditor()) { + if (onCheckIsTextEditor() && isEnabled()) { if (mInputMethodState == null) { mInputMethodState = new InputMethodState(); } @@ -6575,7 +6591,8 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener return superResult; } - if ((mMovement != null || onCheckIsTextEditor()) && mText instanceof Spannable && mLayout != null) { + if ((mMovement != null || onCheckIsTextEditor()) && isEnabled() + && mText instanceof Spannable && mLayout != null) { boolean handled = false; diff --git a/services/jni/com_android_server_BatteryService.cpp b/services/jni/com_android_server_BatteryService.cpp index 397a84a..d4513e9 100644 --- a/services/jni/com_android_server_BatteryService.cpp +++ b/services/jni/com_android_server_BatteryService.cpp @@ -164,7 +164,7 @@ static void setBooleanField(JNIEnv* env, jobject obj, const char* path, jfieldID jboolean value = false; if (readFromFile(path, buf, SIZE) > 0) { - if (buf[0] == '1') { + if (buf[0] != '0') { value = true; } } |