appandflow / appandflow/react-native-safe-area-context

Solution to navigationbar/statusbar coverage and initialWindowMetrics

未关闭
#734 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
TypeScript
星标
2.8k
派生
258
平均合并
3 天 1 小时
30 天内合并 PR
2

描述

### Description

### Solution to many open issues with edge-to-edge mode compatibility of this library - this is more of a fix than an issue

I had this problem that my application drew over the navigation bar like many of the currently open issues.
The solution is to not use initialWindowMetrics.frame as it is incorrectly derived from Dimensions.get('window') (this might be a bug in Android API level 35+?)
**Instead utilize the correct initialWindowMetrics.insets.bottom and initialWindowMetrics.insets.top alongside Dimensions.get('screen') to calculate application window dimensions manually**

Example:
`const applicationWindowHeight = Dimensions.get('screen').height - initialWindowMetrics.insets.bottom - initialWindowMetrics.insets.top`

### Steps to reproduce

1. use initialWindowMetrics.frame
2. observe correctness in Android API 35 and less
3. observe incorrectness in Android API 35+

### Snack or a link to a repository

https://example.com

### Safe Area Context version

5.7.0

### React Native version

0.84.0

### Platforms

Android

### Architecture

Fabric (New Architecture)

### Build type

Release mode

### Device

Real device

### Device model

_No response_

### Acknowledgements

Yes

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。