Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9dc2cc53 authored by Svetoslav Ganov's avatar Svetoslav Ganov Committed by Android (Google) Code Review
Browse files

Merge "AccessibilityNodeInfo bounds in screen incorrect if application scale not one."

parents bcda64bf 983119ab
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -4697,10 +4697,14 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
     */
    void onInitializeAccessibilityNodeInfoInternal(AccessibilityNodeInfo info) {
        Rect bounds = mAttachInfo.mTmpInvalRect;
        final float applicationScale = mAttachInfo.mApplicationScale;
        getDrawingRect(bounds);
        bounds.scale(applicationScale);
        info.setBoundsInParent(bounds);
        getBoundsOnScreen(bounds);
        bounds.scale(applicationScale);
        info.setBoundsInScreen(bounds);
        ViewParent parent = getParentForAccessibility();
+8 −0
Original line number Diff line number Diff line
@@ -2421,14 +2421,22 @@ public class NumberPicker extends LinearLayout {
            info.setParent((View) getParentForAccessibility());
            info.setEnabled(NumberPicker.this.isEnabled());
            info.setScrollable(true);

            final float applicationScale =
                getContext().getResources().getCompatibilityInfo().applicationScale;

            Rect boundsInParent = mTempRect;
            boundsInParent.set(left, top, right, bottom);
            boundsInParent.scale(applicationScale);
            info.setBoundsInParent(boundsInParent);

            info.setVisibleToUser(isVisibleToUser());

            Rect boundsInScreen = boundsInParent;
            int[] locationOnScreen = mTempArray;
            getLocationOnScreen(locationOnScreen);
            boundsInScreen.offset(locationOnScreen[0], locationOnScreen[1]);
            boundsInScreen.scale(applicationScale);
            info.setBoundsInScreen(boundsInScreen);

            if (mAccessibilityFocusedView != View.NO_ID) {