1659 Commits

Author SHA1 Message Date
Jeff Brown
eba508a537 am 3e7497b4: Merge "Eliminate hw.keyboards system properties." into ics-mr1
* commit '3e7497b4eccd3db1d6ff0ce1f1f2db11f9a8eeef':
  Eliminate hw.keyboards system properties.
2011-11-15 19:19:04 -08:00
Jeff Brown
1e08fe90df Eliminate hw.keyboards system properties.
Stop using system properties to publish information about
the key character map path.  Instead, we can retrieve it
on demand by asking the window manager.

It was possible to exhaust the supply of system properties
when repeatedly adding and removing input devices.

Bug: 5532806
Change-Id: Idd361a24ad7db2edc185c8546db7fb05f9c28669
2011-11-15 18:00:10 -08:00
Dave Burke
3d151e1966 am 9d66da8a: Merge "Revert "Discard framebuffer rendering queues when discarding layers"" into ics-mr1
* commit '9d66da8ae61a8520f46ee7df3cbb374852d9da91':
  Revert "Discard framebuffer rendering queues when discarding layers"
2011-11-14 12:28:09 -08:00
Dave Burke
9d66da8ae6 Merge "Revert "Discard framebuffer rendering queues when discarding layers"" into ics-mr1 2011-11-14 12:25:53 -08:00
Mathias Agopian
d52e8636dc am c93a151f: Merge "Define, document, and test the behavior of very large SurfaceTextures" into ics-mr1
* commit 'c93a151fde7d616c22b86ae458b3d015e3820d5e':
  Define, document, and test the behavior of very large SurfaceTextures
2011-11-14 11:51:36 -08:00
Mathias Agopian
c93a151fde Merge "Define, document, and test the behavior of very large SurfaceTextures" into ics-mr1 2011-11-14 11:49:42 -08:00
Dave Burke
7077506f99 Revert "Discard framebuffer rendering queues when discarding layers"
This reverts commit da96f8ac2c1c35a54f3f36e6d776cb386a251d03.
2011-11-14 11:39:30 -08:00
Mathias Agopian
7c112d1bfb am 28587497: Merge "Discard framebuffer rendering queues when discarding layers Bug #5581817" into ics-mr1
* commit '2858749704ea7b130499cf2ac7b3e1c3331f1582':
  Discard framebuffer rendering queues when discarding layers Bug #5581817
2011-11-14 00:54:30 -08:00
Mathias Agopian
2858749704 Merge "Discard framebuffer rendering queues when discarding layers Bug #5581817" into ics-mr1 2011-11-14 00:52:09 -08:00
Jeff Brown
9f26b5aee6 am 6f0464e7: am f1f0c873: Fix bug in TextLayoutCacheKey handling embedded nulls.
* commit '6f0464e79d6d41d8255a6b0b6695fa7f67a0f65f':
  Fix bug in TextLayoutCacheKey handling embedded nulls.
2011-11-11 20:34:39 -08:00
Jeff Brown
6f0464e79d am f1f0c873: Fix bug in TextLayoutCacheKey handling embedded nulls.
* commit 'f1f0c873b1d119a19342cb67ca77b59607951659':
  Fix bug in TextLayoutCacheKey handling embedded nulls.
2011-11-11 19:22:04 -08:00
Mathias Agopian
b89d88f531 Define, document, and test the behavior of very large SurfaceTextures
updateTexImage() now throws a runtime exception when its native
counterpart fails

Bug: 5506633

Change-Id: I151a6f685d465966e7df4df624412ab2da62e95f
2011-11-11 18:44:35 -08:00
Jeff Brown
f1f0c873b1 Fix bug in TextLayoutCacheKey handling embedded nulls.
We were not passing the length of the UTF-16 string to
String16::setTo.  As a result, it was copying the contents of
the text up to the first null it found.

First problem, these strings are not typically null terminated!

Second problem, if the string contained a null character, then
we might truncate it.  However, we only truncated the string
when the copy constructor was invoked (say, when we called
get() on the cache) but not in internalTextCopy() (before
adding the key to the cache).

As a result of the second problem, we would first search
the cache for a key that matched a partially copied truncated
string (potentially reading uninitialized memory that followed it).
Finding none, we would add the entry to the cache using
the correct key.

If the cache already had a value associated with the correct key,
then the put would fail, returning false.  Charging ever onwards,
we would add the size of the entry to the cache size.

Proceeding in this manner, it was possible for the cache to
believe it had less remaining space than it really did.  At that
point, it was possible for the cache to evict all entries and
yet still not think it had room to add a new one, so it would
continue trying to make space indefinitely.

Bug: 5576812
Change-Id: I05251594f6b2da0a5dc09f7200f04fe9100ec766
2011-11-11 15:41:40 -08:00
Martijn Coenen
5fc843df31 am 99898de9: Merge "Fix NdefRecord byte-stream constructor." into ics-mr1
* commit '99898de902c36687be126b33ee8a4858d26871ac':
  Fix NdefRecord byte-stream constructor.
2011-11-11 11:49:48 -08:00
Romain Guy
85ab135b2b am 50a66f0e: Merge "Terminate EGL when an app goes in the background" into ics-mr1
* commit '50a66f0e9c5a85a6af4a99eb66656a69eba24572':
  Terminate EGL when an app goes in the background
2011-11-11 11:49:42 -08:00
Romain Guy
da96f8ac2c Discard framebuffer rendering queues when discarding layers
Bug #5581817

Change-Id: If612846ec5f7793710fc4df152791fb32c506551
2011-11-10 19:23:58 -08:00
Martijn Coenen
99898de902 Merge "Fix NdefRecord byte-stream constructor." into ics-mr1 2011-11-10 17:40:20 -08:00
Romain Guy
50a66f0e9c Merge "Terminate EGL when an app goes in the background" into ics-mr1 2011-11-10 17:10:41 -08:00
Romain Guy
8ff6b9ebee Terminate EGL when an app goes in the background
This does not happen on high end gfx devices. This happens
only if only one EGL context is initialized in the current
process.

Change-Id: Ibd1737efdf84eef8a84108b05795440d1ae9964e
2011-11-10 16:44:49 -08:00
Martijn Coenen
ef565c4393 Fix NdefRecord byte-stream constructor.
Bug: 5601404
Change-Id: I30fada97487829a8b2ccc1a1e7a32837c29ddd70
2011-11-10 15:20:14 -08:00
Romain Guy
ed68299b99 am a3cc20ff: Merge "Initialize egl_cache with an app writeable file" into ics-mr1
* commit 'a3cc20fff073bd3ca588f1e61f0f7034aecf3ebb':
  Initialize egl_cache with an app writeable file
2011-11-10 23:04:19 +00:00
Romain Guy
a3cc20fff0 Merge "Initialize egl_cache with an app writeable file" into ics-mr1 2011-11-10 15:02:07 -08:00
Romain Guy
a958265827 Initialize egl_cache with an app writeable file
Change-Id: I5dda234feab0fedd6e4179a80715ae20dee1c833
2011-11-10 14:20:10 -08:00
Jeff Brown
6e1c362a21 am e7de36e6: Merge "Throw TransactionTooLargeException when Binder transaction fails. Bug: 5578022" into ics-mr1
* commit 'e7de36e605e0ccf4552c8ee1db40cb9af3227cf4':
  Throw TransactionTooLargeException when Binder transaction fails. Bug: 5578022
2011-11-09 19:22:14 +00:00
Jeff Brown
0bde66a837 Throw TransactionTooLargeException when Binder transaction fails.
Bug: 5578022

Previously, Binder transactions failed silently, which caused
problems because apps would carry on assuming that the operation
had succeeded.  Often, the apps would crash soon due to a violated
invariant, but sometimes they managed to do some damage first...

Change-Id: Ia9cc98b3b761a8160e7c4e87507860b5912c0451
2011-11-08 20:42:11 -08:00
Fabrice Di Meglio
de0513adaf am 07b4b314: am bcf05a69: Fix bug #5553401 TextLayoutCache is too verbose: "computeValuesWithHarfbuzz -- need to force to single run"
* commit '07b4b3145333bc8ece9fdbb68ade726b3d6485cd':
  Fix bug #5553401 TextLayoutCache is too verbose: "computeValuesWithHarfbuzz -- need to force to single run"
2011-11-02 02:20:19 +00:00
Fabrice Di Meglio
07b4b31453 am bcf05a69: Fix bug #5553401 TextLayoutCache is too verbose: "computeValuesWithHarfbuzz -- need to force to single run"
* commit 'bcf05a69090f342d328f1537d1d83406b883290b':
  Fix bug #5553401 TextLayoutCache is too verbose: "computeValuesWithHarfbuzz -- need to force to single run"
2011-11-02 02:17:48 +00:00
Fabrice Di Meglio
bcf05a6909 Fix bug #5553401 TextLayoutCache is too verbose: "computeValuesWithHarfbuzz -- need to force to single run"
- make single run case non verbose

Change-Id: I5c3b87aeb613697233290ddecac3ca00f58f8313
2011-11-01 17:58:00 -07:00
Fabrice Di Meglio
65a466ae46 am 3b8d33b1: Merge "Fix bug #5504346 Hung in native_getTextRunAdvances - DO NOT MERGE" into ics-mr1
* commit '3b8d33b131956f3a1b41c15dbe07b1b2d7f44086':
  Fix bug #5504346 Hung in native_getTextRunAdvances - DO NOT MERGE
2011-11-01 20:32:40 +00:00
Robert Greenwalt
5b189a071a am 852d72b2: am bd9b1528: Merge "Add cdma_rmnet4 to list of monitored interfaces" into ics-mr0
* commit '852d72b28e6d7d0e6372a9b544641817338002e6':
  Add cdma_rmnet4 to list of monitored interfaces
2011-11-01 20:32:38 +00:00
Fabrice Di Meglio
3b8d33b131 Merge "Fix bug #5504346 Hung in native_getTextRunAdvances - DO NOT MERGE" into ics-mr1 2011-11-01 13:30:24 -07:00
Robert Greenwalt
852d72b28e am bd9b1528: Merge "Add cdma_rmnet4 to list of monitored interfaces" into ics-mr0
* commit 'bd9b1528051a1b257768fdbc5077a2d4473b02dd':
  Add cdma_rmnet4 to list of monitored interfaces
2011-11-01 20:29:42 +00:00
Robert Greenwalt
bd9b152805 Merge "Add cdma_rmnet4 to list of monitored interfaces" into ics-mr0 2011-11-01 13:27:56 -07:00
Fabrice Di Meglio
904221a342 Fix bug #5504346 Hung in native_getTextRunAdvances - DO NOT MERGE
- better check of ICU returned values
- default to single run if ICU is returning errors

Change-Id: I836818bda4fc72a27b2201f01023cd23c5d99ecb
2011-11-01 12:47:51 -07:00
Robert Greenwalt
57c8ac6e13 Add cdma_rmnet4 to list of monitored interfaces
Lets the data traffic arrows work on LTE device on 1x,
but also lets telephony monitor for hung radios on 1X.

bug:5531630
Change-Id: I9fa25a5223afaa2e37373668c899ac28a95783fa
2011-11-01 11:51:27 -07:00
Fabrice Di Meglio
26e9ee28de Fix bug #5504346 Hung in native_getTextRunAdvances - DO NOT MERGE
- better check of ICU returned values
- default to single run if ICU is returning errors

Change-Id: I836818bda4fc72a27b2201f01023cd23c5d99ecb
2011-11-01 10:49:44 -07:00
Ed Heyl
92537e6ff2 merged by hand (services/java/com/android/server/PowerManagerService.java needs to be reviewed)
Change-Id: I86d1111d86cd1646ebc8a88d58aa393089e9f928
2011-10-31 06:06:27 -07:00
Jeff Brown
bce4561708 resolved conflicts for merge of 2d280f75 to ics-mr1
Change-Id: I459e1cb0b60fb94dfb12862fedb9f8d949c226a7
2011-10-30 14:24:02 -07:00
Jeff Brown
89101cd9d9 Improve the slow query instrumentation.
On user-debug and eng builds, you can set the
"db.log.slow_query_threshold" system property to queries that
take longer than the specified number of milliseconds.
Set it to 0 to log all queries.

This property has been around for a while but it was implemented
poorly.  In particular, it *changed* the behavior of the query
by calling getCount() while holding the Db connection.
In normal operation, the query will not actually run until later.

By putting the timing logic into fillWindow() instead, we ensure
that we only measure queries that actually ran.  We also capture
cases where the cursor window gets filled multiple times.

Bug: 5520301
Change-Id: I174f5e1ea15831a1d22a36e9a804d7755f230b38
2011-10-28 14:58:39 -07:00
Mike Lockwood
dff25597a9 Simple master volume support
Still needs integration with Settings (for persistence) and VolumePanel UI.

Change-Id: I9eca92c4b1ef2df2564411006a35753ab9618dce
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-10-28 10:14:53 -04:00
Girts Folkmanis
a7983bff03 Disable output processing when opening serial port.
If post processing is not disabled, we end up translating LF to CRLF, which
makes binary protocols sad.

Change-Id: I43ddd0c690c0d00f5e9416a2397b43d5153491d3
2011-10-28 10:14:52 -04:00
Mike Lockwood
05353f61b4 Add SerialPort.sendBreak()
Change-Id: Ibc0ac50a5358761cce699f189a142e91e79cf835
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-10-28 10:14:50 -04:00
Mike Lockwood
e0ded6710a New Serial Manager API:
SerialManager: provides access to serial ports
SerialPort: for reading and writing data to and from serial ports

IO with both array based and direct ByteBuffers is supported.

Accessing serial ports requires android.permission.SERIAL_PORT permission

Each platform must configure list of supported serial ports in the
config_serialPorts resource overlay
(this is needed to prevent apps from accidentally accessing the bluetooth
or other system UARTs).

In addition, the platform uevent.rc file must set the owner to the
/dev/tty* files to "system" so the framework can access the port.

Change-Id: I8d75ca7d6592223ea6c47f8a17fa180dfed1aad0
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-10-28 10:14:49 -04:00
Mike Lockwood
a0a8b249bc Add headless mode for running the framework without the surface flinger
Enabled by setting system property ro.config.headless to 1
This will allow the framework to run without starting activities,
system UI and the keyguard.
Framework can still run services, content providers and broadcast receivers.

Change-Id: I96606609a4ede57a2c4c7fb2b6ff060ebf31e3b4
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-10-28 10:14:47 -04:00
Fabrice Di Meglio
44cd3f8f3d Merge "Fix compilation issue when DEBUG_GLYPHS define is activated" 2011-10-20 18:58:03 -07:00
Fabrice Di Meglio
a99ed6284e Fix compilation issue when DEBUG_GLYPHS define is activated
Change-Id: I61693952ffdc02f77058311fc982fbbf8df24c6c
2011-10-19 16:40:02 -07:00
Romain Guy
2c183fa5bf Notify a Bitmap is has changed when calling copyPixelFromBuffer
Change-Id: Ibff1a162edfe11473c5c167e764405bf83ec5822
2011-10-18 17:56:06 -07:00
Jeff Brown
5e5d6d8ba0 Deprecate local-only CursorWindows.
There is no difference and has never really been a difference
between local-only and remotable CursorWindows.  By removing the
distinction officially in the API, we will make it easier to
implement CrossProcessCursor correctly.  CrossProcessCursor
is problematic currently because it's not clear whether a call
to getWindow() will return a local-only window or a remotable window.
As a result, the bulk cursor adaptor has special case handling
for AbstractWindowedCursors vs. ordinary CrossProcessCursors
so that it can set a remotable window before the cursor fills it.
All these problems go away if we just forget about local-only
windows being special in any way.

Change-Id: Ie59f517968e33d0ecb239c3c4f60206495e8f376
2011-10-12 22:19:41 -07:00
Jeff Brown
0cde89f5f0 Use ashmem for CursorWindows.
Bug: 5332296

The memory dealer introduces additional delays for reclaiming
the memory owned by CursorWindows because the Binder object must
be finalized.  Using ashmem instead gives CursorWindow more
direct control over the lifetime of the shared memory region.

The provider now allocates the CursorWindows and returns them
to clients with a read-only protection bit set on the ashmem
region.

Improved the encapsulation of CursorWindow.  Callers shouldn't
need to care about details like how string fields are allocated.

Removed the compile-time configuration of string and numeric
storage modes to remove some dead weight.

Change-Id: I07c2bc2a9c573d7e435dcaecd269d25ea9807acd
2011-10-11 11:03:19 -07:00
Jeff Brown
270928bd4a Merge changes Idbfeb3cc,I03e8e2e7,Iff9eed78
* changes:
  Fix regression in CursorWindow.getString() Bug: 5332296
  Clean up CursorWindow lifetime. Bug: 5332296
  Fix regression in CursorWindow.copyStingToBuffer. Bug: 5332296
2011-10-07 15:08:24 -07:00