Use correct config.smallestScreenWidthDp when creating Resource in DeviceProfile

- This is a regression from ag/17070486 when tested, likely because DeviceProfiles are no longer re-created when changing display sizes, so correct values need to be calculated on the starting state

Bug: 221961069
Test: verify smallestWidth specific resource on changing display sizes
Change-Id: I1539bad4b35b36f0056d59307ab5fbec23a71f49
This commit is contained in:
Alex Chau
2022-03-18 15:24:07 +00:00
parent 8233d92274
commit a6907dc8c9
2 changed files with 13 additions and 6 deletions

View File

@@ -345,16 +345,21 @@ public class DisplayController implements ComponentCallbacks, SafeCloseable {
* Returns {@code true} if the bounds represent a tablet.
*/
public boolean isTablet(WindowBounds bounds) {
return dpiFromPx(Math.min(bounds.bounds.width(), bounds.bounds.height()),
densityDpi) >= MIN_TABLET_WIDTH;
return smallestSizeDp(bounds) >= MIN_TABLET_WIDTH;
}
/**
* Returns {@code true} if the bounds represent a large tablet.
*/
public boolean isLargeTablet(WindowBounds bounds) {
return dpiFromPx(Math.min(bounds.bounds.width(), bounds.bounds.height()),
densityDpi) >= MIN_LARGE_TABLET_WIDTH;
return smallestSizeDp(bounds) >= MIN_LARGE_TABLET_WIDTH;
}
/**
* Returns smallest size in dp for given bounds.
*/
public float smallestSizeDp(WindowBounds bounds) {
return dpiFromPx(Math.min(bounds.bounds.width(), bounds.bounds.height()), densityDpi);
}
}