Commit Graph

205 Commits

Author SHA1 Message Date
Jeff Brown
dc543aec70 am 14bc6b5d: am 09340a4b: Merge "Replace epoll() with poll() and rename PollLoop to Looper." into gingerbread
Merge commit '14bc6b5d0677e5c454a67775c852f90389bb4567'

* commit '14bc6b5d0677e5c454a67775c852f90389bb4567':
  Replace epoll() with poll() and rename PollLoop to Looper.
2010-09-15 12:32:29 -07:00
Jeff Brown
59abe7e090 Replace epoll() with poll() and rename PollLoop to Looper.
As part of this change, consolidated and cleaned up the Looper API so
that there are fewer distinctions between the NDK and non-NDK declarations
(no need for two callback types, etc.).

Removed the dependence on specific constants from sys/poll.h such as
POLLIN.  Instead looper.h defines events like LOOPER_EVENT_INPUT for
the events that it supports.  That should help make any future
under-the-hood implementation changes easier.

Fixed a couple of compiler warnings along the way.

Change-Id: I449a7ec780bf061bdd325452f823673e2b39b6ae
2010-09-14 01:59:45 -07:00
Jeff Brown
055a7926e6 am 0f0541e4: am b88102f5: Input dispatcher ANR handling enhancements.
Merge commit '0f0541e40cfef51eb5c3769e53c1aa853b53aaf6'

* commit '0f0541e40cfef51eb5c3769e53c1aa853b53aaf6':
  Input dispatcher ANR handling enhancements.
2010-09-12 17:15:19 -07:00
Jeff Brown
a665ca805c Input dispatcher ANR handling enhancements.
This change is essentially a rewrite of the main input dispatcher loop
with the target identification folded in.  Since the input dispatcher now
has all of the window state, it can make better decisions about
when to ANR.

Added a .5 second deadline for processing app switch keys.  This behavior
predates Gingerbread but had not previously been ported.

Fixed some timing inaccuracies in the ANR accounting that could cause
applications to ANR sooner than they should have.

Added a mechanism for tracking key and motion events that have been
dispatched to a window so that appropriate cancelation events can be
synthesized when recovering from ANR.  This change helps to keep
applications in sync so they don't end up with stuck buttons upon
recovery from ANRs.

Added more comments to describe the tricky parts of PollLoop.

Change-Id: I13dffca27acb436fc383980db536abc4d8b9e6f1
2010-09-12 16:52:03 -07:00
Dianne Hackborn
4181bd66fc am 510951e9: am a8512a71: Always set the scheduling group when starting a new thread.
Merge commit '510951e98bdb861130f38c087956cd05e0b41dcd'

* commit '510951e98bdb861130f38c087956cd05e0b41dcd':
  Always set the scheduling group when starting a new thread.
2010-09-09 23:11:22 -07:00
Dianne Hackborn
9c82c48d52 Always set the scheduling group when starting a new thread.
Change-Id: Ia33acf13fc3752707f3819928c36315e223fa1bd
2010-09-09 22:12:25 -07:00
Kenny Root
16ead4738c am 2a08e2a9: am a19ef306: Revert "Free created FileMap when uncompressing files"
Merge commit '2a08e2a9f881d06a03e36367585137e05706f592'

* commit '2a08e2a9f881d06a03e36367585137e05706f592':
  Revert "Free created FileMap when uncompressing files"
2010-09-07 19:41:00 -07:00
Kenny Root
dc2d840ff7 Revert "Free created FileMap when uncompressing files"
This reverts commit 52b8235238fb4d8cf141020cc1ae33880929dc3f.

munmap() on a region that overlaps something else (e.g, the ZIP Central
Directory in this case) unmaps those other regions as well making the
ZipFileRO class unhappy. Revert this for now until we can have FileMap
deal with this craziness.
2010-09-07 19:30:22 -07:00
Dianne Hackborn
c946422d58 am a1205f07: am 2d3739d4: Merge "Modify native ALooper to take an explicit ident." into gingerbread
Merge commit 'a1205f07a6f0c745e8f42f16fe38c06af04143c7'

* commit 'a1205f07a6f0c745e8f42f16fe38c06af04143c7':
  Modify native ALooper to take an explicit ident.
2010-09-07 18:52:06 -07:00
Dianne Hackborn
45e0acb41a Modify native ALooper to take an explicit ident.
The ALooper API now uses an explicit "identifier" for the integer
that is returned rather than implicitly using the fd.  This allows
the APIs that had the fd to be a little more sane.

Change-Id: I8507f535ad484c0bdc4a1bd016d87bb09acd7ff0
2010-09-07 15:46:55 -07:00
Dianne Hackborn
1cce37b477 am 05dff838: am 11bbe200: Hopefully fix the build.
Merge commit '05dff838946abb01caa3c3172cf0f367964a0b6d'

* commit '05dff838946abb01caa3c3172cf0f367964a0b6d':
  Hopefully fix the build.
2010-09-07 14:48:28 -07:00
Dianne Hackborn
3d2bca9abd am b8bcfed5: am f703b77c: Merge "Add system property to turn off scheduling groups." into gingerbread
Merge commit 'b8bcfed5524a37ee51e3f1129f1df91bc4a59cb4'

* commit 'b8bcfed5524a37ee51e3f1129f1df91bc4a59cb4':
  Add system property to turn off scheduling groups.
2010-09-07 14:47:51 -07:00
Dianne Hackborn
bb39b9f17b Hopefully fix the build.
Change-Id: Id8cd92c0895c9939e1386ef488bd1309a3be3568
2010-09-07 12:32:19 -07:00
Dianne Hackborn
7b0d45c346 Add system property to turn off scheduling groups.
Do this:

adb shell setprop debug.sys.noschedgroups 1

Change-Id: I6e06a74205fd45ee1526ce71fe33944465d39984
2010-09-07 11:19:11 -07:00
Kenny Root
757a86752f am 8d5250c6: am 2e246549: Merge "Add better debug output for ResourceType errors" into gingerbread
Merge commit '8d5250c601504da7a7fde3a3fd7b1c51335becdf'

* commit '8d5250c601504da7a7fde3a3fd7b1c51335becdf':
  Add better debug output for ResourceType errors
2010-09-02 15:53:26 -07:00
Kenny Root
45162448b3 Add better debug output for ResourceType errors
An error code is returned as -ESOMETHING, but the debug code was
printing out 0x%08x for these codes making -74 print out as 0xffffffb5
which is kind of silly.

Change-Id: I7d77fb3da2e146845949f121404f662b47288e61
2010-09-02 14:58:47 -07:00
Kenny Root
b940c7e901 am 8e724905: am ad6731b0: Merge "Add debugging to ZipFileRO" into gingerbread
Merge commit '8e724905261bf4913bac75adc64fb08ed5ba8b7d'

* commit '8e724905261bf4913bac75adc64fb08ed5ba8b7d':
  Add debugging to ZipFileRO
2010-08-27 16:18:44 -07:00
Kenny Root
e0573a4ad6 Add debugging to ZipFileRO
Some assets are failing to read from ZIP files. This adds a bit more
debugging to figure out what's going on.

Change-Id: Id90e10546c54c85069a34478fbc28bc2523bda5d
2010-08-27 12:47:34 -07:00
Kenny Root
8d7fcccef6 am b90b9d54: am 6be23712: Merge "Free created FileMap when uncompressing files" into gingerbread
Merge commit 'b90b9d54eb6bbc3a4045ff0bf46d3366822e835e'

* commit 'b90b9d54eb6bbc3a4045ff0bf46d3366822e835e':
  Free created FileMap when uncompressing files
2010-08-24 09:02:28 -07:00
Kenny Root
24b2aee9ca am 821afa9a: am 54d41379: Merge "Add OBB flags to support overlays" into gingerbread
Merge commit '821afa9aec8d3a4ffd2e72ce797d8097eaf13973'

* commit '821afa9aec8d3a4ffd2e72ce797d8097eaf13973':
  Add OBB flags to support overlays
2010-08-21 09:41:12 -07:00
Kenny Root
cd9ce313dd Free created FileMap when uncompressing files
Change-Id: Ice22c4ecb7c129b74bf60cd66ae79e110b017a4a
2010-08-19 18:39:58 -07:00
Kenny Root
28e9b9f243 Add OBB flags to support overlays
* Add flags field in OBB footer to support overlays.

* Remove unused 'crypto' and 'filesystem' fields in obbtool (could
  later be supported in the "flags" field of the OBB footer).

* Add notes to document OBB classes before shipping.

Change-Id: I386b43c32c5edef55210acb5d3322639c08010ba
2010-08-18 09:34:58 -07:00
Kenny Root
8264321e31 am 80328ba0: am 8ea71511: Merge "Initial tool for OBB manipulation" into gingerbread
Merge commit '80328ba09606bd0825d7d4c9a4f213d1de09e53a'

* commit '80328ba09606bd0825d7d4c9a4f213d1de09e53a':
  Initial tool for OBB manipulation
2010-08-11 14:15:20 -07:00
Kenny Root
1dfd9f8a97 Initial tool for OBB manipulation
Add "obbtool" host command for adding, removing, and querying Opaque
Binary Blob (OBB) information from a file.

Change-Id: Id2ac41e687ad2a500c362616d6738a8ae7e8f5c3
2010-08-11 11:24:41 -07:00
Dianne Hackborn
f09b0ae832 am 679ac09a: am a5ae50cd: Merge "More native work." into gingerbread
Merge commit '679ac09a5c22175354f3a04b28456b323839530e'

* commit '679ac09a5c22175354f3a04b28456b323839530e':
  More native work.
2010-08-11 00:50:56 -07:00
Dianne Hackborn
c3ef3ae552 More native work.
Implement save/restore of state, and add native APIs for
configuration information.

Change-Id: I2a3ddc2ba605db58d7c8b2b31b9215fb323f90b5
2010-08-11 00:29:59 -07:00
Kenny Root
404b6473e9 am d7ce227b: am 818490ab: Fix String8::operator+
Merge commit 'd7ce227bcb854f048124bbc487eba844c6599142'

* commit 'd7ce227bcb854f048124bbc487eba844c6599142':
  Fix String8::operator+
2010-08-06 19:04:09 -07:00
Kenny Root
aa966638b9 Fix String8::operator+
The LHS was ignored when using:
  String8 + String8
  String8 + (const char*)

Add unit tests for above.

Bug: 2898473
Change-Id: Ic8fe7be668b665c36aaaa3fc3c3ffdfff0fbba25
2010-08-06 09:00:10 -07:00
Kenny Root
8c16a393c9 am aec3e36f: am 2d817f75: Free scanBuf in ZipFileRO
Merge commit 'aec3e36fd4f8cdcc53110bbcd7f0afa20bf315d4'

* commit 'aec3e36fd4f8cdcc53110bbcd7f0afa20bf315d4':
  Free scanBuf in ZipFileRO
2010-08-05 12:07:48 -07:00
Kenny Root
8f20e5e540 Free scanBuf in ZipFileRO
In the success case, the 65kB scanBuf was not freed!

Also, get rid of annoying complaints about ssize_t from printf in error
cases.

Change-Id: If154ac19bf47637f898b4ec8c8e27c9a073a7b81
2010-08-04 16:53:56 -07:00
Christopher Tate
8aea3f3b94 am 06abd0a6: am 571180c4: Merge "Attempt to fix the SDK build" into gingerbread
Merge commit '06abd0a6a833beda1c0e68aed44912d145745a42'

* commit '06abd0a6a833beda1c0e68aed44912d145745a42':
  Attempt to fix the SDK build
2010-07-29 14:04:07 -07:00
Christopher Tate
6c6a3fbd9d Attempt to fix the SDK build
On the assumption that the local min() function declaration is in
conflict with some 'min' #define floating around, rename the local
function to min_of().

Change-Id: I62aa27f213c6093cc78805de611cf4aa75f0eef2
2010-07-29 13:42:45 -07:00
Chris Tate
2c8c2713c1 am 4dc8ead1: am 7b40518e: Merge "Change unistd.h to stddef.h to be correct" into gingerbread
Merge commit '4dc8ead1b4e63165c0a9e65adfbe46159758947a'

* commit '4dc8ead1b4e63165c0a9e65adfbe46159758947a':
  Change unistd.h to stddef.h to be correct
2010-07-28 18:18:28 -07:00
Kenny Root
0832a31d54 Change unistd.h to stddef.h to be correct
size_t should be defined through inclusion of stddef.h instead of unistd.h

Change-Id: Ieaadacfca1e1c44c2533ea95f73fc060c1519b52
2010-07-28 16:46:12 -07:00
Kenny Root
e8642c0e59 am 47cf709a: am 8c5d9430: Merge "Add unistd.h for size_t typedef to fix sim-eng" into gingerbread
Merge commit '47cf709aa3c07d2573340187edb5e11ea75824b1'

* commit '47cf709aa3c07d2573340187edb5e11ea75824b1':
  Add unistd.h for size_t typedef to fix sim-eng
2010-07-28 16:41:36 -07:00
Kenny Root
937cd1b707 Add unistd.h for size_t typedef to fix sim-eng
Change-Id: Ida4f1742547f39539b601f13182c722aa7cf863e
2010-07-28 16:31:24 -07:00
Christopher Tate
01d1669b89 am 1de9f490: am bae6fe24: Merge "Support streaming of compressed assets > 1 megabyte" into gingerbread
Merge commit '1de9f490b5c3f293b3748be3d4ccf3f78cdf460b'

* commit '1de9f490b5c3f293b3748be3d4ccf3f78cdf460b':
  Support streaming of compressed assets > 1 megabyte
2010-07-28 15:41:30 -07:00
Christopher Tate
a45a8008c6 Support streaming of compressed assets > 1 megabyte
Compressed assets larger than one megabyte are now decompressed on demand
rather than being decompressed in their entirety and held in memory.  Reading
the data in order is relatively efficient, as is seeking forward in the stream.
Seeking backwards is supported, but requires reprocessing the compressed data
from the beginning, so is very inefficient.

In addition, the size limit on compressed assets has been eliminated.

Change-Id: I6e68247957e6c53e7e8ba70d12764695f1723bad
2010-07-28 15:33:28 -07:00
Jeff Brown
cfa6d98278 resolved conflicts for merge of f7adbe10 to master
Change-Id: I898a5e53b180adaee2337c0c0b9896c799d056e7
2010-07-16 10:06:33 -07:00
Jeff Brown
0a128e3cbe Fix bug with phantom input windows.
Add dumpsys integration for the native input dispatcher.
Add some InputDevice API stubs.
Add an appendFormat helper method to String8 for printf style
string formatting mainly for debugging purposes.
Use generic ArrayList<WindowState> everywhere in WindowManagerService
to eliminate unnecessary casts all over.

Change-Id: I9d1e3bd90eb7222d10620200477f11b7bfd25e44
2010-07-16 00:02:48 -07:00
Jeff Brown
a903001e3c am d1313da5: am eb6e0df1: Don\'t build framework tests for simulator target.
Merge commit 'd1313da5999e06be16e52527cfba443f66b333a1'

* commit 'd1313da5999e06be16e52527cfba443f66b333a1':
  Don't build framework tests for simulator target.
2010-07-15 10:24:10 -07:00
Jeff Brown
a50ee3ecb3 Don't build framework tests for simulator target.
Change-Id: I70f29c7eb307e4f3ec5702f4eb9d97b4342e2f36
2010-07-14 22:55:02 -07:00
Jeff Brown
94eed383c9 am 89ee578b: am fd035829: Add initial gamepad support.
Merge commit '89ee578b7053d27a50922f82feb94bf6054b330c'

* commit '89ee578b7053d27a50922f82feb94bf6054b330c':
  Add initial gamepad support.
2010-07-13 17:48:56 -07:00
Jeff Brown
8575a87b0d Add initial gamepad support.
Change-Id: I0439648f6eb5405f200e4223c915eb3a418b32b9
2010-07-13 17:04:57 -07:00
Kenny Root
d441a0ca24 am ceb8465e: am 87bb1857: Merge changes I2337051b,I19b426cb into gingerbread
Merge commit 'ceb8465e974ba5fa971ffe1b5b74e94a1bd53f97'

* commit 'ceb8465e974ba5fa971ffe1b5b74e94a1bd53f97':
  Tweak ObbFile class
  Allow things that can install packages to set Obb paths
2010-07-12 11:22:45 -07:00
Kenny Root
9baa2c7a44 Merge changes I2337051b,I19b426cb into gingerbread
* changes:
  Tweak ObbFile class
  Allow things that can install packages to set Obb paths
2010-07-12 11:18:34 -07:00
Kenny Root
fa59afb863 Tweak ObbFile class
* Move error messages around to clarify the errors.

* Add extra error check when reading a file.

* Seek to the end of a file when writing the signature so the users of
  the API don't have to remember to do it.

Change-Id: I2337051b9f9fa8147c5900237deec790dcd92436
2010-07-12 09:11:24 -07:00
Dianne Hackborn
895b3d0bdd am 49159f07: am 74bf59b4: Merge "Add new glue code for writing native apps." into gingerbread
Merge commit '49159f0748c704e53a7bd754f26113d9ab844a97'

* commit '49159f0748c704e53a7bd754f26113d9ab844a97':
  Add new glue code for writing native apps.
2010-07-08 19:10:17 -07:00
Kenny Root
8d3ee58899 am d481cdd4: am c9535de8: Merge "Add OBB file helper class" into gingerbread
Merge commit 'd481cdd4c0305f8afd857fe3ec3fbf189b744370'

* commit 'd481cdd4c0305f8afd857fe3ec3fbf189b744370':
  Add OBB file helper class
2010-07-08 19:08:57 -07:00
Dianne Hackborn
3c5d125ed7 Add new glue code for writing native apps.
This factors out the boiler-plate code from the sample
app to a common glue code that can be used for everyone
writing this style of app: a dedicated app thread that
takes care of waiting for events and processing them.

As part of doing this, ALooper has a new facility to allow
registration of fds that cause ALooper_pollOnce() to return
the fd that has data, allowing the app to drive the loop
without callbacks.  Hopefully this makes some people feel better. :)

Also do some other cleanup of the ALooper API, plus some
actual documentation.

Change-Id: Ic53bd56bdf627e3ba28a3c093faa06a92be522b8
2010-07-08 11:06:59 -07:00