am cab5b8a9: Merge "Nodes with contentDescription should always be important for accessibility." into jb-dev

* commit 'cab5b8a91d6fbcbb694284038f5529ff02f10f78':
  Nodes with contentDescription should always be important for accessibility.
This commit is contained in:
Svetoslav Ganov
2012-06-05 15:57:25 -07:00
committed by Android Git Automerger
2 changed files with 10 additions and 2 deletions

View File

@ -3457,7 +3457,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal
}
break;
case com.android.internal.R.styleable.View_contentDescription:
mContentDescription = a.getString(attr);
setContentDescription(a.getString(attr));
break;
case com.android.internal.R.styleable.View_soundEffectsEnabled:
if (!a.getBoolean(attr, true)) {
@ -5048,6 +5048,10 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal
@RemotableViewMethod
public void setContentDescription(CharSequence contentDescription) {
mContentDescription = contentDescription;
final boolean nonEmptyDesc = contentDescription != null && contentDescription.length() > 0;
if (nonEmptyDesc && getImportantForAccessibility() == IMPORTANT_FOR_ACCESSIBILITY_AUTO) {
setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_YES);
}
}
/**

View File

@ -100,6 +100,9 @@ public class TouchExplorer {
// Temporary array for storing pointer IDs.
private final int[] mTempPointerIds = new int[MAX_POINTER_COUNT];
// Timeout before trying to decide what the user is trying to do.
private final int mDetermineUserIntentTimeout;
// Timeout within which we try to detect a tap.
private final int mTapTimeout;
@ -199,6 +202,7 @@ public class TouchExplorer {
mInjectedPointerTracker = new InjectedPointerTracker();
mInputFilter = inputFilter;
mTapTimeout = ViewConfiguration.getTapTimeout();
mDetermineUserIntentTimeout = (int) (mTapTimeout * 1.5f);
mDoubleTapTimeout = ViewConfiguration.getDoubleTapTimeout();
mTouchSlop = ViewConfiguration.get(context).getScaledTouchSlop();
mDoubleTapSlop = ViewConfiguration.get(context).getScaledDoubleTapSlop();
@ -1332,7 +1336,7 @@ public class TouchExplorer {
mPrototype = MotionEvent.obtain(prototype);
mPointerIdBits = pointerIdBits;
mPolicyFlags = policyFlags;
mHandler.postDelayed(this, mTapTimeout);
mHandler.postDelayed(this, mDetermineUserIntentTimeout);
}
public float getX() {