Merge commit '2d93a11663d1d872bc7e9d6512a445fa84148583' into eclair-plus-aosp
* commit '2d93a11663d1d872bc7e9d6512a445fa84148583':
Do not send dock state changed broadcasts until the system has finished booting.
Merge commit '284ac93aa30642fda87d5c40263a1263677c21cd' into eclair-plus-aosp
* commit '284ac93aa30642fda87d5c40263a1263677c21cd':
More work on wallpapers: animations, lifecycle, scaling, etc.
Yet more work on improving the behavior of wallpapers. This fixes a few
problems in their lifecycle (corresponding change in the picker also
required for this), makes their animations better for hardware that supports
alpha fades, adds animations for the wallpapers themselves, eliminates
fixed size wallpapers, and adjusts the API for retrieving a wallpaper
bitmap to take care of scaling the raw wallpaper image to match the current
desired width and height.
Change-Id: If1c0aaceba4ea4e175dcb7a8416ca7ddbb9bfa6f
This introduces a new mechanism to define features associated with
a platform, query the current device for the available features,
and enforce that apps requiring features that aren't available can't
be installed.
Also now allows uses-library to specify that a library is optional,
so the lack of such a library will not prevent the app from being
installed (but if it does exist it will be correctly linked into
the app).
Change-Id: I5b369b46cfa0b3d37c9e08fd14ef1098a978e67b
Merge commit 'd6ac7c73e17f0ce0cc3b1290760c4f67cafcdec5' into eclair-plus-aosp
* commit 'd6ac7c73e17f0ce0cc3b1290760c4f67cafcdec5':
Fix issue #2069662: The wallpaper doesn't move along with the home screen
Merge commit '6391830d103ccb19465c69660065c22c2711dcfd' into eclair-plus-aosp
* commit '6391830d103ccb19465c69660065c22c2711dcfd':
Don't activate keyguard if screen is turned off while proximity sensor is active.
Merge commit '18ad9f657bda79069233c0b8e1476888ffd894d4' into eclair-plus-aosp
* commit '18ad9f657bda79069233c0b8e1476888ffd894d4':
Only allow system code to call LocationManager.sendNiResponse()
Merge commit '1e0f7627389a18d7a2ea74d7a5fb2c251de56a56' into eclair-plus-aosp
* commit '1e0f7627389a18d7a2ea74d7a5fb2c251de56a56':
Make SINGLE_TOP work with CLEAR_TOP.
Merge commit 'aa0a3b09e7a2947130e9a98c459a63349ef2d339' into eclair-plus-aosp
* commit 'aa0a3b09e7a2947130e9a98c459a63349ef2d339':
Various tweaks to try to improve low memory behavior.
Merge commit '25b9cec8de75bd38c4868515e611cd69aff524ca' into eclair-plus-aosp
* commit '25b9cec8de75bd38c4868515e611cd69aff524ca':
PowerManagerService: Disallow all user activity when in proximity wake lock.
Merge commit '49c22570bb8717bb678dbd8bae6692bb585370fc' into eclair-plus-aosp
* commit '49c22570bb8717bb678dbd8bae6692bb585370fc':
LocationManager: Fix problem replacing GPS and network providers with a mock provider.
Merge commit '7566c1debebe072af76411e11d96810fd1409482' into eclair
* commit '7566c1debebe072af76411e11d96810fd1409482':
LocationManager: Fix problem replacing GPS and network providers with a mock provider.
- Reduce the amount that we ask processes to GC after a significant
operation occurs, but introducing a minimum time between GCs and
using this in various ways to schedule them.
- Don't spam all of the processes with onLowMemory(). Now deliver
these using the same gc facility, so we do the processes one at a
time, and don't allow the same process to get this call more than
once a minute.
- Increase the time a service must run before we will reset its
restart delay to 30 minutes (from 10).
- Increase the restart delay multiplication factor from 2 to 4.
- Ensure that we don't restart more than one service every 10 seconds
(unless some external event causes a service's process to be started
for some other reason of course).
- Increase the amount of time that a service must run before we
decide to lower it to a background process.
And some other things:
- Catch IllegalArgumentException in ViewRoot like we do for no
resources to avoid the system process crashing.
- Fix a number of places where we were missing breaks between the
activity manager's message dispatch func(!!).
- Fix reason printed for processes in the background.
- Print the list of processing waiting to GC.
Merge commit 'cc907741b9b7344820ffbc8d68992567d74d0f4b' into eclair-plus-aosp
* commit 'cc907741b9b7344820ffbc8d68992567d74d0f4b':
Simplify data icons of CDMA in status bar.
Merge commit '8d61d005839b23a41034325d5f458f1344933b1b' into eclair-plus-aosp
* commit '8d61d005839b23a41034325d5f458f1344933b1b':
Fix the removal of dns entries.
When switching default networks we should erase any excess dns server entries. The old code
used the wrong index and didn't erase all of them properly.
Found in conjunction with
bug: 2077628
Merge commit '4b474440cef8afa5e355a9406bb076af8e493ca7' into eclair-plus-aosp
* commit '4b474440cef8afa5e355a9406bb076af8e493ca7':
Simplify CDMA Status Bar icons
Update the RSSI display policy in CDMA.
1. Use single RSSI icon instead of two icons
2. If 3G(EV) and 1x network are available than 3G should be displayed, Displayed RSSI should be from the EV side.
3. If a voice call is made then RSSI should switch to 1x.
Merge commit '0d05be3f724740eb95ac5acd9819b4db0eccd694' into eclair-plus-aosp
* commit '0d05be3f724740eb95ac5acd9819b4db0eccd694':
Fix bug that would leave old windows around.
The problem was instigated by another fix I made to keep
windows around while their tokens are animating or preparing to
animate. This then hit an issue where if the window's process
died while its token was getting ready to animate, we would
immediately hide the token, and when we then went to start
the token animation we wouldn't do anything, leaving the old
dummy animation in place and not allowing it to run.
Now we clear the animation before hiding the token, to ensure
the dummy animation is gone at this point.
Change-Id: If83fadcce6815bc545c80fbdb82fe6972bbdf5ef
Merge commit 'cf3a08307d1599eaa91d7cc4e7c601e5fa13037f' into eclair-plus-aosp
* commit 'cf3a08307d1599eaa91d7cc4e7c601e5fa13037f':
Add more control over a service's start state.
One of the problems I have been noticing is background services
sitting around running and using resources. Some times this is
due to the app developer doing this when they shouldn't, but there
are also a number of issues with the current Service interaction
model that make it very difficult (or impossible) to avoid
getting services stuck in the started state. This is a
change/enhancement to the Service API to try to address this.
The main change is that Service.onStart() has been deprecated,
replaced with a new Service.onStartCommand() that allows the
service to better control how the system should manage it. The
key part here is a new result code returned by the function, telling
the system what it should do with the service afterwards:
- START_STICKY is basically the same as the previous behavior,
where we usually leave the service running. The only difference
is that it if it gets restarted because its process is killed,
onStartCommand() will be called on the new service with a null
Intent instead of not being called at all.
- START_NOT_STICKY says that, upon returning to the system, if
its process is killed with no remaining start commands to
deliver, then the service will be stopped instead of restarted.
This makes a lot more sense for services that are intended to
only run while executing commands sent to them.
- START_REDELIVER_INTENT is like START_NOT_STICKY, except if
the service's process is killed before it calls stopSelf()
for a given intent, that intent will be re-delivered to it
until it completes (unless after 4 or more tries it still
can't complete, at which point we give up).
Change-Id: I978f5ca420d70023d1b5e7f97de639d09381f8ad
Merge commit 'ec9fe4672a46eb928ab710d8e3caf2ce046100d4' into eclair-plus-aosp
* commit 'ec9fe4672a46eb928ab710d8e3caf2ce046100d4':
Fix a race condition for data change notification