summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Transition API changes from API council recommendationsChet Haase2013-09-0446-433/+410
| | | | | | | Issue #10460684 KLP API Review: android.view.transition and android.animation Issue #10570740 Transitions: inflate transition targets from xml Change-Id: I7a3f6d3aece2fcafc5efd555d033f79e86635c98
* Remove WebViewClassic specific test codeJonathan Dixon2013-08-2569-21198/+0
| | | | | | | | | Bug: 10427705 These tested internals of WebViewClassic and will no longer build when that is removed Change-Id: I42af538dcb0343e9eff0b3fa85d7ff39f19c7c61
* Second attempt at avoiding infinite loop in PathCache::trim()Romain Guy2013-08-211-2/+7
| | | | | | Bug #10347089 Change-Id: I70f5a3933e848632473acc6636c88be5dc6ac430
* Support public virtual displays.Jeff Brown2013-08-021-2/+2
| | | | | | | | | Refactor the new private virtual display API to also support creating public virtual displays with various characteristics. This feature requires special permissions and is only intended for use by the system. Change-Id: I44dd19f37cf76ea6d6e313afe42f4a412bd96663
* Fix region clipping bugsRomain Guy2013-08-011-4/+2
| | | | | | See external bug #58344 Change-Id: Iecd6c41fc8076cd76add2335d3442a6dd8878f12
* Fix issue #10115327: MapCollections need to implement equalsDianne Hackborn2013-07-311-0/+59
| | | | Change-Id: I8e7b6dd092442f3870aa1a36bd2a7cd974177146
* Add path ops APIRomain Guy2013-07-302-1/+98
| | | | | | | | | | | | | | | | | | | | | | | | Path ops can be used to combine two paths instances in a single path object. The following operations can be used: - Difference - Reverse difference - Union - XOR - Intersection To use the API: Path p1 = createCircle(); Path p2 = createRect(); Path result = new Path(); result.op(p1, p2, Path.Op.DIFFERENCE); This code will subtract the rectangle from the circle and generate the resulting path in "result." Change-Id: Ic25244665b6691a7df0b0002a09da73d937b553b
* Fix TTS tests.Przemyslaw Szczepaniak2013-07-291-32/+6
| | | | | | | | | | | Fix breakages steaming from recent changes: - onGetLanguage is no longer called anywhere (it's used in API <= 17), tests for it no longer apply. - onLoadLanguage is called as item on synthesis thread queue. To return value to client asap, onIsLanguageAvailable is called as well - added missing expectations for mocks. Change-Id: I205bc406f085e2c2f7e98f8495ddb96ad3701b97
* Okay, I give in, add null key support to ArrayMap and ArraySet.Dianne Hackborn2013-07-251-10/+18
| | | | Change-Id: Iac5035f9c5884a9f9d5acb38132bb128d7a55249
* Fix FrameworkPermissionTests buildColin Cross2013-07-191-1/+1
| | | | Change-Id: I516e333ca85c0e3c08c8fffc157a9e0360af02e5
* Fix minor transition bugs and add capabilitiesChet Haase2013-07-125-0/+238
| | | | | | | | | | | | | | | | | | Some view changes require more flexible transitions than the defaults provided by Crossfade and TextChange - this change supplies some of that flexibility. Also, starting a new transition on a hierarchy undergoing a transition caused the first to get canceled, then the start values to be retrieved. The new transition should actually get the start values from the intermediate state of the views, so we now cancel the previous transition only after the start values have been captured. Issue #9756349 Transitions: Crossfade does not handle interruption/reverse correctly Issue #9295863 Transitions: Add behavior API/flags to various transitions Issue #9275859 Transitions: Improve mechanism for transition interruption Change-Id: I5a8c5a12466ddcab9e84e4880930563fa1216f3b
* Fix minor transition bugsChet Haase2013-07-103-0/+103
| | | | | | | | | | | | | | TransitionGroup.setDuration() was not propagating the new duration to future child transitions correctly. Also, Fade should restore a fully-opaque value when a transition ends, to prevent the problem of mid-stream canceled transitions causing vie3ws to get stuck with partially faded-in alpha values. Issue #9755995 Transitions: TransitionGroup.setDuration() not handled correctly Issue #9756655 Transitions: handle fading cancelation better Change-Id: Id44569c6f4152a26ee382d04c30a2f035a1ebcf3
* Remove NearestImageView from CanvasCompareChris Craik2013-07-093-48/+2
| | | | Change-Id: I69b0539df704d80a34cc8f22096657210f5d78ad
* Refactoring/simplifying Transition code/APIChet Haase2013-06-214-0/+163
| | | | | | | | | | | | | | | | | | | Transitions used to be three phase: - captureValues(): get all relevant property values in the affected view targets - setup(): set appropriate start values for affected views prior to any transitions being played - play(): create/play Animators for affected views Now the second and third phases have been collapsed (and named "play()"). This single step sets initial values for target views and creates any Animators that should be played during the transition. The transition mechanism stores these Animators and then starts them at the appropriate time in the overall transition. Issue #9507585 Transitions: Simplify Transition.play() design Change-Id: I3fc67599b38fe49eee885dc5d32444db90b7703b
* Fix transitions on disappearing view hiearchiesChet Haase2013-06-203-0/+100
| | | | | | | | | | | | | | | | | | | | | | | | Previously, Fade transitions did not work correctly on hirearchies; they only handled individual views. in particular, they would side-effect all fading views by removing them from their parent to fade them out in the overlay of the scene root. This worked for the fade-out transition itself, but caused problems when those same hierarchies were added back in and another Fade was run on the hierarchy, because now all of the views inside that parent node had been removed, so they didn't fade in at all. The fix was to add logic in Visibility to detect when a disappearing view was inside a hierarchy that was also disappearing, and to skip the fade on the views inside that hierarchy, leaving only the top-most disappearing view to be faded out, thus preserving the hierarchy under that faded-out group. Along the way, there were various cleanups, fixes, and refactorings in the transition code, and slight API modifications. Issue #9406371 Transitions: Removing view hierarchy not working correctly Issue #9470255 Transitions: Separate different transitions by Scene Root Change-Id: I42e80dac6097fee740f651dcc0535f2c57c11ebb
* Add test for streaming display contents to an accessory.Jeff Brown2013-06-1834-0/+3005
| | | | | | | | | | There are two applications: a source and a sink. They should be installed on two separate Android devices. Then connect the source device to the sink device using a USB OTG cable. Bug: 9192512 Change-Id: I99b552026684abbfd69cb13ab324e72fa16c36ab
* Merge "ArrayMap is great, so how about ArraySet!"Dianne Hackborn2013-06-121-56/+150
|\
| * ArrayMap is great, so how about ArraySet!Dianne Hackborn2013-06-111-56/+150
| | | | | | | | | | | | | | | | | | | | | | | | Also a few little tweaks to the ArrayMap implementation. Note that these are fairly parallel implementations; I looked at what I could abstract out as a base class, but there isn't really all that much without making the resulting code more general and thus slower. If we kept the data structure for ArraySet the same as map, where the array has two values per entry, then they could probably share a lot of code. I couldn't really bring myself to do that at this point, though... Change-Id: I9e0dd8baa8e1febcc1033ecef61623ad59ce4aae
* | Add dynamic scene creation/transition capabilityChet Haase2013-06-103-0/+88
|/ | | | | | | | | | Add TransitionManager.beginDelayedTransition() to handle starting a transition on the next frame for a given scene root based on all changes that take place between the first call to that method and the next animation frame. Issue #9321937 Transitions: consider batching up multiple scene actions Change-Id: I3fc92b6b4ec5ff42b1e678bcfd385703e32eba2a
* Merge "Additional functionality and performance for ArrayMap"Chet Haase2013-06-071-0/+68
|\
| * Additional functionality and performance for ArrayMapChet Haase2013-06-061-0/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added equals() and hashCode() to ArrayMap to allow equals() tests of maps with the same key/value pairs to return true. Changed putAll() to handle the case of an empty map faster, just copying the arrays instead of adding elements one by one. Added to ArrayMapTests to test new equals() and copy constructor functionality. Issue #9299310 Optimize ArrayMap copy constructor Change-Id: I1186a0eddd1fd53a0f380c2f3972fc1942cdf879
* | Remove unnecessary allocationsRomain Guy2013-06-061-5/+1
| | | | | | | | Change-Id: Ia561a0a312ca2737d5afa742184f5392bb2f29a3
* | Fix CrossFade transitionChet Haase2013-06-061-0/+2
|/ | | | | | | | Small fixes in CrossFade to handle more general situations. Also, added API to CrossFade to enable different behaviors during the transition. Change-Id: I12d17ab8f8f96be370c070373112ad8a62df9115
* Fix in transition canceling logicChet Haase2013-06-045-7/+40
| | | | | | | | The logic that canceled underlying animations caused a problem when there were more than one animation in the list (due to removing items from a list that was currently being processed elsewhere). Change-Id: Ie207f340b5d7de4ffcf56a26c05ec394abb80224
* Various fixes/cleanup in Scenes and TransitionsChet Haase2013-06-039-2/+182
| | | | | | | | | | | | | | | | setDuration() wasn't handled correctly for TransitionGroup; it should propagate the value to its children. Also, videos with no ids were not being handled correctly. The transition code was using the default id on those views (-1) to store start/end data about the view, causing multiple non-id views to clobber values in the hashmaps. The correct approach should be to ignore default id values - only store information about the view instances, not about the unset ids. Also, added a new test InterruptTest to be used to fix the current behavior of not handling situations where new transitions start while old ones are still taking place. Change-Id: I4e880bdbb33cc26d487bceb0d56e463e72f7621f
* Fix build; update framework tests for WindowManager API changeAdam Powell2013-05-311-1/+1
| | | | Change-Id: I801c455184f2a6771f50e29dc147402db48f9fb7
* Fix ambiguous clamp.Jason Sams2013-05-291-2/+2
| | | | Change-Id: I75a55bbfe6b8ef68242c8ecd0f70ef218829d110
* New ArrayMap class.Dianne Hackborn2013-05-243-1/+518
| | | | | | | | | | | | | | | | | | | | | | | | | This is a new kind of key/value mapping that stores its data as an array, so it doesn't need to create an extra Entry object for every mapping placed in to it. It is also optimized to reduce memory overhead in other ways, by keeping the base object small, being fairly aggressive about keeping the array data structures small, etc. There are some unit and performance tests dropped in to some random places; they will need to be put somewhere else once I decided what we are going to do with this for the next release (for example if we make it public the unit tests should go in to CTS). Switch IntentResolver to using ArrayMap instead of HashMap. Also get rid of a bunch of duplicate implementations of binarySearch, and add an optimization to the various sparse arrays where you can supply an explicit 0 capacity to prevent it from doing an initial array allocation; use this new optimization in a few places where it makes sense. Change-Id: I01ef2764680f8ae49938e2a2ed40dc01606a056b
* Add tessellation path for pointsChris Craik2013-05-143-2/+49
| | | | | | | | | | | | | | | | | | bug:4351353 bug:8185479 Point tessellation is similar to line special case, except that we only tessellate one point (as a circle or rect) and duplicate it across other instances. Additionally: Fixes square caps for AA=false lines Cleanup in CanvasCompare, disabling interpolation on zoomed-in comparison view Change-Id: I0756fcc4b20f77878fed0d8057297c80e82ed9dc
* Merge "Switch Fountain(Fbo) to use RSSurfaceView instead of RSTextureView."Stephen Hines2013-05-082-14/+11
|\
| * Switch Fountain(Fbo) to use RSSurfaceView instead of RSTextureView.Stephen Hines2013-05-062-14/+11
| | | | | | | | Change-Id: Ifb036e83d76270075de1e7de3b67bb00c645bff2
* | Pack preloaded framework assets in a texture atlasRomain Guy2013-05-022-0/+76
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the Android runtime starts, the system preloads a series of assets in the Zygote process. These assets are shared across all processes. Unfortunately, each one of these assets is later uploaded in its own OpenGL texture, once per process. This wastes memory and generates unnecessary OpenGL state changes. This CL introduces an asset server that provides an atlas to all processes. Note: bitmaps used by skia shaders are *not* sampled from the atlas. It's an uncommon use case and would require extra texture transforms in the GL shaders. WHAT IS THE ASSETS ATLAS The "assets atlas" is a single, shareable graphic buffer that contains all the system's preloaded bitmap drawables (this includes 9-patches.) The atlas is made of two distinct objects: the graphic buffer that contains the actual pixels and the map which indicates where each preloaded bitmap can be found in the atlas (essentially a pair of x and y coordinates.) HOW IS THE ASSETS ATLAS GENERATED Because we need to support a wide variety of devices and because it is easy to change the list of preloaded drawables, the atlas is generated at runtime, during the startup phase of the system process. There are several steps that lead to the atlas generation: 1. If the device is booting for the first time, or if the device was updated, we need to find the best atlas configuration. To do so, the atlas service tries a number of width, height and algorithm variations that allows us to pack as many assets as possible while using as little memory as possible. Once a best configuration is found, it gets written to disk in /data/system/framework_atlas 2. Given a best configuration (algorithm variant, dimensions and number of bitmaps that can be packed in the atlas), the atlas service packs all the preloaded bitmaps into a single graphic buffer object. 3. The packing is done using Skia in a temporary native bitmap. The Skia bitmap is then copied into the graphic buffer using OpenGL ES to benefit from texture swizzling. HOW PROCESSES USE THE ATLAS Whenever a process' hardware renderer initializes its EGL context, it queries the atlas service for the graphic buffer and the map. It is important to remember that both the context and the map will be valid for the lifetime of the hardware renderer (if the system process goes down, all apps get killed as well.) Every time the hardware renderer needs to render a bitmap, it first checks whether the bitmap can be found in the assets atlas. When the bitmap is part of the atlas, texture coordinates are remapped appropriately before rendering. Change-Id: I8eaecf53e7f6a33d90da3d0047c5ceec89ea3af0
* am e325f13c: am 4e0ae8d6: Merge "Make sure the app is still app after ↵Tsu Chiang Chuang2013-05-011-14/+61
|\ | | | | | | | | | | | | launching. Bug:8755950" into jb-mr2-dev * commit 'e325f13cf0a06b98e2a638784cd75c0c04f90956': Make sure the app is still app after launching. Bug:8755950
| * am 4e0ae8d6: Merge "Make sure the app is still app after launching. ↵Tsu Chiang Chuang2013-05-011-14/+61
| |\ | | | | | | | | | | | | | | | | | | Bug:8755950" into jb-mr2-dev * commit '4e0ae8d6fdc4646a90949ddf95fd8d1f7a22055a': Make sure the app is still app after launching. Bug:8755950
| | * Make sure the app is still app after launching.Tsu Chiang Chuang2013-05-011-14/+61
| | | | | | | | | | | | | | | | | | Bug:8755950 Change-Id: Ie30d84cb94787d8b2e7bdc65e329a311581f4a3f
* | | am e9ae6822: resolved conflicts for merge of 1f6e789b to jb-mr2-dev-plus-aospKenny Root2013-04-302-4/+4
|\ \ \ | |/ / | | | | | | | | | * commit 'e9ae6822a80cb1f3bd13c785f1727c03d35da52e': Track change to JSSE provider
| * | resolved conflicts for merge of 1f6e789b to jb-mr2-dev-plus-aospKenny Root2013-04-292-4/+4
| |\ \ | | |/ | |/| | | | Change-Id: I06c05d637613215b6d83df3e29cd495f6a5a0176
| | * Track change to JSSE providerKenny Root2013-04-292-4/+4
| | | | | | | | | | | | Change-Id: I35e824e47ad758ab6408e91e2ba5dcda053a82f5
| | * am cfa979b2: am b88564d2: am 12798957: am d1a18011: Merge "Fix image ↵Xia Wang2013-01-143-129/+363
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | processing test to include all benchmark tests -- each test case can be excuted separately -- add a test case to run all benchmarks." into jb-mr1-dev * commit 'cfa979b200a016dd24e851e0da0ce956aa932e2e': Fix image processing test to include all benchmark tests -- each test case can be excuted separately -- add a test case to run all benchmarks.
| | | * am d1a18011: Merge "Fix image processing test to include all benchmark tests ↵Xia Wang2013-01-143-129/+363
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- each test case can be excuted separately -- add a test case to run all benchmarks." into jb-mr1-dev * commit 'd1a18011a68b2cac907d080d9044d527fd4c5853': Fix image processing test to include all benchmark tests -- each test case can be excuted separately -- add a test case to run all benchmarks.
| | | | * Fix image processing test to include all benchmark testsXia Wang2013-01-143-129/+363
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- each test case can be excuted separately -- add a test case to run all benchmarks. DO NOT MERGE Change-Id: I3c61dfe50267a6db11bc1895a4f37ed618a9103b
* | | | | Fix build due to transition test errorsChet Haase2013-04-1828-28/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | erroneous inclusion of R file for test files is causing build breakage on the server. Remove the offending lines. Change-Id: I1948facc1b5e3f8b7415e0e6c4290b53a54f12af
* | | | | First draft of Scenes & Transitions featureChet Haase2013-04-1888-0/+3764
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This checkin has preliminary API (in flux, definitely changes still to be made) and implementation for a new "Scenes & Transitions" feature. The current implementation allows you to define different Scenes (via layout resource IDs or callbacks) and Transitions to be used when changing to those scenes. By default, scene changes will use AutoTransition, which generally does the right thing. There are no overview docs or tutorials yet. The best way to learn how things work is to see the code for the various tests in frameworks/base/tests/TransitionTests. Expect the API to change. Expect the implementation to change (mostly to add more functionality). Expect bugs, but tell me if things do not work as expected. Change-Id: Ib025a9f565678b225afa4759325cf6d496cc7215
* | | | | am 9b9fe68e: am 18455c30: Merge "Add input/output JSON data for baseline ↵Chris Craik2013-04-173-38/+213
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | comparison" into jb-mr2-dev * commit '9b9fe68ea3117041e570ca158d61201acefb0d8f': Add input/output JSON data for baseline comparison
| * | | | Merge "Add input/output JSON data for baseline comparison" into jb-mr2-devChris Craik2013-04-183-38/+213
| |\ \ \ \
| | * | | | Add input/output JSON data for baseline comparisonChris Craik2013-04-103-38/+213
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CanvasCompare will output a JSON file with test results, and can take such files as input for baseline comparison. The new logcat output breaks down results into per-test and per-modifier improvement and regressions. Change-Id: I4da0251db0637841173ac95e9f431a7ff52c8b61
* | | | | | am f7c6475d: am 85478b59: Skip apps without launch intent.Maxim Siniavine2013-04-101-0/+4
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | * commit 'f7c6475d0a89d057b60ca63e138c8fbb5a47f1a8': Skip apps without launch intent.
| * | | | | Skip apps without launch intent.Maxim Siniavine2013-04-101-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If an app from the apk cannot be launched then skip it in compatibility test, rather than generate a null pointer exception. Change-Id: I252031f249bfe25282b10394889ab8c5506cabcf
* | | | | | am 800d99f6: am 9fa49cc3: Merge "Fix [-] buttons in the notification builder ↵Daniel Sandler2013-04-091-10/+14
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | test." into jb-mr2-dev * commit '800d99f6b557b8684fbdbfc882bc9789ccd3d21f': Fix [-] buttons in the notification builder test.
| * | | | | Merge "Fix [-] buttons in the notification builder test." into jb-mr2-devDaniel Sandler2013-04-091-10/+14
| |\ \ \ \ \