Fix class cast exception in a11y service for widget resize action
Test: Enable talkback. Then navigate to a widget. Trigger talkback menu > actions > move. Able to move a widget without crash. Bug: 186999201 Change-Id: Ic6a66fefd643443e3d5a8839e6f2fe10c946dab2
This commit is contained in:
parent
e5bd97c5f8
commit
ac05cb1343
|
@ -32,6 +32,7 @@ import com.android.launcher3.R;
|
|||
import com.android.launcher3.Workspace;
|
||||
import com.android.launcher3.dragndrop.DragController.DragListener;
|
||||
import com.android.launcher3.dragndrop.DragOptions;
|
||||
import com.android.launcher3.dragndrop.DragView;
|
||||
import com.android.launcher3.folder.Folder;
|
||||
import com.android.launcher3.keyboard.KeyboardDragAndDropView;
|
||||
import com.android.launcher3.model.data.AppInfo;
|
||||
|
@ -290,7 +291,12 @@ public class LauncherAccessibilityDelegate extends AccessibilityDelegate impleme
|
|||
return actions;
|
||||
}
|
||||
|
||||
CellLayout layout = (CellLayout) host.getParent().getParent();
|
||||
CellLayout layout;
|
||||
if (host.getParent() instanceof DragView) {
|
||||
layout = (CellLayout) ((DragView) host.getParent()).getContentViewParent().getParent();
|
||||
} else {
|
||||
layout = (CellLayout) host.getParent().getParent();
|
||||
}
|
||||
if ((providerInfo.resizeMode & AppWidgetProviderInfo.RESIZE_HORIZONTAL) != 0) {
|
||||
if (layout.isRegionVacant(info.cellX + info.spanX, info.cellY, 1, info.spanY) ||
|
||||
layout.isRegionVacant(info.cellX - 1, info.cellY, 1, info.spanY)) {
|
||||
|
|
Loading…
Reference in New Issue