Fix bug in magnification coordinate calculation.
am: 87d96992ea
Change-Id: Ic7cd78477d023927fdc2664eedb881c9a5a7edf3
This commit is contained in:
@@ -3683,13 +3683,6 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
||||
Rect boundsInScreen = mTempRect;
|
||||
focus.getBoundsInScreen(boundsInScreen);
|
||||
|
||||
// Clip to the window bounds.
|
||||
Rect windowBounds = mTempRect1;
|
||||
getWindowBounds(focus.getWindowId(), windowBounds);
|
||||
if (!boundsInScreen.intersect(windowBounds)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Apply magnification if needed.
|
||||
MagnificationSpec spec = getCompatibleMagnificationSpecLocked(focus.getWindowId());
|
||||
if (spec != null && !spec.isNop()) {
|
||||
@@ -3697,6 +3690,13 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
||||
boundsInScreen.scale(1 / spec.scale);
|
||||
}
|
||||
|
||||
// Clip to the window bounds.
|
||||
Rect windowBounds = mTempRect1;
|
||||
getWindowBounds(focus.getWindowId(), windowBounds);
|
||||
if (!boundsInScreen.intersect(windowBounds)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Clip to the screen bounds.
|
||||
Point screenSize = mTempPoint;
|
||||
mDefaultDisplay.getRealSize(screenSize);
|
||||
|
||||
Reference in New Issue
Block a user