History log of /frameworks/base/core/java/android/view/WindowInsets.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
e5638a6f75472127493422a68954aa3fd2109658 26-Mar-2016 Jorim Jaggi <jjaggi@google.com> Fix nav bar consuming

- Cache shouldAlwaysConsumeNavbar so it doesn't get reset when
insets == null
- Remove logic with frame comparison when determining whether to
consume nav bar. Not sure how that ever worked.
- Make sure shouldAlwaysConsumeNavBar survives when consuming
insets.

Bug: 27157904
Change-Id: I35f209ab27cc12240038da7efa9e79c95f70c6ce
/frameworks/base/core/java/android/view/WindowInsets.java
0ffd49cbe0ab4c13fd5528abacade898a8cff481 13-Feb-2016 Jorim Jaggi <jjaggi@google.com> Always consume bottom insets when navigation bar is force shown

When an app requests SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION but we
force show the navigation bar, we need to treat for the app like
there is no virtual navigation bar on the device. Because if you
combine it with FLAG_HIDE_NAVIGATION, you'd expect the navigation
bar gets hidden but it doesn't, so there could be content that
overlaps with the navigation bar.

Bug: 27157904
Change-Id: I088e02eae2e723c35e9cb4873de6b1325458533b
/frameworks/base/core/java/android/view/WindowInsets.java
05e967820dc71286b743294af0e80e2939ff9738 04-Jun-2015 Adam Powell <adamp@google.com> Make WindowInsets#hasInsets check for stable insets as well

Bug 20091509

Change-Id: Ia7dda5ab94a0904277c1078f3f73a59a735860d8
/frameworks/base/core/java/android/view/WindowInsets.java
39381948b9bb4c98434a32d6eef76b045bb22a78 16-Sep-2014 Adrian Roos <roosa@google.com> Fix broken dispatch of onApplyWindowInsets

Fixes an issue where window insets were not further dispatched
if all happen to be zero. To prevent further dispatch, the
insets must now be consumed explicitly.

Bug: 17522145
Change-Id: Ia8f6c10c8369b58db7a7cf49f8bcc2cab8e304f1
/frameworks/base/core/java/android/view/WindowInsets.java
d72068b38ec4e5732dde6093e39b2602babc27a3 12-Sep-2014 Adam Powell <adamp@google.com> Provide a public API for View#computeFitSystemWindows

The current hidden API is necessary to perform correct inset behavior
for support libraries like appcompat. Provide a public method
consistent with the new WindowInsets APIs.

Bug 17411097

Change-Id: I71a63eea0238b94cae6b5c6f1721d5567560ba81
/frameworks/base/core/java/android/view/WindowInsets.java
067e5f68b9216b233df1c6529db182ff9b2887ab 08-Sep-2014 Dianne Hackborn <hackbod@google.com> Add new wallpaper features for insets and offsets.

Issue #17394151: WallpaperService / Engines need to get notified
of WindowInsets

Issue #17394203 Wallpapers need a system API to be shifted in order
to support burn in protection

Adds a new API on WallpaperManager to set additional offsets to
make wallpapers extend beyond the display size.

Insets are now reported to wallpapers, to use as they may. This
includes information about the above offsets, so they can place
their content within the visible area. And to help with this, also
expose the stable offsets APIs in WindowInsets which is also very
useful information for the wallpaper.

Another new API on WallpaperManager to set a raw offset to apply
to the wallpaper window, forcing it to move on the screen regardless
of what the wallpaper is drawing.

Fix wallpapers when used with overscan enabled, so they still extend
out across the entire screen. Conveniently, the above new window
insets information is very useful for this case as well!

And a new wallpaper test app for all this stuff.

Change-Id: I287ee36581283dd34607609fcd3170d99d120d8e
/frameworks/base/core/java/android/view/WindowInsets.java
82a53881f1e0257f700bdca27216fc26d0c87b59 08-Aug-2014 Adam Powell <adamp@google.com> Un-hide WindowInsets#isConsumed

Bug 16874227

Change-Id: I8b6386b46e71a06890cda2d3d6d9278ab35fc700
/frameworks/base/core/java/android/view/WindowInsets.java
fa10423fa00f3495e451016acba9b6848eb995c9 21-Jun-2014 Adrian Roos <roosa@google.com> Add stable insets for stable system windows

Adds a new kind of inset that only accounts for stable system
windows like the system or navigation bar.

Bug: 15457292
Change-Id: I681b711f6f40a94c25b7acd3a44eb3539486afab
/frameworks/base/core/java/android/view/WindowInsets.java
85c262772de33a12a20bbcc11eb8349738e550d7 13-Jun-2014 Adam Powell <adamp@google.com> am d3b9bac6: Merge "Fix incorrect dispatch of empty WindowInsets from ActionBarOverlayLayout" into lmp-preview-dev

* commit 'd3b9bac6a96a065cd4058429569e0ed6ec4df032':
Fix incorrect dispatch of empty WindowInsets from ActionBarOverlayLayout
90132dd7ca8427af768c5167e5722cb611d95f7c 12-Jun-2014 Adam Powell <adamp@google.com> am c72a2a82: Merge "Explicitly track consumed state for WindowInsets" into lmp-preview-dev

* commit 'c72a2a82160099e8f20c42eb0d36881c31537130':
Explicitly track consumed state for WindowInsets
0d9fdbad751318b1e9a7a2789bf0e9240252e15f 12-Jun-2014 Adam Powell <adamp@google.com> Explicitly track consumed state for WindowInsets

Treating 0-insets as fully consumed is incorrect since it means that
you can't dispatch empty insets down the view hierarchy - traversal
terminates immediately. Track consumed state independent of actual
values. Replacing a given set of insets with all zeroes will mark it
consumed.

Bug 15341653

Change-Id: I55b33b7dfbf4cae1e906a82140537156cffdbf47
/frameworks/base/core/java/android/view/WindowInsets.java
720924b6a9770f03355999102a11d98c5954407c 12-Jun-2014 Adam Powell <adamp@google.com> Fix incorrect dispatch of empty WindowInsets from ActionBarOverlayLayout

Fix a bug where ActionBarOverlayLayout was using a private constructor
of WindowInsets to return empty insets that should have been marked
fully consumed. This caused dispatch to further child views not to
stop appropriately, corrupting application layout in some cases.

Bug 15588587

Change-Id: I97fcefa4755addf2385a7e7b0ffbf6d3e91adc5c
/frameworks/base/core/java/android/view/WindowInsets.java
eba8782a1f8412a3510fc78a71b843ef6e89bdbb 06-Jun-2014 Justin Koh <justinkoh@google.com> Add NPE check to getSystemWindowInsets

Bug: 15452706
Change-Id: Ica83593eadd0155e1370dba268a9f15ad0affa7d
/frameworks/base/core/java/android/view/WindowInsets.java
f4a3941ebe0dab5eeded96059a6a5f7c1d075e64 06-May-2014 Adam Powell <adamp@google.com> Clean up WindowInsets API for release

Hide window decor inset methods and rename the clone* methods to have
less baggage.

Bug 14566960

Change-Id: Ia06bb959fd77acd6ff69f337c3200047a529612a
/frameworks/base/core/java/android/view/WindowInsets.java
6642e51ac5d0351f02fc929817603d7371e08e10 17-Apr-2014 Michael Kolb <kolby@google.com> Populate isRound from config.xml to WindowInsets

Change-Id: I41b3aef1322a7cdccdcbc679eb753e0a1e561fad
/frameworks/base/core/java/android/view/WindowInsets.java
973ddaacaef255b8659d35cfe4151dd5b7436138 16-Apr-2014 Adam Powell <adamp@google.com> DO NOT MERGE Add isRound to WindowInsets

isRound allows a view to determine whether the window it is contained
within obscures the corners of the window content. This allows views
aware of this property to adapt their layout accordingly.

Switch ViewRootImpl to use dispatchApplyInsets instead of
fitSystemWindows.

Change-Id: Ic3e3936b73815b2593cb9720af1a309fbd18406e

Conflicts:
core/java/android/view/ViewRootImpl.java
/frameworks/base/core/java/android/view/WindowInsets.java
50d7bfd8224f9da170dac668888bcf0831373051 03-Feb-2014 Adam Powell <adamp@google.com> DO NOT MERGE Refactoring of fitSystemWindows to applyWindowInsets for views

Applying insets is now handled by:

* WindowInsets class - Encapsulate system insets and local decor
insets into a single object, written specifically so that new inset
categories may be added later. Apps cannot construct their own
WindowInsets, only clone with optional modifications. This is to
prevent losing data in the event of new insets added in the future.

* onApplyWindowInsets - Actually perform the application of insets.

* OnApplyWindowInsetsListener - Allow an app to use a separate
Listener object to apply insets to a View. This allows for things
like support lib integration in custom views written for older
versions where the verifier would otherwise complain about the use
of the new WindowInsets class as a method parameter. It also allows
for applying insets in a custom way without writing a custom view.

* dispatchApplyWindowInsets - Dispatch the call to self and children
in turn, if applicable. An OnApplyWindowInsetsListener will override
the behavior of the view's default onApplyWindowInsets method; a
listener wishing to call down to the 'superclass' implementation as
part of its own operation should call view.onApplyWindowInsets. App
code should generally not override this method and instead override
onApplyWindowInsets or provide a listener.

Compatibility support with the existing fitSystemWindows method has
been provided in both directions: for code that previously called
fitSystemWindows on arbitrary views and also for code that overrode
the fitSystemWindows method in custom views. A view that supports the
newer onApplyWindowInsets mechanism should not mix that behavior with
other calls to fitSystemWindows or vice versa. Support lib-style code
should take care to consistently use one mechanism or the other at
runtime.

Change-Id: Ie88b96e0382beb5d3c3f6cd013f7043acbc0a105
/frameworks/base/core/java/android/view/WindowInsets.java