...android.view.ViewGroup.measureChildWithMargins
The app is doing grungy stuff with trying to insert its own
views inside the window decor. This new custom layout of the
action bar was assuming it would get fitSystemWindows() called
at which point it would retrieve all of its child views... but
with the app doing this, it blocks the call down to
fitSystemWindows() and breaks us. So we now make the layout
manager more robust and ensure it has retrieved its children
when measuring.
Also fix an issue where the xlarge layouts were not updated.
Change-Id: I6c69f26f26b59a6aa8fa1e5788288ffce0b490ca
API and preliminary implementation for sharing primary user accounts with a secondary user.
AbstractAccountAuthenticator has new methods to retrieve and apply a bundle of credentials
to clone an account from the primary to a restricted secondary user. The AccountManagerService
initiates the account clone when it starts up the user and detects that the user has
a shared account registered that hasn't been converted to a real account.
AccountManager also has new hidden APIs to add/remove/get shared accounts. There might be
further improvements to this API to make shared accounts hidden/visible to select apps.
AccountManagerService has a new table to store the shared account information.
Added ability in PackageManager to install and uninstall packages for a secondary user. This
is required when the primary user selects a few apps to share with a restricted user.
Remove shared accounts from secondary users when primary user removes the account.
Change-Id: I9378ed0d8c1cc66baf150a4bec0ede56f6f8b06b
Recent TTS change altered how the TextToSpeech.synthesizeToFile method
operates. Previously, synthesis service was responsible for creating
output file. Now, client API creates a file and then sends opened file
descriptor using ParcelFileDescriptor.
On service side, I forgot to keep a reference to a ParcelFileDescriptor object.
When GC was removing it, it was closing underlying file descriptor, resulting
in a EBADF error for all following writes to the output file.
This change makes use of a ParcelFileDescriptor.AutoCloseOutputStream to keep a
reference to the ParcelFileDescriptor. It will be referenced until we are done
with writing.
Change-Id: I8327af0eaeabaebfbbd8816d959783e89086a7c5
- instead of passing the screen size as a constant for computing the
layout size in RTL mode, we just use a real constant. Any value would
work actually, as soon as the value would not be null.
Change-Id: If9f5b38afa88938db36a795bfc8a403ad660726b
This is a class representing a window and providing limited
interaction with it, which can be handed across processes.
Change-Id: I22885f2064a9cc8c68d690a5858c2e28bbb6a0f3
Currently, audio will resume playing after a phone call
or notification even if the user had manually paused playback.
This patch addresses that by introducing a new player state
to distinguish the user pausing playback and the browser
losing audio focus for some other reason. Audio will only
resume if the browser temporarily lost audio focus and
not when the user has manually paused playback.
Change-Id: I9e8beaedb0fcc5afe920068297ed9c387eab2ac8
Signed-off-by: Roger Chen <cxr514033970@gmail.com>
The problem is that there are other configurations that the
action bar can be in that ActionBarOverlayLayout didn't account
for -- such as here, the nav part visible but the rest hidden.
Fixing this was non-trivial because it means that to correctly
implement fitSystemWindows() we need to in these cases take the
actual measured height of the action bar for positioning the
content view... but that is not yet available, since
fitSystemWindows() must run before layout.
To solve this, ActionBarOverlayLayout now inherits directly from
ViewGroup and implements its own custom layout. In its measure
pass it does all of the fitSystemWindows() work that is dependent
on the measured sizes of the action bar child views after those
are measured and applies them to the content view before it is
measured.
Change-Id: Ie327075d502e9c348aa80b0968c6b0403478301e
A Surface can trivially be created from a SurfaceTexture.
Update ElectronBeam to use this new API.
Bug: 6940974
Change-Id: I20459443d0d853e3f8ae23104c08d185c336abea
Removing view groups during a drag would cause an NPE here. The
child views will still get the drag-ended event as expected.
(Cherrypicked from downstream)
Bug 8298439
Change-Id: Ic14cbf9fdc305b91c1627f6882a45d34ee1c34ae