1027 Commits

Author SHA1 Message Date
Brad Fitzpatrick
33710fc4a9 am 096c4c44: am 251384a7: Merge "Improve performance when getting styled string."
* commit '096c4c448d8110c21108f2db4a19a85099e78557':
  Improve performance when getting styled string.
2010-11-19 10:27:56 -08:00
Brad Fitzpatrick
096c4c448d am 251384a7: Merge "Improve performance when getting styled string."
* commit '251384a7595022ddbc53f4ab0fa386f9c040f1f5':
  Improve performance when getting styled string.
2010-11-19 10:25:09 -08:00
Jeff Brown
6b53e8daa6 Added support for full PC-style keyboards.
BREAKING CHANGE: Redesigned the key character map format to
accomodate full keyboards with more comprehensive suite of modifiers.
Old key character maps will not work anymore and must be updated.
The new format is plain text only and it not compiled to a binary
file (so the "kcm" tool will be removed in a subsequent check-in).

Added FULL keyboard type to support full PC-style keyboards.

Added SPECIAL_FUNCTION keyboard type to support special function
keypads that do not have any printable keys suitable for typing
and only have keys like HOME and POWER

Added a special VIRTUAL_KEYBOARD device id convention that maps
to a virtual keyboard with a fixed known layout.  This is designed
to work around issues injecting input events on devices whose
built-in keyboard does not have a useful key character map (ie.
when the built-in keyboard is a special function keyboard only.)

Modified several places where events were being synthesized
to use the virtual keyboard.

Removed support for the "qwerty" default layout.
The new default layout is "Generic".  For the most part "qwerty"
was being used as a backstop in case the built-in keyboard did
not have a key character map (probably because it was a special
function keypad) and the framework needed to be able to inject
key events anyways.  The latter issue is resolved by using the
special VIRTUAL_KEYBOARD device instead of BUILT_IN_KEYBOARD.

Added the concept of a key modifier behavior so that
MetaKeyKeyListener can distinguish between keyboards that use
chorded vs. toggled modifiers.

Wrote more robust key layout and key character map parsers
to enable support for new keyboard features and user installable
key maps.

Fixed a bug in InputReader generating key ups when keys
are released out of sequence.

Updated tons of documentation.

Currently QwertyKeyListener is being used for full keyboards
with autotext and capitalization disabled.  This mostly works
but causes some problems with character pickers, etc.
These issues will be resolved in subsequent changes.

Change-Id: Ica48f6097a551141c215bc0d2c6f7b3fb634d354
2010-11-18 09:49:03 -08:00
Peter Eliasson
ac4a181d2e Improve performance when getting styled string.
The style used in the composing text for input methods
takes a long time to create. This is experienced as a
lag when composing the first word.

The bottleneck lies in the 10 calls to
nativeIndexOfString which does a linear search through
thousands of strings.

Change-Id: I3184b2be3673d384cca19e9a70ad94b4d3085576
2010-11-18 07:28:06 +01:00
Andreas Huber
a8079bfb9a Apparently SystemProperties jni native support must now be registered before Binder's.
Change-Id: Ia7197f41052c4d47dbecec400a7c789317f743a0
2010-11-16 14:48:44 -08:00
Kenny Root
b763fa1d7c Merge "Split UTF functions from String8/16" 2010-11-15 11:11:22 -08:00
Kenny Root
300ba68469 Split UTF functions from String8/16
Split out all the UTF-8/16/32 handling code from String8/16 to its own
file to allow better reuse of code.

Change-Id: If9ce63920edc75472c38da4adce0d13cda9ad2f7
2010-11-12 15:53:40 -08:00
Romain Guy
fe48f65922 Free resources only from the GL context thread.
Bug #3179882

Resources were freed following garbage collections on a worker thread.
This worker thread had no EGL context, which would cause the renderer
to incorrectly assume that the memory was liberated.

Change-Id: Ifdb51f94ddf42641e8654522787bfac532976c7c
2010-11-11 15:36:56 -08:00
Jeff Brown
5314335c9e am 00e5dd44: Merge "Fix JNI reference leak in NativeActivity. (DO NOT MERGE)" into gingerbread
* commit '00e5dd44f6d014fff8c65b9c718f5641f5eae4bb':
  Fix JNI reference leak in NativeActivity. (DO NOT MERGE)
2010-11-10 16:04:13 -08:00
Jeff Brown
00e5dd44f6 Merge "Fix JNI reference leak in NativeActivity. (DO NOT MERGE)" into gingerbread 2010-11-10 16:00:37 -08:00
Jeff Hamilton
e7f3396130 am cc798d96: am 2e2983c6: Merge "Reduce log clutter." into gingerbread
* commit 'cc798d9675b105775c9736fc68b68d7c8cd0c5a7':
  Reduce log clutter.
2010-11-09 07:06:02 -08:00
Jeff Hamilton
cc798d9675 am 2e2983c6: Merge "Reduce log clutter." into gingerbread
* commit '2e2983c6efe0e4223086e4675b715ed0e20e8d26':
  Reduce log clutter.
2010-11-09 06:59:33 -08:00
Jeff Brown
8f6068e63e Fix JNI reference leak in NativeActivity. (DO NOT MERGE)
This change ensures that the native activity releases the KeyEvent
objects that it allocates since they will not be released
automatically and eventually the JNI slot table will overflow
and crash the process.

Bug: 3170494
Change-Id: I2ea527f056096fae9bc9e7685dccb56ec7a0e8b4
2010-11-08 16:03:13 -08:00
Romain Guy
d8acf9b682 Merge "Support nested display lists." 2010-11-08 14:03:30 -08:00
Jeff Brown
3915bb845b Tell system server whether the app handled input events.
Refactored ViewRoot, NativeActivity and related classes to tell the
dispatcher whether an input event was actually handled by the application.

This will be used to move more of the global default key processing
into the system server instead of the application.

Change-Id: If06b98b6f45c543e5ac5b1eae2b3baf9371fba28
2010-11-08 12:49:43 -08:00
Romain Guy
0fe478ea04 Support nested display lists.
Change-Id: I3815a2832fc0f722c668ba8f51c5f177edb77c94
2010-11-08 12:15:28 -08:00
Jeff Hamilton
5629d51f22 Reduce log clutter.
Change-Id: Ia034b563b028d74b4878f1af7db9188c82d03548
2010-11-08 13:18:49 -06:00
Vasu Nori
5be894e636 add API to return Uri for the given downloaded file id & get mimetype
Change-Id: I1f5dd734e394db0056579a3a0c26862fee27981e
2010-11-04 17:57:24 -07:00
Chet Haase
6e0ecb4eed Adding JNI methods as a faster reflection mechanism
This approach is only for the common cases of void-return,
single-argument float/int methods.

Change-Id: Ifb31535a6f717b85417eced93c579be6e461e039
2010-11-04 13:37:45 -07:00
Bryan Mawhinney
8dc287de7f Merge "Avoid copying byte arrays when just decoding bounds." 2010-11-03 14:05:54 -07:00
Bryan Mawhinney
2a3d754549 Avoid copying byte arrays when just decoding bounds.
Currently, if a caller specifies both "purgeable" and "just decode
bounds" options when passing a byte array to decode, we create an
unnecessary copy of the byte array.  This is probably not common,
but we may as well avoid the copy.

Change-Id: I27e573b0e1fb8f8516729882a84efa02b6da08a5
2010-11-03 17:23:57 +00:00
Irfan Sheriff
ed4f28b492 Set country code in the driver and remove channel set
With dual band support, using country code
settings is the way to go

Bug: 2936741
Change-Id: I760dce4c43b1af19ee205c28f0d287420c8d9e85
2010-11-02 16:35:56 -07:00
Kenny Root
55fc850cf9 Add path to get different DPI drawables
Allow a caller to request a different density than their current display
allows. This can mean a device displaying mdpi can get a resource that's
in hdpi and have it pretend to be in mdpi resolution. If a drawable
that's returned is not in the requested density, it will set it at the
appropriate density to be scaled up later on.

The API for this is hidden currently.

Bug: 3134688
Change-Id: I6c3908cbdef4907b8d3f1576df9e3b0e7af1755a
2010-10-29 12:47:07 -07:00
Irfan Sheriff
a8413beb39 Merge "WifiLock extensions for high performance mode" 2010-10-26 16:08:29 -07:00
Irfan Sheriff
5876a4273e WifiLock extensions for high performance mode
Add extension to WifiLock to allow apps to operate
in high performance mode (high power & disable suspend
optimizations for battery consumption).

Bug: 2834260
Change-Id: Id394d265b9876bf0230efb3d222056e9b80b44fd
2010-10-26 13:25:03 -07:00
Chet Haase
9440083be2 Merge "Optimizing ColorFilter in display lists" 2010-10-26 12:53:57 -07:00
Chet Haase
ad93c2bb63 Optimizing ColorFilter in display lists
Change-Id: Ie4d5e5b0bc45e0ce47bba144049303c270762e54
2010-10-26 12:52:03 -07:00
Patrick Scott
bb8300e155 Merge "Fix debug statements and aapt assert." 2010-10-26 11:26:19 -07:00
Irfan Sheriff
f235c5ab91 add wps pin from device capability
Bug: 3119043
Bug: 3112178
Change-Id: Iaae6bcf53e11f7fac82b3c604ddc27ff05e00542
2010-10-26 10:48:11 -07:00
Patrick Scott
4f145c9674 Fix debug statements and aapt assert.
ENABLE_PSEUDOLOCALIZE seems to not exist.

Change-Id: Ifef771a96938c7ff0f8b664142bb502030b8c543
2010-10-26 13:22:17 -04:00
Chet Haase
dcaff67a80 Merge "DisplayList optimizations and fixes." 2010-10-26 06:59:19 -07:00
Chet Haase
d98aa2de9a DisplayList optimizations and fixes.
We now use a copy of SkPaint objects to avoid having it changed from under us.
We reuse copies that have not changed. We also copy the SkMatrix every time to
avoid the same problem.

Change-Id: If3fd80698f2d43ea16d23302063e0fd8d0549027
2010-10-26 06:54:55 -07:00
Jaikumar Ganesh
b1ef244732 Clean up some logging to make it more useful to debug.
Change-Id: Ic30210ea6886b1c4630d7671a4b01736512e9da8
2010-10-26 00:15:45 -07:00
Jaikumar Ganesh
ff7db40be1 Make setting the adapter properties asynchronous.
1. These involve disk operations and multiple processes.
2. onPropertyChange already informs us asychronously.
3. Settings app is the only user, will have to revisit the function
   if we make them public.

Change-Id: If019a83c05a0c9e625f27faf99063d33f369f0d8
2010-10-25 16:36:45 -07:00
Dianne Hackborn
6ab84eeb0f am c2f78020: am 23656899: Merge "Fix issue #3126018: No way to specify NativeActivity\'s native method" into gingerbread
Merge commit 'c2f78020d3887539fc90230d96465e4b1dc84d8e'

* commit 'c2f78020d3887539fc90230d96465e4b1dc84d8e':
  Fix issue #3126018: No way to specify NativeActivity's native method
2010-10-24 18:42:12 -07:00
Dianne Hackborn
c2f78020d3 am 23656899: Merge "Fix issue #3126018: No way to specify NativeActivity\'s native method" into gingerbread
Merge commit '236568999411214ef440cabc6d12e3bf5f19d8f4' into gingerbread-plus-aosp

* commit '236568999411214ef440cabc6d12e3bf5f19d8f4':
  Fix issue #3126018: No way to specify NativeActivity's native method
2010-10-24 18:38:11 -07:00
Dianne Hackborn
e21d91c694 Fix issue #3126018: No way to specify NativeActivity's native method
Change-Id: I59de6a543e7f7f45d963a905829a3f56f32bf8cf
2010-10-24 14:56:38 -07:00
Wei-Ta Chen
50db92c452 Merge "Fix 3122139, where previewing an attachment for the second time will fail." 2010-10-22 11:22:59 -07:00
Nick Pelly
d29c990874 am c81ec79d: am 0592832c: Merge "Attempt to fix simulator build." into gingerbread
Merge commit 'c81ec79d1f88ae8a80e08560a56845655a74f67e'

* commit 'c81ec79d1f88ae8a80e08560a56845655a74f67e':
  Attempt to fix simulator build.
2010-10-22 09:17:41 -07:00
Nick Pelly
c81ec79d1f am 0592832c: Merge "Attempt to fix simulator build." into gingerbread
Merge commit '0592832c5e61b9c0008a4410f263ea0b0b991f05' into gingerbread-plus-aosp

* commit '0592832c5e61b9c0008a4410f263ea0b0b991f05':
  Attempt to fix simulator build.
2010-10-22 09:03:21 -07:00
Chet Haase
27f0b17d85 Fix native resource leak when OpenGL renderer is not being used.
Native resources (bitmaps, matrices, paints, shaders) are shared when display lists
are used, and a refcounting system is in place to take care of disposing when all
clients are finished with them. But the cache where these refcounts are tracked is
not enabled when the Open GL renderer is not being used. This results in the native
destructors not being called, and the resources are leaked.

Change-Id: Ic7aeb55e4636dcad229846601407e596160346e6
2010-10-22 08:57:48 -07:00
Nick Pelly
1af97f0b78 Attempt to fix simulator build.
Change-Id: I7f912ce58292bdd03fa683d2e5c203480d94e945
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-22 08:48:48 -07:00
Wei-Ta Chen
58c1579ce2 Fix 3122139, where previewing an attachment for the second time will
fail.

Use AutoFDSeek to mark and restore the position before we read data from
the descriptor.

Change-Id: I3d4f012dce486e19b113bc90a98b94031cfa8195
2010-10-21 23:40:12 -07:00
Jeff Hamilton
de8635e4c4 am 389a440a: Backport ParcelFileDescriptor.createPipe() from master.
Merge commit '389a440ad13f7b16e8f7c7f1670bdd55f1e2112a' into gingerbread-plus-aosp

* commit '389a440ad13f7b16e8f7c7f1670bdd55f1e2112a':
  Backport ParcelFileDescriptor.createPipe() from master.
2010-10-21 21:08:20 -07:00
Jeff Hamilton
389a440ad1 Backport ParcelFileDescriptor.createPipe() from master.
This allows content providers to expose arbitraty data
through the ContentResolver open* APIs.

Change-Id: I408a0b7cee9cdba5654a962098386c012d6b3549
2010-10-21 22:39:41 -05:00
Dianne Hackborn
bff26d156d am 86f1b643: am bf5efba2: Merge "Fix issue #3117918: No way to finish a native activity" into gingerbread
Merge commit '86f1b643d10e0b5b17ae01db3b81020db87b3295'

* commit '86f1b643d10e0b5b17ae01db3b81020db87b3295':
  Fix issue #3117918: No way to finish a native activity
2010-10-21 20:27:15 -07:00
Dianne Hackborn
86f1b643d1 am bf5efba2: Merge "Fix issue #3117918: No way to finish a native activity" into gingerbread
Merge commit 'bf5efba238f81330f4b473e92b6931b85baa1cbc' into gingerbread-plus-aosp

* commit 'bf5efba238f81330f4b473e92b6931b85baa1cbc':
  Fix issue #3117918: No way to finish a native activity
2010-10-21 20:17:50 -07:00
Dianne Hackborn
db28a94d49 Fix issue #3117918: No way to finish a native activity
Change-Id: Ic53e712f7ab5412d72a31b96ecba252344b91644
2010-10-21 19:07:37 -07:00
Chet Haase
bdccfe4ac4 Merge "Optimizing display lists by referencing pointers to resources instead of copying them" 2010-10-21 13:29:26 -07:00
Chet Haase
5c13d89c13 Optimizing display lists by referencing pointers to resources instead of copying them
Change-Id: I81ad3551d74aa1e5bb64d69e33d2eb29a6c1eb6a
2010-10-21 12:02:42 -07:00