replicant-frameworks_native/libs/binder
Jeff Brown 20b3da9a01 Optimize fillWindow to improve reverse-seek performance.
Bug: 5520301

When an application requests a row from a SQLiteCursor that
is not in the window, instead of filling from the requested
row position onwards, fill from a little bit ahead of the
requested row position.

This fixes a problem with applications that seek backwards
in large cursor windows.  Previously the application could
end up refilling the window every time it moved back
one position.

We try to fill about 1/3 before the requested position and
2/3 after which substantially improves scrolling responsiveness
when the list is bound to a data set that does not fit
entirely within one cursor window.

Change-Id: I168ff1d3aed1a41ac96267be34a026c108590e52
2011-10-28 01:46:18 -07:00
..
Android.mk PermissionCache caches permission checks 2011-06-27 17:42:15 -07:00
Binder.cpp Make static versions of libutils and libbinder. 2010-05-06 01:03:31 -07:00
BpBinder.cpp Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE 2011-10-26 09:57:54 +01:00
CursorWindow.cpp Optimize fillWindow to improve reverse-seek performance. 2011-10-28 01:46:18 -07:00
IInterface.cpp some work to try to reduce the code size of some native libraries 2009-05-26 16:12:20 -07:00
IMemory.cpp MemoryHeapBase: Save and binderize the offset 2011-06-27 13:48:51 -07:00
IPCThreadState.cpp Rename (IF_)LOG() to (IF_)ALOG() DO NOT MERGE 2011-10-25 16:28:24 +01:00
IPermissionController.cpp Add Parcel::readExceptionCode() and Parcel::writeNoException() 2010-07-13 15:45:18 -07:00
IServiceManager.cpp Add Parcel::readExceptionCode() and Parcel::writeNoException() 2010-07-13 15:45:18 -07:00
MemoryBase.cpp move libbinder's header files under includes/binder 2009-05-20 12:55:03 -07:00
MemoryDealer.cpp Simplify the MemoryDealer implementation 2010-01-29 14:51:06 -08:00
MemoryHeapBase.cpp MemoryHeapBase: Save and binderize the offset 2011-06-27 13:48:51 -07:00
MemoryHeapPmem.cpp Clean up use of HAVE_ANDROID_OS 2011-02-16 10:56:32 -08:00
Parcel.cpp Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE 2011-10-26 09:57:54 +01:00
PermissionCache.cpp PermissionCache caches permission checks 2011-06-27 17:42:15 -07:00
ProcessState.cpp Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE 2011-10-26 09:57:54 +01:00
Static.cpp move libbinder's header files under includes/binder 2009-05-20 12:55:03 -07:00