Introduce a new concept of "B" services. All running services are
classified as either A or B. B services are later in the LRU list.
Their oom_adj is after the home app. This allows us to better pick
services to kill based on how long they have running, and should
reduce the amount that we end up killing the home app.
This temporarly turns on a debug log when the oom_adj of a process
is changed. Sorry, I know it is noisy. This is needed to try to
track down why some processes are being killed.
Also add a flag to the SyncManager's service binding to allow the
syncing process to be more aggressively killed if it has done UI.
This is to address cases we have seen where sync is causing an 80MB
gmail process to be kept around, preventing other process from running.
Now what will happen is that the syncing process will aggressively be
killed by the system, and can then be restarted in a much lighter-weight
state.
Do a little tweak in the power manager to allow us to still do smooth
brightness changes even when the fancy TV off animation is in use.
And get rid of a debug log in the window manager that was accidentally
left in.
Change-Id: I64a8eeaaa1f096bab29c665fbff804c7f1d029e2
Swiping the home screen causes the WindowManagerService to do
a bunch of work to keep the wallpapers in sync. First, it lays out
and places all windows. Also, it notifies the SystemUI process that
the wallpaper position has changed.
The layout/place operation is too much work - we only need to set
the position values for the wallpaper, not relayout the whole system.
The notification mechanism must exist, but should be optional. Most
wallpapers don't care (especially static ImageWallpapers). So we'll
give them a new API (WallpaperService.Engine.setWantsOffsets()) to
allow wallpapers to opt out of this process and avoid the performance
overhead.
Change-Id: I66c38375438937f14f6f5550565b28eb204b1e06
1. AccessibilityInteractionConnection was non-static inner
class, hence keeping a handle to the enclosing ViewRootImpl
resulting in leaking activities.
bug:5525412
Change-Id: Ie438861663d623d503995844125d9e15d677fc32
A recent patch taking scroll into account was applied at the wrong
level. isVisible() expects positions that already take scroll into
account. isOffsetVisible() is where the initial bug was.
Cherry pick of 144415 from master.
Change-Id: I06ceebfb3d7b24aa4adba886c24fcf9d8dd39d2e
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
Fixed the documentation and comments for dips versus pixels.
Added a new DOUBLE_TAP_TOUCH_SLOP to replace the hard-coded and
*unscaled* value used in GestureDetector. Assuming this value was
ok for hdpi devices, set it to 20 / 1.5 ~= 16 in dips.
New method kept hidden to keep API unchanged.
Change-Id: I6d237faa2fdb7714e0e3558978af130df9a061a5
Fragments now have the setDeferStart method to signal that a fragment
has lower priority than others. Deferred start fragments will not
always be started immediately; they will be started once any loaders
have finished servicing any outstanding requests. This is useful if
any attached fragments are not immediately visible and can wait to
start until later.
Disabling deferStart on a fragment that is waiting for a deferred
start will start it immediately. Start.
Change-Id: Ia1f004877ca5e88d4f10147d21c7e2e97f141c34
Fixes bug 5507881: Open pages in overview doesn't stick on initial
browser load.
Update the fix for bug 5230909: Zoom not restored on Back.
Added a boolean to indicate that scales have been restored. In the case
of restored scales (view and text wrap) being zero, set them to overview
and reading level respectively.
Change-Id: I5a22dd2040a22ee3b48c5903b586a65a4fa320f2
This reverts commit d224c88c48.
Based on Dianne's comments, this small optimization seems uncessarily
risky. I'll submit a new change where each SpellParser has its own
WordIterator to make this thread-safe.
Change-Id: Ic09fa656b00d284536e58f4cc7d26d5e26c3f3cf