Because we only "carve" out the area for the IME once it's actually
visible now, we need to relayout the windows when we show it - else
they won't update the insets until the next real layout happens.
Bug: 28175599
Change-Id: Ie0af1225da03905bfcb52044e212812c892c88a9
In assignAndIncreaseLayerIfNeeded we need to always
restack the special windows, even if we are stacking them
downwards, otherwise they could be left at too high of
a value from a previous pass. This check was added by
me originally, as a now revealed poorly thought out attempt
to avoid changing existing behavior too much.
Bug: 28139028
Change-Id: I305499e194f2c6bcf7a38c80af1e64bd1fc20943
Setting PARSE_IS_SYSTEM to the parse flags happens long after the
APK is actually parsed. So, we fail to pick up the boot aware and
protected storage attributes. Instead, always pull them from the
manifest, but, remove the flags if the package is not actually a
system package.
Also, we were incorrectly skipping certificate verification if
the flag PARSE_IS_SYSTEM was set. However, this flag is used for
_any_ system package -- whether it's physically on /system or if
it's an unbundled update. Instead, we should only skip this step
if the flag PARSE_IS_SYSTEM_DIR. We can implicitly trust any
APK actually stored in /system.
On a different note ... At some point, we will break apart the
parse flags into actual parse flags [i.e. those that change
physically parsing an APK] and policy flags [i.e. those that
change the interpretation of the APK contents].
Bug: 28116074
Bug: 28088617
Change-Id: I85246b0cb18fb5647df3618107910e288137fbc7
HdmiControlService manages listeners in listener record instances, and
remove them when binders become disconnected. However, if the listener
and its record are replaced due to new listener, the record for the new
listener should not be set as null by previous binder's disconnection
signal.
Bug: 28069465
Change-Id: I2984d8f93d6443048cf5d3f2988b3c6cf362f012
(cherry picked from commit f5c2a1f58dc95b9800ffb6ebf405c11acc6626b2)
This avoids making expensive netd calls while holding the mRulesLock
Doesn't fix the problem of turning on hotspot while WiFi was connected.
It is no longer blocked on isNetworkMetered() call though.
Partial fix for following bugs...
Bug: 27857665
Bug: 28201280
Change-Id: I62f3c0b0571292cc1e156b48ce3329def41cdd07
When quiet mode is disabled for a user and that user is not currently
decrypted, we show a confirm credentials screen to trigger decryption
of that user. Only if that was successful, do we actually disable quiet
mode.
Bug: 27764124
Change-Id: Ib1f649194d89e225dad62c14f3ddba1fa3d79da2
The JavaDoc for many of the requestNetwork and
[un]registerNetworkCallback APIs incorrectly mentions the
PendingIntent version of the APIs instead of the NetworkCallback
version.
Also fix a minor issue in the registerDefaultNetworkCallback
JavaDoc: the default network request is an implementation detail,
so don't mention it. Instead, talk about the "system default
network".
Change-Id: Id94d98261daa2bd768c10e033cb8092729b21c91
* changes:
Only set mResizedWhileNotDragResizing for base windows.
Fix Task dim with docked resize.
Correct window replacement string comparison.
Replace DimLayers with windows.
Prevent premature window replacement.
Correctly prevent entrance animation for replacing windows.
Replace secondary app windows across activity relaunch.
When blanking the screen, turn off VR mode if it's enabled, and when waking up
after the keyboard goes away, turn it on if the top activity has requested VR
mode.
Bug: 26751056
Change-Id: Ib57b1c59e083e3615a02408d922c8c7be645ce92
In the case where the input is a base codepoint + a variation selector,
the code currently checks hasVariationSelector and then does a layout,
checking for a single glyph. However, HarfBuzz in some cases will change
the VS into a space glyph, so hasGlyph will return false.
This patch makes hasGlyph rely entirely on the hasVariationSelector
method in the case of a base codepoint + a VS
Bug: 27531970
Bug: 28182689
Change-Id: Id190c427149213509f2d779ec1aa330feb4b62d8
Because the IME animates in with translucency there was a black hole
visible at the bottom. This CL puts the window into resizing mode,
waits until the change is commited, and then starts the animation
Bug: 28175599
Change-Id: Ib31c1e765639e5490208bccba77b25318ec8dc71
- Run a separate animation when we need to adjust for the IME. We
can't use the attached animation because the adjustment animation
needs to be longer than the IME animation.
- Also run an animation when IME is disappearing.
- Adjust IME exit animation to better match with adjustment exit
animation.
- Make sure to update adjust for IME when entry/exit animation of
IME is starting, to avoid flickers.
- Don't update the IME window in PhoneWindowManager for layout
until the animation has started. This lead to an issue where the
content inset was set too large too early.
Bug: 27154882
Bug: 28175599
Change-Id: I09a33413e307f84d6c3cf4ae928c280f7ad48348
If the process of an activity that is launching has another
non-stopped activity, the data is not that interesting,
so remove the logging in these cases.
Bug: 27295491
Change-Id: I65d4a0e01b1e634a589ce8ecbbab337f0e6497ca
We need to remember task which requested to be locked
because we can accidentally lock another task after
user interacts with pinning request dialog.
Bug: 27876860
Change-Id: Ie8e607df4380dd33ea9b3474afc247b02e31de07