History log of /frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
febc4591c06cc8a90a844aaf1be9718299d53d43 30-Apr-2018 Tyler Gunn <tgunn@google.com> Implement sendBroadcastAsUserMultiplePermissions in BridgeContext.

sendBroadcastAsUserMultiplePermissions was added to Context.java.
Implementing in BridgeContext.

Test: Compile / build (actual usage is documented in other bugs)
Bug: 78650469
Change-Id: I8715b6fce7039268eb29914cb15f68ab922f4d3f
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
6041cf289315147ce1e4c983454eb5af49e89409 15-Feb-2018 Diego Perez <diegoperez@google.com> Remove error when defStyleAttr does not exist

Since it's not really an error condition. Also fix a test dispose.

Test: N/A
Change-Id: I9484233ce50975ea6eda5c7e480c727c1d6bb19a
(cherry picked from commit 52feaa430b24eb11d7a4b6c9283e9f137e302d98)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
a4ac68349e730d5517187ea780b0284c7e383130 14-Feb-2018 Diego Perez <diegoperez@google.com> When defStyleAttr == 0 do not report missing style

If we pass the default value to defStyleAttr but we do pass a value to
defStyleRes do not report it as a warning.

Test: Added new test
Change-Id: Ie1cbe9803bd500953b454f408b39636b0c02eeb7
(cherry picked from commit aa8025d3bfe541dfc633bd001724140f8def8f25)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
0358a99f349e418142779f328a3136b1f5f1565e 29-Jan-2018 Michal Bendowski <bendowski@google.com> Layoulib updates for new prebuilts

Test: N/A
Change-Id: I9f8731e087aa931a7d0bec28125c8f66c7530118
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
767052452e64bd6979c0b177c08312d8eb43e38f 29-Jan-2018 Diego Perez <diegoperez@google.com> Fix defStyleRes fallback in obtainStyledAttributes

Existing code was not correctly retrieving the given defStyleRes style
if the lookup of defStyleAttr was failing. This would break the
rendering of components that do not define their styles in the current
theme.

Bug: 72598797
Test: Added regression test
Change-Id: I0c3535e7a0fd549a09d61dfba3d8e2393ed8ec4c
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
dc3d0176993003aa949f0baf61327f1096f453d8 03-Oct-2017 Diego Perez <diegoperez@google.com> Fix ContextThemeWrapper

Removing the overriden implementations of obtainStyledAttributes in
Context to allow the chance of a modified Theme to be applied by the
original version. Now, internalObtainStyledAttributes will be called
from the Theme after the correct Theme has been set.
Updated the test app to be able to add a new test.

Test: New ContextThemeWrapper test in RenderTests
Change-Id: I0c05b0afe6a48c9634864814715912416c96db6a
Fixes: 66902070
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ab93443117844cf490af35be356fa478ceeb3746 18-Sep-2017 Diego Perez <diegoperez@google.com> Add textClassifier case in getSystemService

AppCompat asks in some cases for it. Returning null is a valid case so
we just want to avoid the assertion.
Also, change all the ifs into a more compact case statement.

Test: Existing tests should pass
Change-Id: I81b586db296f2b4382086f5c6751d6ee195d7a71
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
b75a80419e56193c0e8a5a75301ef6c461964ed4 26-Jun-2017 Jerome Gaillard <jgaillard@google.com> Allow layoutlib to load custom fonts

The ability to load custom fonts was restricted in Change Iac2a6fb3.

Test: RenderTests.testFonts
Change-Id: I7d7be91af9285661afe41d557fa10a0036f787b7
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
d5c220b9577b09848ed18412bc65e8272e6efb61 22-Jun-2017 Seigo Nonaka <nona@google.com> Implement canLoadUnsafeResources added in frameworks/base

Bug: N/A
Test: m checkbuild
Change-Id: Iac2a6fb3d82ef23d5ca6ee33f4aaa9ed28455271
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ed15a15a31489930f212ac27b81127f6b729af95 19-May-2017 Christopher Tate <ctate@google.com> Track framework change in Context w.r.t. shared prefs restore

Bug 12061817
Test: cts-tradefed run cts -m CtsBackupHostTestCases

Change-Id: Ic3acb400aed41edceb4d1f62cd63d9c4b3db8b91
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ac6b06ff015ab321b726c5fa990ce368c8fbf399 18-May-2017 Charlie Tsai <chartsai@google.com> Merge "Support reference type for BridgeTypedArray.getValue()"
bc876628ee6b96164b91908ff62fcaefe930f403 18-May-2017 Charlie Tsai <chartsai@google.com> Support reference type for BridgeTypedArray.getValue()

Test: N/A (indirectly tested by rendering tests)
Change-Id: I7f90b080afe10f41ce695276f37dc8e298132dcd
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
03faa7e778e24fbc3de3ec1212e265c2d04a8f47 18-May-2017 Diego Perez <diegoperez@google.com> Remove field injection

Refactoring Resources to remove the field injection. This is needed to
be able to move the existing code to ResourcesImpl.
In the process, add relevant Nullable annotations and checks.

Test: Existing tests pass
Change-Id: Ibd3fe021ee0f7c9de01a79240581a410dfff681a
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
f29d1288bb4b3c339900cbe0318d975f461b4de1 18-Apr-2017 Chad Brubaker <cbrubaker@google.com> Address API review comments for registerReceiver

Bug: 37465538
Test: manual; Verified that Instant Apps can send broadcasts to
receivers still via the changed API.

Change-Id: Ib0f3d0c8ee71234288ccecd07e621554eb9b70ac
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
83d5eb6020ab5c8977aa7e60421bf616b9cf60a2 15-Apr-2017 Christopher Tate <ctate@google.com> Turn down the preliminary foreground service API

The NotificationManager.startServiceInForeground() experiment is over,
and will not ship as API, so it's time to tidy up and get rid of it.

Bug 36130212
Test: manual

Change-Id: I834d1ce059aa464ff27f69f5e5d3625cc5e61d8a
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
622fd40c673859584c5d9d87f6b7d592d2b1eef9 01-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Revert "Layoutlib changes to support the new ResourceUrl"" into oc-dev
0be80285b6b8cb25fc5ae317d7cbea95b015385a 30-Mar-2017 Dianne Hackborn <hackbod@google.com> Implement issue #36590595: Add ability to associated a ClipData with JobInfo

Yum!

Also needed to have a Context.revokeUriPermission() variant that is sane,
so reasonable CTS tests can be written.

Test: new ClipDataJobTest added.

Change-Id: Ia3135ea788a6e32c971bae7dab3a844d0ef4139c
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
8848268eefc54ee9280be576c77ff2cc8f3926bc 24-Mar-2017 Diego Perez <diegoperez@google.com> Revert "Layoutlib changes to support the new ResourceUrl"

This reverts commit 9fb4d6876a78fb336cb3650aca84bce723f96ecb.

Test: N/A
Change-Id: I57a09c6f011b8d8c9c2d054b03536e0a6fcc5688
(cherry picked from commit a4e82144b26ee50fca2739abc4f6c7111dc2f3cb)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
754e8e9508c90212cd8b88dcac2066e0903d1563 21-Mar-2017 Christopher Tate <ctate@google.com> API refactor: context.startForegroundService()

Rather than require an a-priori Notification be supplied in order to
start a service directly into the foreground state, we adopt a two-stage
compound operation for undertaking ongoing service work even from a
background execution state. Context#startForegroundService() is not
subject to background restrictions, with the requirement that the
service formally enter the foreground state via startForeground() within
5 seconds. If the service does not do so, it is stopped by the OS and
the app is blamed with a service ANR.

We also introduce a new flavor of PendingIntent that starts a service
into this two-stage "promises to call startForeground()" sequence, so
that deferred and second-party launches can take advantage of it.

Bug 36130212
Test: CTS

Change-Id: I96d6b23fcfc27d8fa606827b7d48a093611b2345
(cherry picked from commit 79047c62b58fb0a0ddf28e2b90fe4d17e05bc528)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
0609785e6f839bfd27e33fa2630e6a1c12be9a20 29-Mar-2017 Diego Perez <diegoperez@google.com> Make layoutlib more lenient with recoverable errors

In many cases, throwing an exception will stop the inflation or
rendering of a layout. Sometimes, we could recover from some of the
failures and render a layout that is "usable".
I've done a first pass trying to follow the following rules:
- Try simple recoveries by choosing sensible defaults. Not trying
complex recoveries.
- Only recover if the exception is not part of the class behaviour.
Avoided removing declared exceptions or exceptions that are expected by
the framework.
- I've kept assertions in place so, in most cases, the behaviour will
be almost identical to the previous one with assertions enabled.

Test: Checked with existing tests
Change-Id: I0001fdd3c808cf405c4eb8d734b9bbe63493e05c
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
11e84b1a1039c47c93dbdc041fc91db6473124aa 29-Mar-2017 Diego Perez <diegoperez@google.com> Add audio service support to BridgeContext

Bug: http://b.android.com/259326
Test: N/A
Change-Id: Ie43ccca49a5e77d82426b4f265e3c05dddfacad9
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
876ec5e8007f6e9b0f1603b9d3e70ac79df535fe 21-Mar-2017 Diego Perez <diegoperez@google.com> Layoutlib changes to support the new ResourceUrl

Updates the resource handling after the changes to the ResourceUrl API
changes.

Test: Existing tests should pass
Change-Id: I314a20673cf94e4ef27e9712d3fa7b6f69bba796
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ebb1cbe522dca9a98855721bca01562c9bc3443a 13-Mar-2017 Chad Brubaker <cbrubaker@google.com> Merge changes from topic 'receiver_IA'

* changes:
Enforce visibleToInstantApps for receivers
Only send exposed broadcasts to Instant Apps
990874c1cc5b7b43b255285984392ae3fffc9356 07-Mar-2017 Felipe Leme <felipeal@google.com> Replaced auto-fill by autofill to keep it consistent with API style.

This change will affects 2 types of apps: autofill service implementations
and apps that use autofill APIs.

Since just the former is known to be used at the moment, we're not trying
to keep backward compatibility with the latter.

Bug: 35956626
Test: CtsAutoFillServiceTestCases pass
Test: android.provider.SettingsBackupTest pass

Change-Id: Ia720083508716deae9e887f9faa7ae7c5a82f471
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
99d8469f009565d9929e0b023da50ff7513a6e4c 02-Mar-2017 Chad Brubaker <cbrubaker@google.com> Enforce visibleToInstantApps for receivers

Instant apps can only send broadcasts to receivers that are declared in
the manifest with android:visibleToInstantApps=true or if the app
registers a receiver at runtime using the new methods that take
visibleToInstantApps.

Bug:33350280
Test: Manually sending broadcasts from Instant Apps only goes to
receivers with visibleToInstantApps set to true.
Test: Receiving a broadcast from within the same app does not require
visibleToInstantApps to be set.

Change-Id: I54d79a502ba9c5fd03ede3c09e08afc88fe2775f
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
3c5e3381983b1f2e98560a7bdbaadd4e7491144c 01-Mar-2017 Diego Perez <diegoperez@google.com> Rename android.os.Build so it can be dynamically generated

This will allow the android.os.Build class to be generated dynamically
from the Studio side.
In order to allow the "refactoring" of classses like android.os.Build,
Create needed to be modified.

While adding the test, I've also done a small clean-up of the
AsmGeneratorTest to re-use some code.

Bug: http://b.android.com/210345
Test: Added new test to AsmGeneratorTest
Change-Id: Ie4e1209c1c60b7a33cb427dbd556a9741ec8f8b3
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
9fe85b7fbe2e7566ce8dd164cba9897bc40f1a0c 23-Feb-2017 Jerome Gaillard <jgaillard@google.com> Add autofill service to BridgeContext

Test: layoutlib tests
Change-Id: I52b360a64518165eefee4250b1c32e9f5f87845d
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
9e866698f868b71ac7505081b75ac671fa2b9072 21-Feb-2017 Diego Perez <diegoperez@google.com> Merge "Fix BridgeContext.resolveThemeAttribute color parsing"
0986aa118c279a45fd21af0128f2f81e3d7daa6f 20-Feb-2017 Diego Perez <diegoperez@google.com> Fix BridgeContext.resolveThemeAttribute color parsing

When passed a color, resolveThemeAttribute was not parsing the value
into the .data field.

Bug: http://b.android.com/232870
Test: Added new test
Change-Id: I9d91e3a70c24f1e71d9d89977fe79b0965e98893
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
180ffddd59ba9662430e8aaf70a5ce2cb27cc8bb 17-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "API for accessing preloaded files cache"
58d2e2867c492598634323346900e0a2fc7c893b 03-Sep-2016 Fyodor Kupolov <fkupolov@google.com> API for accessing preloaded files cache

Added @SystemAPI method Context.getPreloadsFileCache.

Bug: 31008665
Test: manual
Change-Id: Id61ab5e1b78d8bfbd40f61985406a8de4082b30f
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
a43c71f50d43e71ad9ff021cd8a0f895d6b0b22b 09-Feb-2017 Andrii Kulian <akulian@google.com> Report move to display for activities that handle config changes

When activity that is moved between displays handles all configuration
changes, it won't be restarted. This CL adds a callback to the client
to notify it about display change. Usually it will be followed by
onConfigurationChanged, except when configuration didn't actually change.
When activity is recreated, it won't receive onMovedToDisplay.

Bug: 34862802
Test: android.server.cts.ActivityManagerDisplayTests
Test: #testOnMovedToDisplayCallback
Change-Id: I9a9501cab788623ada15a31efb53e4b2378639fe
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
33c5bdb3a4e5aab21e9744449d1efcdb2eb11a4f 16-Jan-2017 Diego Perez <diegoperez@google.com> Remove custom service Class -> name mapping

Keeping the mapping manually is very error prone and the
SystemServiceRegistry already does it for us.

Bug: http://b.android.com/231975
Test: Added new test
Change-Id: I507c4a9d5f0821a5a237ee27f5e97c5cd9040223
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
a082f4bd3bb8fd0e0a10d4b461bd1519bf7ed7a6 18-Jan-2017 Diego Perez <diegoperez@google.com> Fix support for enum attributes in BridgeContext

Test: Updated BridgeXmlPullAttributesTest
Bug: http://b.android.com/231347
Change-Id: I5fd8b46155ccea6c9b65787f311a0887fa4b4806
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
5c62f83fa8e6f119cb479016378e5c02789b8cb3 22-Nov-2016 Adam Lesinski <adamlesinski@google.com> Add support for Split APK dependcies

Apps can now declare in their base APK AndroidManifest.xml
that they want to have their split APKs loaded in isolated
Contexts. This means code and resources from the split
get loaded into their own ClassLoader and AssetManager.

<manifest xmlns:android="..."
...
android:isolatedSplits="true"
...

In order to make this more useful, splits can declare dependencies
on other splits, which will all get pulled in to the Context
and run as expected at runtime.

A split declares its dependency on another split by using the
tag <uses-split> in its AndroidManifest.xml:

<manifest xmlns:android="...">
...
<uses-split android:name="feature_split_1" />
...

A split can have a single parent on which it depends on. This is
due to the limitation of having a single ClassLoader parent.
All splits depend on the base APK implicitly.

PackageManager verifies that no cycles exist and that each dependency
is present before allowing an installation to succeed.

The runtime will then load splits based on the dependencies.

Given the following APKs:

base <-- split A <-- split C
^----- split B

If an Activity defined in split C is launched, then the base,
split A, and split C will be loaded into the ClassLoader defined
for the Activity's Context. The AssetManager will similarly be loaded
with the resources of the splits.

A split can be manually loaded by creating a Context for that split, defined
by its name:

Context.createContextForSplit("my_feature_split_1");

All installed Activities, Services, Receivers, and Providers are accessible
to other apps via Intent resolution. When they are instantiated, they are
given the appropriate Context that satisfies any dependencies the split they
were defined in stipulated.

Test: WIP (CTS tests to come)
Change-Id: I8989712b241b7bc84381f2919d88455fcad62161
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
67368fb33c9715393ad36d6b472f693a2fa8e760 07-Nov-2016 Christopher Tate <ctate@google.com> Enable background restrictions

Apps that target O+ are always subject to background restrictions.
Legacy apps' background restriction is subject to the OP_RUN_IN_BACKGROUND
app op.

Apps with these properties are exempted from background restrictions:
- persistent process
- currently on the idle battery whitelist
- global whitelist for things like bluetooth services

Bug 30953212

Change-Id: Icc19b2fbc05f40dcf8c3fc4abf718c373dc8d4f6
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
898b5927b61ae0fcffe01d091a205e2baeaf5446 09-Dec-2016 Diego Perez <diegoperez@google.com> Add missing attributes to old themes

Because we always use the latest framework code, some resources might
fail to resolve when using old themes (they haven't been backported).
Since this is an artifact caused by us using always the latest code, we
check for some of those values and replace them here.

Bug: http://b.android.com/225105
Test: Included new testActivityOnOldTheme
Change-Id: Ia7a8a27fb81fe0b4a1e0c9610a2033a87720864d
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
91137872e6b68a70adc1c750c122241065f0c125 10-Nov-2016 Diego Perez <diegoperez@google.com> Force animateFirstValue to false

This CL forces both animateFirstValue and animateLayoutChanges to false
in themes when running layoutlib. This helps with the rendering of some
widgets so they do not rely on animations.

Test: Test as part of testActivity
Change-Id: Ic9214929d3582bc3e0a196d198cc4fb36347c782
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
57ade81a414e6e717a9e31b8855a9eec1a256e85 08-Nov-2016 Diego Perez <diegoperez@google.com> Merge "Fix themed attributes resolution"
f6215420fe3432e2b756251a32c0cf62ad1787a3 23-Aug-2016 Dianne Hackborn <hackbod@google.com> New infrastructure to switch remaining commands to "cmd" calls.

This introduces a new feature of the IBinder command protocol
to allow the shell command implementation to call back into
its caller to ask it to open files in the calling context. This
is needed so that commands that have arguments specifying files
can open those files as the calling shell, not the system (or
whatever) process.

To test this all out, move the "am start" implementation over
to ActivityManagerShellCommand, in particular along with its
option to specify a file in which to write profiling data.

Test: Manual

Change-Id: I0c1e3857defefbd19a2ac29413aafbb34b1e48a3
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ea1734b5a1c15857eba67749cebb5323bf759d94 20-Sep-2016 Diego Perez <diegoperez@google.com> Fix themed attributes resolution

If an attribute is not an actual theme reference, the call to
Resources.Theme.resolveAttribute will fail in layoutlib. This would
happen for example for color values.
The call in the Android framework simply returns the value.

Bug: 31553972
Change-Id: Idda768a659d94a6c3f848dc960303cf4241325c3
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
a77dce7c8a8b203858082e070aa32b2ff0cab4a3 26-Jul-2016 Chad Brubaker <cbrubaker@google.com> Add missing sendBroadcastAsUser to BridgeContext

Change-Id: I843c4a97e07c955d5f588448ec1c147f4634117f
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
0f735598f93ec8f7aad99670644826cc504d1f73 27-Jun-2016 Diego Perez <diegoperez@google.com> Merge "Add support for AppCompat widgets"
a18c7568154db149748981d7ece1d229cc146fd1 27-Jun-2016 Diego Perez <diegoperez@google.com> Merge "Always calculate default property values"
1835f6367385080ebcb1c02fe02339c077f0c9cf 22-Jun-2016 Adam Lesinski <adamlesinski@google.com> Fix build due to missing abstract method impl

getDisplay() was added to Context, which needs to be implemented
for BridgeContext.

Bug:28388969
Change-Id: I7b0ffcbbe252403e35f08d3fa40d6b0e4dbf0daa
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
bdcc221005b9246910cdf03b51b8f497f125c6e5 24-May-2016 Diego Perez <diegoperez@google.com> Always calculate default property values

We used to only calculate the default property value if the attribute
was not set in the XML. The properties palette can make use of the
default property values even if the value is manually set so adding code
to support that use case.

Bug: http://b.android.com/210957
Change-Id: Iaade37cbe78329f7be3d34ffbf8fc8e7449cfcaa
(cherry picked from commit 1a6c26f66fd355822a0fa7e08c9ca93582e9fc8d)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
9b30e13d8a9896da848fb5db5f91c802fc5249b2 27-May-2016 Diego Perez <diegoperez@google.com> Add support for AppCompat widgets

This allows previews to use appcompat attributes like
app:backgroundTint.

Bug: http://b.android.com/211349
Change-Id: Iaa5f1612c58a6a27d3948bfe1bc0373098c57720
(cherry picked from commit 2ddddbc86314fa16c51d0e5f0d6e55e0a6676d26)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
18ba2f64c15380780855fbc72dd041ce56c62a74 27-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Add namespace before attr name in defPropMap

Change-Id: I36d094fb69d5f5ce0aebde04960ffcd19c27a2eb
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
18be29a3d14f1b3e840e8ee88b5a1951a6f6e9c8 14-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Return complete properties map instead of per view

Change-Id: Ib7c71606d1bf43bbaa80f5601a8508d7aa49d953
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
d94cff87ccbae3042dc4c328863619f4794cc8a5 12-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Add post resolve property values

Change-Id: Ia86b7dfc479cc5313cce36b6b3066fbb1d00c292
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
8997bbe69bb4ebf1fbafe65aa8c736c8a452edd0 07-Apr-2016 Diego Perez <diegoperez@google.com> Fix NPE when runnin testActivity

Change-Id: I7ac81cb286b8d5593ae7f5fedb99bfd0fda791c5
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
5719b7e97ebbfeb891ec687f796abfe824a3182f 05-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Add properties from textAppearance to property map

The default property map is used to get the list of XML properties that
a view queried. For things like textAppearance, these are additional
attributes that the TextView queries, but wasn't added to the property
map. Add them too.

Change-Id: I1e03fbeced224866de1dcc51b93d5aa5d5886ade
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
2921f27c6c759463a032bbefc744da16deeb40f8 21-Mar-2016 Diego Perez <diegoperez@google.com> Merge "Account for parent scroll position" into nyc-dev
777163c3facaed668b43061d726a572fd58f6f60 04-Mar-2016 Diego Perez <diegoperez@google.com> Account for parent scroll position

When calculating the ViewInfo bounding box, account for the parent
scroll position.
Also make renderAndVerify return a RenderResult to verify some data
about the result layout.

Change-Id: I965e393c49b5030c80083daf5e058fa31400ce93
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
07deb6cbc9082993040f1288cf964de066e69c96 16-Mar-2016 Jeff Sharkey <jsharkey@android.com> Refactoring FBE APIs based on council feedback.

Mostly consists of removing the word "encryption" from most APIs,
since we can't actually make promises about the data being encrypted.

Bug: 27531029
Change-Id: Iace9d7c4e64716abf86ed11847c40f3947e1d625
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
6826157d504444207a7fb459a59c52a71451b217 08-Mar-2016 Siva Velusamy <vsiva@google.com> BridgeContext: Fix typo in attr name (toLeft -> toLeftOf)
am: af0f3bda17

* commit 'af0f3bda17ee3de4ad3560c9a675527b20e2af5f':
BridgeContext: Fix typo in attr name (toLeft -> toLeftOf)
05954d5ec954d360bc75df29be2ebf511e472bc5 08-Mar-2016 Siva Velusamy <vsiva@google.com> BridgeContext: Fix typo in attr name (toLeft -> toLeftOf)

Change-Id: I214ddf066bd69d56275477712419745cf781cee3
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
896eb1c37f6a44d65d3a459891475e99170b657c 04-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Change BridgeResources to Resources_Delegate

This is a very hacky fix to make layoutlib work with the latest support
lib. Inject a couple of fields in android.content.res.Resources to
allow using most of the earlier code as is.

Bug: 27403642
Bug: http://b.android.com/201934
Change-Id: Ia96a1b4642a1907a77d9ca7a2392f78809b92e38
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
4d6787e9bfb52e534613f1a7c52165eff97d8600 04-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Change BridgeResources to Resources_Delegate [DO NOT MERGE]

Do not merge because the resource implementation has changed in N and
the change is no longer valid there.

This is a very hacky fix to make layoutlib work with the latest support
lib. Inject a couple of fields in android.content.res.Resources to
allow using most of the earlier code as is.

Bug: 27403642
Bug: http://b.android.com/201934
Change-Id: I186cad32b1b4de64164fbad937d989e0110c6976
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
e7df8fcf8a3e3729bd5918c20bab27b9f25c17a7 17-Feb-2016 Jeff Sharkey <jsharkey@android.com> Make BackupManager encryption aware.

Backup requires both CE and DE storage to be available, so delay
spinning up the backup system until the user is unlocked, since
that's when CE storage becomes available. Note that devices without
FBE immediately transition USER_SYSTEM into the unlocked state,
since their CE is always available.

Offer to backup and restore files under both CE and DE. Since DE
is effectively the same as CE, most logic is simply duplicated for
now, but it could be simplified in the future. Since system apps
can force their default storage location to DE, we always build
explicit CE and DE paths.

Add getDataDir() to give clean access to the top-level private data
directory, but disclaim that apps shouldn't create files there.

Bug: 26279618
Change-Id: Ic34a4b330223725db93b1d0f5c9dffc88002c61f
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
3055137d8134ff0e798768cb8b5b8974a1e588d8 30-Jan-2016 Jeff Sharkey <jsharkey@android.com> Offer to migrate databases and SharedPreferences.

Databases and SharedPreferences often involve multiple files under
the hood, so developers wanting to migrate them between different
storage contexts should ask us to make sure all relevant files are
migrated correctly.

This makes a best-effort attempt to recover from battery pulls
during migration, while still trying to alert developers to
conflicting files.

Bug: 26668510, 25860525
Change-Id: I9ffa3e8cb6191dfd4237b9466a081d6d77df3ba0
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
11a7e6cf73d0416951d8218db937b3fc2e102398 15-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Fix custom font rendering" into mnc-ub-dev am: f5984d5fce
am: 14df39f9e5

* commit '14df39f9e5855caef8d272fb136abe17b225d971':
Fix custom font rendering
85ce0498994c007dc1a8732a4dc125c0061be0d1 14-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Fix custom font rendering

The context was using the wrong asset manager.

Bug: http://b.android.com/198897
Change-Id: Id58473a4539ed93a9f338c730686128c7089fc92
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
4a3aef73043ec146ac0a14a8262a7111f1c35714 10-Dec-2015 Dianne Hackborn <hackbod@google.com> Merge "Add new target SDK filtering feature to BroadcastOptions."
4234e9b99661b0e10357243762054f9297167217 10-Dec-2015 Dianne Hackborn <hackbod@google.com> Add new target SDK filtering feature to BroadcastOptions.

You can now control the range of target SDKs that receivers
will be need to have in order to receive your broadcast.

Use this for CONNECTIVITY_ACTION to not allow N+ applications
to receive these broadcasts through their manifest.

Also tweak the broadcast debug output code to now include the
disposition of each receiver in the list. This is becoming
important as skipping receivers is becoming a more common
thing to have happen.

Change-Id: I251daf68575c07cbb447536286ab4e68b7015148
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
e1b6ca4806fff4beeae156cb927348b6af38030c 09-Dec-2015 Jeff Sharkey <jsharkey@android.com> Slight API renaming, better behavior.

Rename APIs to reflect that they're storage-related. Also move
credential-storage APIs to be system API.

Return a null Context when device-encrypted storage isn't
supported. This is the easiest way to keep legacy apps working when
upgrading from M to N.

Reduce strictness of path checking so we don't crash when working
with special packages like "android".

Bug: 22358539, 26104027
Change-Id: I38c24fc003488186210a6ae3b64270f86e1efe56
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
4b5aa505b91123cb8e9c203b6e3923e81e5e0205 08-Dec-2015 Jeff Sharkey <jsharkey@android.com> Shift around encryption public APIs.

There are far too many Context APIs with special directory paths
to replicate device-encryption versions of them all. Instead, add
methods to clone a Context that explicitly stores its data in either
credential- or device-encrypted storage.

Methods to test the behavior of a given Context.

Bug: 22358539
Change-Id: I6a6290a9b282605ce9a1f82742fc2c4c50536754
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
4ab815a73310595079806f88dbe069111c1f5296 08-Dec-2015 Jeff Sharkey <jsharkey@android.com> APIs to obtain SharedPreferences paths.

Needed for apps that want to migrate SharedPreferences from CE to DE
storage. Note that a device will only ever enter a CE mode with a
factory reset, so apps should only be using these APIs when they
want to migrate files to a consistent location on non-FBE devices
for simplicity.

Bug: 25503089
Change-Id: Ic846215da1617d116a048e036415ac7ad523b770
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
69cc25f9017371f3a95b35283637e6d247af9da3 01-Dec-2015 Jeff Sharkey <jsharkey@android.com> API to create SharedPreferences from File.

Needed to support storage of SharedPreferences on both credential-
encrypted and device-encrypted storage paths.

Bug: 22358539
Change-Id: I576b696951b2a9de817d5be63d31b06f7e166a19
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
285cde678f8bd03c2c0424b0bbeb301635edff7e 06-Nov-2015 Jeff Sharkey <jsharkey@android.com> Initial file-based encryption public APIs.

Define two explicit directories where device-encrypted and
credential-encrypted data will be stored. Third-party apps only
need access to the device-encrypted directory, so that's the only
API exposed for now.

General cleanup in how ApplicationInfo details are derived.

Bug: 22358539
Change-Id: If0a0108721a4aa1c3052b4912e08604bbf24e1ae
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
bf4d4f71cac987248bd42f0ebe45d93704347107 04-Nov-2015 Diego Perez <diegoperez@google.com> Merge "Remove auto-boxing during the inflate" into mnc-ub-dev am: 1c442aca0a
am: 7cdbfaf459

* commit '7cdbfaf459ede7ede430188ed4b1a990ba762144':
Remove auto-boxing during the inflate
41e2568ca7a5c333c57f3b8cf5d1f6294e65a062 03-Nov-2015 Diego Perez <diegoperez@google.com> Remove auto-boxing during the inflate

Change-Id: I3f9ba5d78363f878fa0c58ca8cbf736bd43fe1c0
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
88ac9ba856fdc7279d6d892aa60f7905fce3bd30 13-Oct-2015 Dianne Hackborn <hackbod@google.com> Merge "Revert "Fix build.""
0accbaf0f1ea2d17c5d8319a9af9ceb064d2fc0a 13-Oct-2015 Dianne Hackborn <hackbod@google.com> Revert "Fix build."

This reverts commit 7a9687f1d7693907189fc315d640c1ad770ab88d.

Change-Id: I5b2f68a4e2b4c399d87c18adc223500b0e1bfcc7
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
6f6f016d833ebf6d759b3159879fcb8c7dc8060b 13-Oct-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix build."
24dc4bd5e7db43c83ed594804dd979f5a4edbd90 13-Oct-2015 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: Iade965d86ce5f53cf476468423db47c8e6a602b2
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
c179bccfd754fc6ee203f2842ceac12194cf9401 13-Oct-2015 Ian Pedowitz <ijpedowitz@google.com> Fix Build

Mimicking what was done for bdbd2d9c1878432eca6933e06c980663e2579d85

Change-Id: I5aef245b7a426edaa90e7e237acd4608b431c073
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
97ec082dda2f1ca25d38437716583c8254740866 29-Sep-2015 Deepanshu Gupta <deepanshu@google.com> Support databinding in listitem layouts.

Add a wrapper around the PullParser to support stripping out databinding
parts.

Bug: http://b.android.com/187428
Change-Id: I88080d8f4108cb5ae27a137ad20c5dd7d516f3ea
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
1aec4cd047cf58870c6ce812cd9ac5e980474d7f 02-Sep-2015 Deepanshu Gupta <deepanshu@google.com> am eb541727: am dd21212f: am eb26f5ce: LayoutLib: Fix typedArray caching.

* commit 'eb54172719db60740a0b8dde6380db54d4006159':
LayoutLib: Fix typedArray caching.
9f07d7c5e819577a6f638d32ffe93afeff58743d 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix typedArray caching.

The typedArray depends on the current context (more specifically, the
themes set on the context). The fact was ignored in the caching of the
typedArray and caused the android:theme attribute to be ignored in
certain cases.

Change-Id: If095580919474f12c0eb4e1f8fb7f076cf3c4ed0
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
1ab3c68dbd918417f489b0ab605e2685659b3cda 05-Jun-2015 Jens Ole Lauridsen <jlauridsen@google.com> Support AppBar from Material Design. [DO NOT MERGE]

This CL is a start for making the design able to render the AppBar.
We are still missing support for: system menu and the app icon.

Change-Id: I19600f8ee1e7e6492186a0b7ae7fb38c82e15c02
(cherry picked from commit 4dfe4d43ce5634f059a3ba669e3cac4551c3a3ee)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
03ccbcda5f00446f50404ffd18c90794cd9cc8e1 30-Jun-2015 Deepanshu Gupta <deepanshu@google.com> Add missing resolveResValue call. [DO NOT MERGE]

Bug: http://b.android.com/178504
Change-Id: I7dde8094cf762893e4f7ea0d3de87a281c9602cd
(cherry picked from commit 5d1eaf4a197130f561b16c4ed083cf016b20ab92)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
b683bea991ee0ae2adb1eaa12a42a206d6162247 27-May-2015 Deepanshu Gupta <deepanshu@google.com> Skip warnings for some unresolved references. [DO NOT MERGE]

Some applications rename the newer RTL attributes to the older
attributes in order to target RTL locales, but not need to include two
attributes everywhere it's needed. For example, iosched renames
paddingStart to paddingLeft (among other attributes) for API 17 and
above. This leads to hundreds of warnings about missing attributes.
This change suppresses such warnings.

Also, skip adding unresolved attributes to the typed array. This is more
in line with the actual implementation on device, and prevents
unexpected warnings/errors/crashes later.

Change-Id: Iee616fa6295aa9731ede0cf9dcd6dd2bd1fe8f20
(cherry picked from commit b3e872be9e634c8d1f34d07778ea753880bbf2d9)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
f64ea87a916e49a89b318f2f1dbb028a4f6a27f6 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix import order. [DO NOT MERGE]

Change-Id: I50bfbf4011290683a1c6adb94e0b6fa301dcc75b
(cherry picked from commit b9b8aef94e5bad8f5f03f686a2d3d8a09c045a7b)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
39adf6175b5aeae7898ff85d808bd75401276005 28-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix NPE in BridgeContext.obtainStyledAttributes() [DO NOT MERGE]

Replace direct member access with getter that checks for nullness.

Change-Id: I4a56a0ee903ae7d8c89b91d74b128302e1965586
(cherry picked from commit d758e042ce08c46712db3db2d63fc84795028dfe)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
18e58a95b556336bac0d455da4f44dc30171fa44 22-May-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Change nullity annotations. [DO NOT MERGE]

Switch from using tools nullity annotations (com.android.annotations)
to android framework annotations (android.annotation).

A new sdk-common prebuilt is required for LayoutLib tests. The new
sdk-common requires an updated tools-common. The updated tools-common
doesn't have nullity annotations. So, instead of adding the annotation
dependency, just reuse the platform ones. This also paves the way to
include other platform annotations like IdRes etc.

Change-Id: I87b8f767d3681d914abe7d1329e26a87f49f50a7
(cherry picked from commit 476e582d2ffdf25102d4c55f8c242baa3d21d37f)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
f91be4adf5628a0bc3dd92ae9f5975a4219531be 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Add documentation about hack in commit: f8ea750455 [DO NOT MERGE]

Change-Id: I9ce871a67fb67e02e0c4df1eb5c3261ea52a914b
(cherry picked from commit 6330971ed293a2777bbdab09288f90ea4b2d0255)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
4f324ccc2d825991b08538093f4c15f657bdc52d 24-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Make DatePicker rendering not fail (style search fix). [DO NOT MERGE]

Only cherry picked for the style not found fix.

Change-Id: Ied2b71de5b32bcb640bf4ec445e8a39509f800e9
(cherry picked from commit d5b82845450beac2d3c7db9cd80e9fc34d43a297)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
b2f3bdfde816e8338fcadcc55965427473089b22 19-May-2015 Deepanshu Gupta <deepanshu@google.com> Make Context.getClassLoader() work. [DO NOT MERGE]

Context.getClassLoader() is used by the LayoutInflater and can be used
by custom views. However, when called from the LayoutInflater, this
needs to return only the Framework classes. This is so that the IDE gets
a chance to instantiate the custom views, which helps in better error
reporting and better fallback in case of exceptions, like MockView.

To workaround this need of the same method returning different results
based on where it's called from, the method call in LayoutInflater is
renamed to getFrameworkClassLoader() and the new method is injected in
Context. The implementation of getFrameworkClassLoader() maintains the
existing behaviour of getClassLoader().

Context.getClassLoader() is now modified to return classes from both
Framework and the app namespace.

Also, update the list of packages to search for Framework views.

Change-Id: I1a6be4aa1fc5c1c5520b5440a348a52f10b6eb3b
(cherry picked from commit f8ea750455eec81e4e6d877b3e18e29a86d4ec95)
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
6819beb4c223e20964c09a1b2712e45a51e8b46b 14-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix issue #21626564: MMS should be receivied while Dozing

We now place whoever is receiving the MMS on the temporary
whitelist while doing so, so they can get network access to
download it.

There was also an issue that needed to be fixed where we
were no longer updating the list of allowed uids while
dozing based on their proc states... we now do that.

Also did a bit of optimization of the temp white list update
path do the network policy manager, instead of going through
a broadcast we now directly call in to the network policy
manager. This also allows us to have a synchronous version
of updating the list, so we can know the app has network access
before we tell it to do anything.

Finally added battery stats events for things going on and off
the whitelist so we can diagnose the behavior there.

Change-Id: Ic7fe010af680034d9f8cb014bb135b2addef7455
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
d3943b7bd5394c1a3af08f4d837799247039cedb 14-Jul-2015 Fyodor Kupolov <fkupolov@google.com> Added sendBroadcastMultiplePermissions method

Added Context.sendBroadcastMultiplePermissions(Intent intent, String[]
receiverPermissions) method, which allows an array of required permissions
to be enforced.

Bug: 21852542
Change-Id: I27c9130e8f004b428452501ebc8a36aabde1f343
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
7b34c0b77eedcb27b757403baccbfd020380cf01 15-Jul-2015 Fyodor Kupolov <fkupolov@google.com> Revert "Allow array of required permissions in sendBroadcast"

This reverts commit b4e7283c9afd9fb15ebd63f6ce9b75c9c1af658b.

Change-Id: Ie8390964bda5bdfa869cee8f46584043d8e7c664
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
59c1eec510aa8bf8c406f2763ae074791903a7df 14-Jul-2015 Fyodor Kupolov <fkupolov@google.com> Allow array of required permissions in sendBroadcast

Added Context.sendBroadcast(Intent intent, String[] receiverPermissions)
method, which allows an array of required permissions to be enforced.

Bug: 21852542
Change-Id: I3b8ff258fa9f3249c344bb8093b820b24eef00c0
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
39c818ea1f1fcbe249959202d796dcb6afa44ac8 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Add a default PackageManager to BridgeContext.

Needed for EditText.

Change-Id: I6c831467659ce814e86c13e928a2b77c14e1c139
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
3cf86178f3510f08452dda9ef78f431b7fbae32c 30-Jun-2015 Deepanshu Gupta <deepanshu@google.com> Add missing resolveResValue call.

Bug: http://b.android.com/178504
Change-Id: I7dde8094cf762893e4f7ea0d3de87a281c9602cd
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
5434074acbbf76fbed19869fcfd5e3958da2737e 17-Jun-2015 Dianne Hackborn <hackbod@google.com> Fix issue #21814207 and issue #21814212 (alarm manager)

Issue #21814207: AlarmManager.setAndAllowWhileIdle should also allow wake locks.

Introduce a whole new infrastructure for providing options when
sending broadcasts, much like ActivityOptions. There is a single
option right now, asking the activity manager to apply a tempory
whitelist to each receiver of the broadcast.

Issue #21814212: Need to allow configuration of alarm manager parameters

The various alarm manager timing configurations are not modifiable
through settings, much like DeviceIdleController. Also did a few
tweaks in the existing DeviceIdleController impl.

Change-Id: Ifd01013185acc4de668617b1e46e78e30ebed041
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
c46c84ee673934f340b27b40366a5a61669a4a1e 05-Jun-2015 Jens Ole Lauridsen <jlauridsen@google.com> Support AppBar from Material Design.

This CL is a start for making the design able to render the AppBar.
We are still missing support for: system menu and the app icon.

Change-Id: I19600f8ee1e7e6492186a0b7ae7fb38c82e15c02
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ab7aef7fe5d0e7bb842bc1b65871fbe97f6687ac 27-May-2015 Deepanshu Gupta <deepanshu@google.com> Skip warnings for some unresolved references.

Some applications rename the newer RTL attributes to the older
attributes in order to target RTL locales, but not need to include two
attributes everywhere it's needed. For example, iosched renames
paddingStart to paddingLeft (among other attributes) for API 17 and
above. This leads to hundreds of warnings about missing attributes.
This change suppresses such warnings.

Also, skip adding unresolved attributes to the typed array. This is more
in line with the actual implementation on device, and prevents
unexpected warnings/errors/crashes later.

Change-Id: Iee616fa6295aa9731ede0cf9dcd6dd2bd1fe8f20
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
20e5913c77e01b1b4c322076e3c2177c0cf76681 28-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix NPE in BridgeContext.obtainStyledAttributes()

Replace direct member access with getter that checks for nullness.

Change-Id: I4a56a0ee903ae7d8c89b91d74b128302e1965586
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
442aee6bc1abfb143dcfa1ba60d696e576d066c4 22-May-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Change nullity annotations.

Switch from using tools nullity annotations (com.android.annotations)
to android framework annotations (android.annotation).

A new sdk-common prebuilt is required for LayoutLib tests. The new
sdk-common requires an updated tools-common. The updated tools-common
doesn't have nullity annotations. So, instead of adding the annotation
dependency, just reuse the platform ones. This also paves the way to
include other platform annotations like IdRes etc.

Change-Id: I87b8f767d3681d914abe7d1329e26a87f49f50a7
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
8b8e217e45dcdf4c6ad2a398282e2be94d9b9dbb 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Add documentation about hack in commit: f8ea750455

Change-Id: I9ce871a67fb67e02e0c4df1eb5c3261ea52a914b
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
d4b46ab11d7f44dc3eb0ced1a5a0a3f144a1688d 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Make DatePicker rendering not fail.

Ensures that having a DatePicker in the layout doesn't crash the
complete rendering. The rendering is still not perfect, but at least it
works.

- Return a non-null window token so that ViewPager thinks that it's
attached to a window and doesn't skip populating the views.
- Fix a style not found issue.

Change-Id: Ied2b71de5b32bcb640bf4ec445e8a39509f800e9
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
f4d62181569ea4f112046a5400acd24e5c5d196b 19-May-2015 Deepanshu Gupta <deepanshu@google.com> Make Context.getClassLoader() work.

Context.getClassLoader() is used by the LayoutInflater and can be used
by custom views. However, when called from the LayoutInflater, this
needs to return only the Framework classes. This is so that the IDE gets
a chance to instantiate the custom views, which helps in better error
reporting and better fallback in case of exceptions, like MockView.

To workaround this need of the same method returning different results
based on where it's called from, the method call in LayoutInflater is
renamed to getFrameworkClassLoader() and the new method is injected in
Context. The implementation of getFrameworkClassLoader() maintains the
existing behaviour of getClassLoader().

Context.getClassLoader() is now modified to return classes from both
Framework and the app namespace.

Also, update the list of packages to search for Framework views.

Change-Id: I1a6be4aa1fc5c1c5520b5440a348a52f10b6eb3b
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
040f7446638281d80a7c6ca2b25f73b59dcef421 07-May-2015 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of a663e012 to mnc-dev

Change-Id: I279cad7db6e9b5e97da3ea3c3bb91e09cabc7076
38f07397f29ae7b3b5cba4d632c671be0ccd4bed 18-Apr-2015 Svet Ganov <svetoslavganov@google.com> Fix build for real

Change-Id: I5742226e9b873cd5a035f11be0e228188e215365
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
fe4f4ce73f499edd4b693dede0b8822480248580 18-Apr-2015 Svet Ganov <svetoslavganov@google.com> Fix build

Change-Id: If469dce767b492c3fcc1ad8cf7ab1041eb61096f
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
cb40f2cb35d559d9ea60382b6dee80022c851124 31-Mar-2015 Deepanshu Gupta <deepanshu@google.com> RecyclerView in LayoutLib: better XML attrs.

- RecyclerView now supports XML attributes natively. Thus, remove the
custom support via tools attribute. Users with older versions of
RecyclerView should update.
- Add Context.getPackageName() support used by RecyclerView.
- Update SessionParamsFlags with the new changes and rename it to
RenderParamsFlags.

The attribute behaves slightly different from the original tools
attribute. For usage, see commit 044b5b61e96 in frameworks/support.

Change-Id: I12073e37a2ba411558ca1d3e30c399e3d9a0b144
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
2f06ed4d7b33991be7d3fea6a592423636694c1a 16-Apr-2015 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 186fe7b1 to master

Change-Id: I60886d3e44ae23a11c8f129517df87ee29625ada
b111e84752652ec862efa7e0fcaa224430feb97f 15-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Update to using LayoutlibCallback.

Change-Id: Ia89d418b0d40ca8efef8968a4a2a635616b945ac
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
7778df5b4f3ebd67626b588e079d5a0e5d95708b 26-Feb-2015 Svetoslav <svetoslavganov@google.com> Runtime permissions: per user permission tracking.

Before all permissions were granted at install time at once, so the user
was persented with an all or nothing choice. In the new runtime permissions
model all dangarous permissions (nomal are always granted and signature
one are granted if signatures match) are not granted at install time and
the app can request them as necessary at runtime.

Before, all granted permission to an app were identical for all users as
granting is performed at install time. However, the new runtime model
allows the same app running under two different users to have different
runtime permission grants. This change refactors the permissions book
keeping in the package manager to enable per user permission tracking.

The change also adds the app facing APIs for requesting runtime permissions.

Change-Id: Icbf2fc2ced15c42ca206c335996206bd1a4a4be5
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
d06eed1a651314e05c88f852c4bcaf7693c809a9 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 199a70f1: am 576801ff: am 842eee9f: am 1f9a26af: am 158c08bc: am ada85905: Fix AppCompat action bar theming.

* commit '199a70f1820c38a9f1db1697ad91c4f5f07d00aa':
Fix AppCompat action bar theming.
7645104b10b9c2e4f46bf9dc384484df9a1bfc17 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 158c08bc: am ada85905: Fix AppCompat action bar theming.

* commit '158c08bcf1cd0bc702748ee2a4cf6aa259c26147':
Fix AppCompat action bar theming.
1f3c4ff2ea92c67fca7b55736b7ffb432b157b65 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix AppCompat action bar theming.

Use themed context to inflate the action bar when AppCompat is used.
Also fix minor issues exposed as a result.

- Set project callback when LayoutInflater is created by
LayoutInflater.from(context).
- Remove duplication of code to get base context from context wrapper.

Bug: http://b.android.com/159711
Change-Id: I379ba2ba71c0ef547460987c3aa5db521c7de967
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
b025e67cebd7c1297bc96ee4238191cc2cd22012 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix import order.

Change-Id: I50bfbf4011290683a1c6adb94e0b6fa301dcc75b
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
353b5f6a5501a4a613dd83a99d796b78dc1f13df 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am fceec0e1: am c7fc094d: am d44af610: am b3cfb334: Merge "Fix rare NPE in BridgeContext." into lmp-mr1-dev

* commit 'fceec0e124a55b25d59f2af5279c70ac045d6771':
Fix rare NPE in BridgeContext.
f122f22516a3ddc8b15f1cc9ab6e4a3fcad54d24 11-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix rare NPE in BridgeContext.

Also fixed some deprecation warnings.

Change-Id: I2fa00996dab0b008b9ca07a5382a059e5780529d
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
6b08f4b3e405058c78a7d176402f7158fd892856 25-Feb-2015 Jeff Brown <jeffbrown@google.com> Add Context.getSystemService(Class<?>).

Added an overload of getSystemService() that takes a class instead of a
service name to eliminate the extra cast and provide more type safety.

Cleaned up docs.

Removed the default constructor of BatteryManager which should not have
existed.

Change-Id: I9da46b20641fc83ecd3342560e5b94cb721f289c
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
70aa2eaef46df8aa2b7f84ce50019a6a58067015 17-Feb-2015 Deepanshu Gupta <deepanshu@google.com> am ad879adb: Merge "Add Asset management support for fonts." into lmp-dev
automerge: 0684991

* commit '068499111c173fdd9869e7dbe5b9de857aca1c2d':
Add Asset management support for fonts.
aa5d4b070abe5baaa82c10175e7e78dbe16754da 13-Feb-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Add Asset management support for fonts." into lmp-dev
807ee60dded3034941966f844a5e434473863660 28-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Add Asset management support for fonts.

Change-Id: I10ca67dcffe244667d4ae0bda65dbc1aa6691d50
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
dc9bdc3c714f7d533fd3f5514480e39064dae104 31-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 1d59871e: Merge "Resource resolution fixes." into lmp-dev
automerge: 7e683bd

* commit '7e683bdaddff77a24a36d420c5782b47795c5ccb':
Resource resolution fixes.
c8a55f3e2e36475d8a86a5967a9f2db629e02d1c 16-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Resource resolution fixes.

1. Some dynamic ids weren't created and resulted in ResourceNotFound
exceptions.
2. Prevent NPE if a style attribute (eg. style="?attr/foo"), which
cannot be resolved, is resolved. This effectively, also results in
making it harder to catch misconfigured themes. However, support
library does it, and we don't want to throw errors when the library is
working as intended.

Change-Id: I731d8fb9209eb72b464d235d1072d416e132970b
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
b5ca51bd91a7c55ef30bfaad08ebe5219f6e4024 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am e69e4f8b: am f9bb0b5e: Merge "Fix DatePicker rendering." into lmp-dev

* commit 'e69e4f8b4db142f024e170cf6faabb36095799b7':
Fix DatePicker rendering.
004c77ec365fb5027f35356a6f806b849c53990f 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 8c686ddd: am d20a518c: Merge "Make Preference-cookie map non static." into lmp-dev

* commit '8c686ddd540f3a15cdba4893f104c0e8e9af5716':
Make Preference-cookie map non static.
da3c24ef76a7b7fb83127bdec8f3f754f679419f 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am cec8e5a1: am f861c0ce: Merge "Fix default initial value for preferences" into lmp-dev

* commit 'cec8e5a10de413c733223b8b1cc11b70c6254647':
Fix default initial value for preferences
6ba2eb811ef54a128739299b4b510c7a9c19fb2b 29-Dec-2014 Deepanshu Gupta <deepanshu@google.com> Fix DatePicker rendering.

1. Return AccessibilityManager service from context.
2. Don't throw an exception if no style specifited in
obtainStyledAttributes. Specifying no style is valid and it's supposed
to use the default theme in that case.

Bug: http://b.android.com/82712 and http://b.android.com/79218
Change-Id: Iba7097f36996e4d6f1e9db778dc73294f2854c79
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
de84301edebf36de5a32fac4b68ebd1316dc3f15 08-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Make Preference-cookie map non static.

Moved the map from Preference to View Cookie to BridgeContext. This
means the map need not be static anymore.

NO_SQ: Depends on unsubmitted changes.
Change-Id: I662513def17bd6ec3a2646c3bec9bf4f9f89fc15
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ef10b6c0edbc4b7f47e7202816c734672789f52c 06-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Fix default initial value for preferences

NO_SQ: Depends on unsubmitted changes.
Change-Id: I061cf71f6167d382e9ef060abeb4d5cff83c4104
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
33e6442c31f7181c5c0b303786d226b3fc539beb 04-Dec-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of fb30a783 to lmp-mr1-dev

Change-Id: I91fdb76c748b97376d6469c8d1198a15c4395463
399b135d6af2ba50ce6e79ba4f136cb6a2a4949a 21-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 4104abf8: Merge "Fix setTextAppearance for styles with dots." into lmp-dev
automerge: ddc83df

* commit 'ddc83dfa8f17db1a8a566c8b92b0fea56dedd00a':
Fix setTextAppearance for styles with dots.
14f0ff86ba06a52374de27f94537f68723e5070e 18-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Fix typos in previous bugfixes.

The commits 2c9fbdd and 12b6d29 introduced minor bugs. This change fixes
them.
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
42db2e87e0bb2836cfd651e258a2b928fb60c823 19-Nov-2014 Dianne Hackborn <hackbod@google.com> Fix issue with call backs from media process.

All but a few lines of this is for issue #16013164, which allowed
apps to do some operations as the media uid by having it call
back to them to open a file. The problem here is with the tempory
identity stuff in the activity manager, allowing us to make the open
call as the original caller... ideally we should figure out a way
to just get rid of all of that, but the solution here is actually
easier (even though it doesn't look it) -- we now hand a token over
to the openFile() call that it can use when doing permission checks
to say "yes I would like the check to be against whoever is responsible
for the open". This allows us to do the uid remapping for only this
one specific set of permission checks, and nothing else.

Also fix issue #17487348: Isolated services can access system services
they shouldn't be able to. Don't send any system service IBinder objects
down for the first initialization of an isolated process.

Change-Id: I3c70e16e0899d7eef0bae458e83958b41ed2b75e
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
f4e461864d29d243a5b04eebc52ee1845f581b9f 18-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Fix setTextAppearance for styles with dots.

Bug: http://b.android.com/78842
Change-Id: I65923134b2d3812030e2b7dd8ab96363b0647c1f
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
98bfcb1c681013fb91352bc5d44a17471c5ae95e 10-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Fix setting styles in custom views.

Bug: http://b.android.com/78842
Change-Id: I5d4571d94d96b00419acc258c9e2b519367b689d
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
d972ff0acb8d3e6f8ce16db8cab5802799d65511 30-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Fix BridgeContext.get*ResourceValue()

getFrameworkResourceValue() and getProjectResourceValue() never really
returned the defValue passed to them, instead creating a new id for
non-existent resources. We now checks for the existence of the resources
before trying to obtain the id.

Change-Id: Ie3103ba32af6186651a5f77c27d1efc33dc2bcc7
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ca617d8a82e46474f597fe9a9b13bf0abc89f0ba 28-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Use right theme for drawable inflation.

The theme information was lost when inflating drawables. As a result,
drawables inflated in the ActionBar did not have the right tint.

Change-Id: I13d5c78039e35085ed4902289fcb735bb15d972e
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
82fdeddf9204e855d32d9db9fa6860e9bc780003 06-Aug-2014 Svetoslav <svetoslavganov@google.com> Fix build

Change-Id: I96eec52472bec122074b0ec2ee051c1b55eaa8f4
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
60ff47578da3cd39fa5083a9427a860127f99546 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am cdcebcef: Merge "Fix style resolution for styles with \'.\'" into lmp-preview-dev

* commit 'cdcebcefed9a9bbf6835025d722ae31da1a93c85':
Fix style resolution for styles with '.'
a750cc8961da48ceac2e58dacf9fc7107ff57333 16-Jul-2014 Jeff Sharkey <jsharkey@android.com> Add code cache directory for apps.

This provides a directory where apps can cache compiled or optimized
code generated at runtime. The platform will delete all files in
this location on both app and platform upgrade.

Bug: 16187224
Change-Id: I641b21d841c436247f35ff235317e3a4ba520441
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
b644ac367e0e16582b869f9ba5f3587720160851 15-Jul-2014 Christopher Tate <ctate@google.com> Fix build

BridgeContext didn't show up in the working tree as a build participant.
Tsk tsk.

Change-Id: I2b52d99f319b43c2906a7fb9b25139a3df5b3676
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ef2f7424f96bd08e59c099f464ece61aecea5370 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix style resolution for styles with '.'

Bug: b.android.com/72698
Change-Id: I96fb549cf5787d9e8cde2245524a8173471a60ca
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
262f12063d5a0e147026b8a96cd5f8a6460f5687 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Resource resolution bug fix.

Fix a bug where "?attr/foo" in framework resources wasn't resolved
properly.

Change-Id: I9a56974f526774fde79685f668f01021136d68f1
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
03f13e70bdebcf919bdb526f5506a82ab1961c6d 31-May-2014 Jeff Sharkey <jsharkey@android.com> Per-app media directories on external storage.

This change defines per-app directories on external storage that
will be scanned and included in MediaStore. This gives apps a way
to write content to secondary shared storage in a way that can
easily be surfaced to other apps.

Bug: 14382377
Change-Id: I4cb367c870509e76f0c2c598f01e2f699780030a
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
c042cd514139dd9a41fa474d6cf347bebe9ae5f8 16-May-2014 Amith Yamasani <yamasani@google.com> Merge "Variant of sendBroadcast with appOp flag for cross-user."
01cbfeaf2a4ea859547cf9059a760cfa2cb69b59 16-May-2014 Amith Yamasani <yamasani@google.com> Variant of sendBroadcast with appOp flag for cross-user.

Needed for delivering SMS notifications to multiple users.

Change-Id: Ib772292699aba37144621742e6f0ee5c68aadd78
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
babf20eeba53b56f4bee8f13719b003ea79e40cf 16-May-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Correctly resolve ?attr/foo

?attr/foo in platform files wasn't resolved properly. The IDE checked
the app namespace for the attribute even though it is being referenced
from a platform file.

Change-Id: I7db6dfef5b540d99804c298120578da9d060b886
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
bad51e55e21cd00d49bfe394c001bce260685cac 19-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add DisplayManager service to BridgeContext

ViewRoot now holds a reference to the DisplayManager. The change updates
the BridgeContext to provide the DisplayManager instance.

Change-Id: I4a5f00eda337939c72bad47b0ca6a7403454228d
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
f49117b4bfcac616d6c97d14437f0d19bad5c453 12-Dec-2013 Deepanshu Gupta <deepanshu@google.com> Action bar rendering in layoutlib

This also makes a couple of changes to the framework:
1. ShareActionProvider - Use edit mode to execute activity chooser code.
2. WindowDecorActionBar - add a new constructor for use by layoutlib.

This also relies on some changes to the plugin to pass the correct params.

Change-Id: Ia30fef816afd91ec1e439734d56b59b1323bfee2
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
6a3ba682d669a115a3850bd323eb0892d56a85a7 12-Mar-2014 Deepanshu Gupta <deepanshu@google.com> Fix theme/style resolution in Layoutlib

Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
66692437bd9f73579facc4eae6c59334e1f273a9 12-Sep-2013 Kenny Root <kroot@google.com> Add new getOpPackageName for BridgeContext

Change-Id: Ib39b0bd2d1eb794ae4565e54251e4355fa139a14
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
363e1cfa527a887b8d70c4c085f4383b23754948 05-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Fix layout rendering for RTL locales

This changeset adds the framework resources for RTL locales and mirrors
the layout if the application is RTL aware.
Use ICU to check the character orientation of the locale - right to left
or left to right. Set the layout direction on the top level layout
accordingly. Also, load the RTL resources for Nav Bar when the locale is
RTL.

Change-Id: Icbb57ee2ac7c6d8dfc34c2f04dce34d820b9b1ed
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ab775ecdd189b32e35b0d3f4a821502f88b03a4b 24-Jan-2014 Adam Lesinski <adamlesinski@google.com> Revert "Move frameworks/base/tools/ to frameworks/tools/"

This reverts commit 9f6a119c8aa276432ece4fe2118bd8a3c9b1067e.
/frameworks/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java