Merge commit '745d1e905886ed0d8fa0a8590463093d125bc53a' into gingerbread-plus-aosp
* commit '745d1e905886ed0d8fa0a8590463093d125bc53a':
Update javadoc for the API and change return of getBondedDevices().
Merge commit '63cca69157eae17da2a5492d1bcb7330061a52ac' into gingerbread-plus-aosp
* commit '63cca69157eae17da2a5492d1bcb7330061a52ac':
Make sure profiling is done only for views that are actually measured, laid out and drawn.
Merge commit 'cbaef51847ab8d8c4d039f0e425d434811f77f0d' into gingerbread-plus-aosp
* commit 'cbaef51847ab8d8c4d039f0e425d434811f77f0d':
Check whether Bluetooth is enabled before making any API calls.
Uses a linked list for efficient pointer addition and removal.
When possible, makes use of the fact that pointer ids are usually in
sorted order to avoid quadratic time lookups when adding new data.
Fixed an incorrect assumption that the pointer count would always change
when old pointers were removed.
Also fixed a bug in InputQueue FinishedCallback recycling.
Change-Id: Ie048d3bb022d39cf4185e2fe43923a861d94c4f3
The client of the loader may have already closed the cursor,
so we need to forget it, otherwise the closed cursor
will be redelivered on start.
Change-Id: I30e005ea0827966956bc276a2d3d7b13c95850af
getBondedDevices() *might* work if called before the Bluetooth
State intent is broadcasted. However, this can cause ANRs and problems.
This API was updated to return null, if called before the intent
is received. However, this might cause existing apps to crash. Return
an empty set instead.
Change-Id: Ibc484d3394aa0bbebd651221efde6a7015ce7110
For example, Settings app makes calls to get Bonded Devices
before Bluetooth is on. This leads to ANRs and will
prevent autoconnection.
Change-Id: I56748a9bd1d603b5782c17775c6b20b831bf6572
This change also removes the use of SoftReferences for View's
drawing cache.
A bitmap now creates a PhantomReference enqueued in a reference
queue provided by the new Finalizers class. This queue is polled
from a thread started after forking zygote. That thread is in charge
of clearing the references after GC runs and of calling reclaim()
on them. The reclaim() method is now how finalizers are run.
Note that a PhantomReference cannot be kept in the instance it
refers to, which is why they are kept in a separate List.
Change-Id: If3c1a5e9dc23fa49e34857860d730f5cf5ad5926
This introduces basic infrastructure that should allow content
providers holding complex data to perform on-demand conversion
of their data to streams of various types. It is achieved through
two new content provider APIs, one to interrogate the possible
stream MIME types the provider can return, and the other to
request a stream of data in a particular MIME type.
Because implementations of this will often need to do on-demand
data conversion, there is also a utility intoduced in ContentProvider
for subclasses to easily run a function to write data into a
pipe that is read by the client.
This feature is mostly intended for cut and paste and drag and
drop, as the complex data interchange allowing the source and
destination to negotiate data types and copy (possible large)
data between them. However because it is fundamental facility
of ContentProvider, it can be used in other places, such as for
more advanced GET_CONTENT data exchanges.
An example implementation of this would be in ContactsProvider,
which can now provider a data stream when a client opens certain
pieces of it data, to return data as flat text, a vcard, or other
format.
Change-Id: I58627ea4ed359aa7cf2c66274adb18306c209cb2
The makefile variable USE_OPENGL_RENDERER must be set to true to compile
libhwui and the related code in the JNI layer.
This change also removes obsolete APIs from Canvas that must not be used
and would be confusing if left in. These APIs were remnants of our first
attempt at an OpenGL renderer for the view hierarchy and had not been
taken out before Android 1.0 was released.
Change-Id: I2475ff1307212bab26c926724f3c508681c7dae1
Merge commit '6f50a956803c6ccedaec71f11ecd72f8fa7efe52'
* commit '6f50a956803c6ccedaec71f11ecd72f8fa7efe52':
COMMENT ONLY change to fix some formatting glitches and
Merge commit '799f2bb04102b4b692b52eed5c36aea9a8cde471' into gingerbread-plus-aosp
* commit '799f2bb04102b4b692b52eed5c36aea9a8cde471':
COMMENT ONLY change to fix some formatting glitches and
Merge commit 'b37bca9e79489a1abd848ce762bb7d87203b3414' into gingerbread
* commit 'b37bca9e79489a1abd848ce762bb7d87203b3414':
COMMENT ONLY change to fix some formatting glitches and
Merge commit 'db86c59e6280cb2ebeeda09ba8dee4a1440dea1d' into gingerbread-plus-aosp
* commit 'db86c59e6280cb2ebeeda09ba8dee4a1440dea1d':
New drawables for the update to the maps API (DO NOT MERGE)
Merge commit '8e15afe799bbe8d332640c1f2b57b5e0458a9625' into gingerbread-plus-aosp
* commit '8e15afe799bbe8d332640c1f2b57b5e0458a9625':
Make downloads visible by default.
Complex characters like chinese are sent via the onKeyMultiple()
callback. The WebView passes these characters to Webkit so that
non-text inputs (e.g. plugins) can process them.
Change-Id: I159c4a404c195b60cc7f63ef4bff0aa80db96c3f
http://b/2900114
This matches the previous behavior of java.io.File file and directory creation.
BUG: 2898660
Change-Id: Ie8978a3fc44abfd22f8046e66742e715354220a8
Signed-off-by: Mike Lockwood <lockwood@android.com>
Merge commit '7324489f18ee01586931f577f00567092cbf52df' into gingerbread-plus-aosp
* commit '7324489f18ee01586931f577f00567092cbf52df':
Add SIP service into system server.
Since orientation sensing has been an issue for numerous users, I
decided a spend a little time experimenting with some possible
improvements. I've settled on a couple major changes:
* Perform all lowpass filtering in spherical coordinates, not
cartesian. Since the rotations are what we're really concerned
with, this makes more sense and gives more consistent results.
* Introduce a system of tracking "distrust" in the current data, based
on external acceleration and on tilt. The basic idea is after a
signal of unreliable data -- repeated acceleration or
nearly-horizontal tilt -- we wait for things to "stabilize" for some
number of ticks before we start trusting the data again. This is an
extension of the basic lowpass filtering. One simple example is
after the phone is picked up off a table, we ignore the first few
readings. Another example is while the phone is under external
acceleration for a while (i.e. in a car mount on a rough road), if a
single "good" reading comes in, we distrust it, under the assumption
that it was probably just a lucky reading (i.e. the magnitude
happened to be close to that of gravity by chance).
These changes have allowed me to relax other constraints, such as the
filtering time constants, the maximum deviation from gravity, and the
max tilt before we start distrusting data.
The net effect is that orientation changes happen more quickly and can
happen under a wider variety of conditions, but false changes due to
tilt and acceleration are still avoided well. I think the improvement
is subtle, but it's the best I've come up with in my limited time.
I've also included some refactoring and additonal comments to try and
further clarify the (somewhat twisted) logic.
Change-Id: I34c7297bd2061fae8317ffefd32a85c7538a3efb
- Weren't re-attaching to the current loader manager after retaining
instance state.
- Ensure loaders are being destroyed.
- Fix a bug if you call restartLoader() inside of onLoadFinished().
Change-Id: I89df53db49d8e09047bf55216ebeb0f133c059e7