Fix crash when unfolding a device.

Fix a crash when unfolding a device with reference implementation.
There is a crash because we get a callback before changes propagate.

Bug: 218980376
Test: manual - open the fold samples with config changing app.
 fold and unfold the device.
Change-Id: I3c99058e47e29b18a30921bc23b14182e970ac65
This commit is contained in:
Diego Vela
2022-04-08 16:06:35 -07:00
parent dd7c5737a4
commit 9af4098658

View File

@@ -200,12 +200,23 @@ public class WindowLayoutComponentImpl implements WindowLayoutComponent {
rotateRectToDisplayRotation(displayId, featureRect);
transformToWindowSpaceRect(activity, featureRect);
features.add(new FoldingFeature(featureRect, baseFeature.getType(), state));
if (!isRectZero(featureRect)) {
// TODO(b/228641877) Remove guarding if when fixed.
features.add(new FoldingFeature(featureRect, baseFeature.getType(), state));
}
}
}
return features;
}
/**
* Returns {@link true} if a {@link Rect} has zero width and zero height,
* {@code false} otherwise.
*/
private boolean isRectZero(Rect rect) {
return rect.width() == 0 && rect.height() == 0;
}
private final class NotifyOnConfigurationChanged extends EmptyLifecycleCallbacksAdapter {
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {