Search in sources :

Example 1 with Insets

use of androidx.core.graphics.Insets in project react-native-navigation by wix.

the class ComponentViewController method onApplyWindowInsets.

@Override
protected WindowInsetsCompat onApplyWindowInsets(View view, WindowInsetsCompat insets) {
    final Insets systemBarsInsets = insets.getInsets(WindowInsetsCompat.Type.systemBars());
    int systemWindowInsetTop = insets.getInsets(WindowInsetsCompat.Type.statusBars()).top + insets.getInsets(WindowInsetsCompat.Type.navigationBars()).top - systemBarsInsets.top;
    int systemWindowInsetBottom = insets.getInsets(WindowInsetsCompat.Type.ime()).bottom + insets.getInsets(WindowInsetsCompat.Type.navigationBars()).bottom - systemBarsInsets.bottom;
    WindowInsetsCompat finalInsets = new WindowInsetsCompat.Builder().setInsets(WindowInsetsCompat.Type.systemBars() | WindowInsetsCompat.Type.ime(), Insets.of(systemBarsInsets.left, systemWindowInsetTop, systemBarsInsets.right, Math.max(systemWindowInsetBottom - getBottomInset(), 0))).build();
    ViewCompat.onApplyWindowInsets(view, finalInsets);
    return insets;
}
Also used : WindowInsetsCompat(androidx.core.view.WindowInsetsCompat) Insets(androidx.core.graphics.Insets)

Aggregations

Insets (androidx.core.graphics.Insets)1 WindowInsetsCompat (androidx.core.view.WindowInsetsCompat)1