diff options
| -rw-r--r-- | api/current.txt | 1 | ||||
| -rw-r--r-- | core/java/android/view/WindowInsets.java | 16 |
2 files changed, 15 insertions, 2 deletions
diff --git a/api/current.txt b/api/current.txt index a82b8db7c816..9d909934ca9c 100644 --- a/api/current.txt +++ b/api/current.txt @@ -55488,6 +55488,7 @@ package android.view { method public boolean hasInsets(); method @Deprecated public boolean hasStableInsets(); method @Deprecated public boolean hasSystemWindowInsets(); + method @NonNull public android.view.WindowInsets inset(@NonNull android.graphics.Insets); method @NonNull public android.view.WindowInsets inset(@IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int); method public boolean isConsumed(); method public boolean isRound(); diff --git a/core/java/android/view/WindowInsets.java b/core/java/android/view/WindowInsets.java index 20fa5cab0464..fde184ccfb0e 100644 --- a/core/java/android/view/WindowInsets.java +++ b/core/java/android/view/WindowInsets.java @@ -858,11 +858,21 @@ public final class WindowInsets { /** * Returns a copy of this instance inset in the given directions. * + * This is intended for dispatching insets to areas of the window that are smaller than the + * current area. + * + * <p>Example: + * <pre> + * childView.dispatchApplyWindowInsets(insets.inset(childMargins)); + * </pre> + * + * @param insets the amount of insets to remove from all sides. + * * @see #inset(int, int, int, int) - * @hide */ @NonNull - public WindowInsets inset(Insets insets) { + public WindowInsets inset(@NonNull Insets insets) { + Objects.requireNonNull(insets); return inset(insets.left, insets.top, insets.right, insets.bottom); } @@ -884,6 +894,8 @@ public final class WindowInsets { * @param bottom the amount of insets to remove from the bottom. Must be non-negative. * * @return the inset insets + * + * @see #inset(Insets) */ @NonNull public WindowInsets inset(@IntRange(from = 0) int left, @IntRange(from = 0) int top, |