History log of /system/core/include/utils/Looper.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
19159f90020c04ac2f4dcb39424d740f765ed9a3 06-May-2013 Dianne Hackborn <hackbod@google.com> Add new Looper API to check whether the looper is idle.

This is just to support the watchdog to give it a faster
way to determine if a thread is deadlocked without having
to post a message to it.

Change-Id: I068dc8b9387caf94fe5811fb4aeb0f9b57b1a080
/system/core/include/utils/Looper.h
dd1b0378cec939e7c90f8e8d8216b481f9f2035a 01-Jun-2012 Jeff Brown <jeffbrown@google.com> Support looper callbacks based on smart pointers.

Bug: 6559630
Change-Id: I5a667f219f431838638acefbc9fa6afa610971bd
/system/core/include/utils/Looper.h
5705e69825a94e9d02bff3d8c3dec5800b73f6a5 31-May-2012 Jeff Brown <jeffbrown@google.com> Delete unused poll() code.

We don't need this code anymore and it is just in the way.

Bug: 6559630
Change-Id: I1dc9decf85d5ea1feab159c2985da6c20baffdd5
/system/core/include/utils/Looper.h
55195d745c6a21f8a75f26716f2a9690e40a1331 31-May-2012 Jeff Brown <jeffbrown@google.com> Remove unused statistics code.

Bug: 6559630
Change-Id: Iacdf4bb4c1c125c09305cbd8cb443c7c80cfc010
/system/core/include/utils/Looper.h
3e2e38bc5bbf658eb9940f72974270b11c5b84e1 02-Mar-2011 Jeff Brown <jeffbrown@google.com> Fade out the mouse pointer after inactivity or other events.

Fades out the mouse pointer:
- after 15 seconds of inactivity normally
- after 3 seconds of inactivity in lights out mode
- after a non-modifier key down
- after a touch down

Extended the native Looper to support enqueuing time delayed
messages. This is used by the PointerController to control
pointer fade timing.

Change-Id: I87792fea7dbe2d9376c78cf354fe3189a484d9da
/system/core/include/utils/Looper.h
fcefac26820933abeb40170b476b9d04efa3d35d 08-Oct-2010 Jeff Brown <jeffbrown@google.com> Revert to using epoll_wait().

This change depends on the kernel having been patched to use hrtimers
instead of jiffies for scheduling epoll timeouts.

Change-Id: I216bc1c4f565e67ebcb3d2ba4280cb615932bb9e
/system/core/include/utils/Looper.h
8d15c74d50fd01d6e63970aadd261a9d3bed27e7 06-Oct-2010 Jeff Brown <jeffbrown@google.com> Switch Looper back to using poll() instead of epoll().

Added a couple of micro-optimizations to avoid calling wake() unnecessarily
and reduce JNI overhead slightly.

Fixed a minor issue where we were not clearing the "next" field of Messages
returned by the MessageQueue so the Message would hold on to its successor
and potentially prevent the GC from collecting it if the message were leaked
somehow.

Change-Id: I488d29417ce0cdd7d0e447cda76ec978ef7f811c
/system/core/include/utils/Looper.h
d18051870e8e2a5f55237a2c11fde75f46082639 22-Sep-2010 Jeff Brown <jeffbrown@google.com> Looper: use pthread_once for TLS key initialization.

Also fix a Valgrind complaint by zeroing out the entire epoll event
struct since otherwise the data field union would be partly
uninitialized (but not in a harmful way).

Change-Id: I2091ce517e87fcad7c9caf90e2c5e4854a7ca465
/system/core/include/utils/Looper.h
905682a19609e862633f01e69bec58384df2cdf7 17-Sep-2010 Jeff Brown <jeffbrown@google.com> Looper: Drop default parameters in favor of a safer overload.

The idea is that if you're writing code that wants fd/events/data on
return from pollOnce() / pollAll() you should really pass in all of those
arguments. When I changed the Looper API earlier, it was difficult
to ensure that all callers were passing the right parameters since they
were relying on default parameters to some degree so usage mistakes
would not have been caught by the compiler.

Change-Id: I1f2812894270aaf1515017ac1616b6b312d9b565
/system/core/include/utils/Looper.h
7901eb25c60b1df00050d6c3772505d8dcfcdab9 14-Sep-2010 Jeff Brown <jeffbrown@google.com> 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
/system/core/include/utils/Looper.h