fix safe area calculations with flat action bar

This commit is contained in:
Martin Yankov
2018-09-20 10:51:58 +03:00
parent c3b864c26e
commit a6a97ab3f7
3 changed files with 26 additions and 80 deletions

View File

@@ -780,12 +780,12 @@ export namespace ios {
adjustedPosition.top = fullscreenPosition.top;
}
if (inWindowRight < fullscreenPosition.right && inWindowRight >= safeAreaPosition.right) {
adjustedPosition.right = fullscreenPosition.right;
if (inWindowRight < fullscreenPosition.right && inWindowRight >= safeAreaPosition.right + fullscreenPosition.left) {
adjustedPosition.right = fullscreenPosition.right - fullscreenPosition.left;
}
if (inWindowBottom < fullscreenPosition.bottom && inWindowBottom >= safeAreaPosition.bottom) {
adjustedPosition.bottom = fullscreenPosition.bottom;
if (inWindowBottom < fullscreenPosition.bottom && inWindowBottom >= safeAreaPosition.bottom + fullscreenPosition.top) {
adjustedPosition.bottom = fullscreenPosition.bottom - fullscreenPosition.top;
}
const adjustedFrame = CGRectMake(layout.toDeviceIndependentPixels(adjustedPosition.left), layout.toDeviceIndependentPixels(adjustedPosition.top), layout.toDeviceIndependentPixels(adjustedPosition.right - adjustedPosition.left), layout.toDeviceIndependentPixels(adjustedPosition.bottom - adjustedPosition.top));