If a style doesn't specify text style (normal/bold/italic/bold-italic)
then default to normal instead of throwing an error.
Bug: http://b.android.com/61358
Change-Id: I0138c73807a5ff6e4d938a99ece3044333110aa1
(cherry-picked from bcbeaf83ca)
For these font families, text was always rendered as italic. This
changeset fixes the issue.
Bug: http://b.android.com/57221
Change-Id: Ic8a299bd1e555f5bb914cd3d2fe72917ec7f471a
(cherry-picked from 5be65fda15)
The nine patches were not drawn correctly if they were not positioned at
the top left corner of the canvas.
Bug: http://b.android.com/29959
Change-Id: Icfed522ea07322a3ee9f3955067d3da26c4b0b5b
(cherry-picked from 5bb3414d14)
The height of a layout should be zero if it is assigned a layout_weight.
This way, the layout is measured only once and prevents spurious errors.
Bug: https://code.google.com/p/android/issues/detail?id=58398
Change-Id: If49a7480e5eb82cb86780e00f2f5b65ee053fc2a
(cherry-picked from 5712b5fc3f)
The density multiplier was being applied twice to the title text in
the fake action bar.
Bug: 11436018
Change-Id: Id74c11037cb43d01f6cd79126623c84edfc37aaf
(cherry-picked from 083d1562e0)
Do not add the non-standard Java classes. Updates the references to all
non-standard classes to new classes in
com.android.tools.layoulib.create package. This also treats
java.lang.AutoCloseable which is part of Java 7 similarly so that we can
still run on Java 6.
This also adapts the cherrypick for this branch by updating references
to the non-standard Java classes present in this branch. This also
includes the following change that includes some changes that the
original cherrypick missed.
Change-Id: I76c87c74ee088778b37d1a7a7d531e0fde5c758f
commit: 1ed75bde09
Change-Id: Iac5b272652e2780c9bb72d19f415d150948ca589
(cherry picked from 80c668f2a0)
Fix a NPE.
The cherry-pick differs slightly from the original to remove changes not
relevant to the current branch.
Bug: 11140701
Change-Id: Id92fc5359acf6dde1bcdbc781aaf637fdb6eecbf
(cherry-picked from 87be67f917)
Update the configuration with the device orientation before rendering.
Change-Id: Icd40901204fd13f90b18353e53a15e25e5b2176c
(cherry picked from commit d4875e19f5)
Because passing an InputStream to KXML does not close the
stream after the file has been parsed, the files are staying
locked on windows until the gc and finalizers are run.
This change preload the XML files and close their stream,
and then pass the content in a stream to the parser.
(cherry picked from commit c48b0b940d)
Change-Id: I1b225454c166026c1aab6290c55ac8279e8862d5
Status bar displayed on all devices.
Update logic for displaying nav bar to whether or not
device has soft button.
Update navigation buttons to new look.
Remove battery and signal from navigation bar.
(cherry picked from commit 891b703f7b)
Change-Id: Id7cc9ad4255d2c4d2e6461a565dfe2cc17e12e75
The android version depends on a custom version of LinkedHashMap
which is not present on desktop VMs. This new implementation is done
in a way that minimizes the difference between the two.
Also some minor fixes.
(cherry picked from commit 01b6c755db)
Change-Id: Idc7bca820e472e281a3024a5b610fd55606cf428
Usage: layoutlib_create --list-deps /path/to/layoutlib.jar
Prints:
- all classes found in the Jar and the types they use (the dependencies).
- all the dependencies missing from the Jar and what uses them.
Change-Id: I8b2674df127e1494feed7a653282e88e4d2f5494
...content provider and updating its oom adj
This introduces the concept of an "unstable" reference on a content
provider. When holding such a reference (and no normal stable ref),
the content provider dying will not cause the client process to be
killed.
This is used in ContentResolver.query(), .openAssetFileDescriptor(),
and .openTypedAssetFileDescriptor() to first access the provider
with an unstable reference, and if at the point of calling into the
provider we find it is dead then acquiring a new stable reference
and doing the operation again. Thus if the provider process dies
at any point until we get the result back, our own process will not
be killed and we can safely retry the operation.
Arguably there is still the potential for a race -- if somehow the
provider is killed way late by the OOM killer after the query or
open has returned -- but this should now be *extremely* unlikely.
We also continue to have the issue with the other calls, but these
are much less critical, and the same model can't be used there (we
wouldn't want to execute two insert operations for example).
The implementation of this required some significant changes to the
underlying plumbing of content providers, now keeping track of the
two different reference counts, and managing them appropriately. To
facilitate this, the activity manager now has a formal connection
object for a client reference on a content provider, which hands to
the application when opening the provider.
These changes have allowed a lot of the code to be cleaned up and
subtle issues closed. For example, when a process is crashing, we
now have a much better idea of the state of content provider clients
(olding a stable ref, unstable ref, or waiting for it to launch), so
that we can correctly handle each of these.
The client side code is also a fair amount cleaner, though in the
future there is more than should be done. In particular, the two
ProviderClientRecord and ProviderRefCount classes should be combined
into one, part of which is exposed to the ContentResolver internal
API as a reference on a content provider with methods for updating
reference counts and such. Some day we'll do that.
Change-Id: I87b10d1b67573ab899e09ca428f1b556fd669c8c
The window manager now performs the crop internally, evaluating
it every animation from, to be able to update it along with
the surface position.
Change-Id: I960a2161b9defb6fba4840fa35aee4e411c39b32
- Fading out recents first, then scaling up app
thumbnail
- Fade Recents out over 130ms
- Delay the window animation for 200ms first,
then animate for 200ms (previously we didn't delay
and then animated for 300ms)
Bug: 6390075
Change-Id: Ia8c753bf7ee03d2acef6eb2772b28d88fe10a682