847 Commits

Author SHA1 Message Date
Mike Lockwood
94db928d8c PowerManager: Require proximity sensor value be less than Sensor.getMaximumRange()
This allows us to support binary proximity sensors that only return 0.0 and 1.0

Change-Id: Ifaf3a4e6fc720cb246ac3558e3e733b4b612c95b
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-09-22 00:20:10 -04:00
Android (Google) Code Review
9bbd5ee49f Merge change 26290 into eclair
* changes:
  Make IBackupTransport.finishBackup() also return an int code, since it too can return TRANSPORT_NOT_INITIALIZED (in fact that's typically how it comes).
2009-09-21 22:26:35 -04:00
Dianne Hackborn
fe2bddfae1 Don't wake up the screen as soon as the lid opens.
We may need to wait until the lock screen is ready.

Change-Id: Id114f4f37051680ab880056b4c989b1fa8aa02b3
2009-09-21 17:39:15 -07:00
Dianne Hackborn
bfe319e06a Turn animations on by default.
Add API to skip the animation for a particular start activity, so that
a latter better one can be used.

Fix Theme.NoDisplay to actually work.

Fiddle with various animations: don't do a different animation for task
switching, try a scale animation for switching in/out of the wallpaper.

Adjust the animation duration so that at normal speed we have something
more like the slower animation option (so slow is now the default).

Change-Id: Ieba9f3db0bd9a762a19b327a3ecccbc7b547893d
2009-09-21 17:26:41 -07:00
Dan Egnor
0144516e19 Make IBackupTransport.finishBackup() also return an int code, since it too can
return TRANSPORT_NOT_INITIALIZED (in fact that's typically how it comes).

For consistency, make other IBackupTransport methods return int instead of
boolean, and handle accordingly.

Make initializeDevice() its own method instead of a flag on performBackup().
This will be needed when un-checking the settings box anyway, and is
conceptually unrelated to whatever happens to be the first post-initialization
backup we perform.  (Note that even if the init is sent separately from the
backup operation, the server will remember that an init has been done and
will *not* return NOT_INITIALIZED for the subsequent backup.)

Fix LocalTransport accordingly (trivial changes).

Handle failures more robustly in BackupManagerService -- most notably,
doQueuedBackups() was ignoring the result code of processOneBackup(), so
a NOT_INITIALIZED error would go past unseen (at least until the next
backup pass).  Keep track of error code returns more universally now.
(This includes finishBackup(), of course.)
2009-09-21 17:04:05 -07:00
Christopher Tate
d55e18acbe Reset backup tracking in response to transport data-wipe notification
When attempting a backup, the transport may inform us that the backend is in an
uninitialized state.  This typically means that the device's data has been wiped
after a period [e.g. 90 days] of inactivity.  This means that we need to
re-store all data subject to backup, and all of our incremental state tracking
on the device is now stale.

In response, we wipe all of our recorded backup state and restart the backup
pass on all participants.
2009-09-21 10:19:17 -07:00
Brad Fitzpatrick
2eb239f92d Fix NPE crash-loop when cpufreq not available in the kernel. 2009-09-21 15:30:21 +04:00
Android (Google) Code Review
e705ca961f Merge change 26103 into eclair
* changes:
  Handle restore of the original naive wallpaper backup schema
2009-09-20 22:49:44 -04:00
Christopher Tate
7c2bb66db7 Handle restore of the original naive wallpaper backup schema 2009-09-20 19:47:46 -07:00
Amith Yamasani
e43530ab57 Track CPU speed stepping to get more accurate CPU cost per app.
More CPU speed stepping happening with newer devices, so we need
to qualify CPU time with the CPU speed, since power consumption
varies greatly by speed. Apps that peg the CPU should get a higher
penaltly.

Also, fix for 2062930: NPE at VolumePreference.onKey()
2009-09-20 16:03:50 -07:00
Christopher Tate
90967f4f0d Fix up the first-backup-ever tracking
This changes a couple of bits of the Backup Manager's logic around
first-backup-ever handling.  First, it uses the same "what we've ever backed up"
handling as the rest of the system for purposes of instructing the backend to do
a wipe when the metadata is initialized for the device, instead of looking at
the presence of the @pm@ file.  Secondly, for the time being we won't be using
the saved state produced by agents' doRestore() logic.  Until the server is
migrating each restored package's data over to the new dataset, this was
resulting in the client holding an agent state blob for which no data existed on
the server under this device's identity but which the device thought was fully
up to date.
2009-09-20 15:33:35 -07:00
Christopher Tate
25a747f5c4 Add an 'init everything' operation to the first backup pass
IBackupTransport.performBackup() now takes a flag "wipeAllFirst", which if set
will result in the entire restore set for the current device/account being wiped
clean prior to the storage of the provided package.  This ensures that a device
on which backup has just been enabled will not confront potentially-stale
information, nor will the restore set potentially contain mismatched data from
orphaned packages.

The Backup Manager has also been revised to pass this flag when first backing up
its master metadata block (and never pass it thereafter unless something has
caused the backup state tracking to be erased, e.g. the user has opted out of
backup and then later re-enabled it).
2009-09-20 12:43:58 -07:00
Android (Google) Code Review
4492bcd8b0 Merge change 25938 into eclair
* changes:
  Don't require WAKE_LOCK permission to enable wifi
2009-09-20 10:48:09 -04:00
Android (Google) Code Review
b8155068ef Merge change 25944 into eclair
* changes:
  Wake the screen if the proximity wakelock is released while the proximity sensor is active.
2009-09-20 00:27:28 -04:00
Mike Lockwood
200b30bba5 Wake the screen if the proximity wakelock is released while the proximity sensor is active.
This fixes a problem that resulted in the screen staying off indefinitely if the prox sensor
is active at the beginning of a bluetooth call and could result in the screen staying off
in other similar circumstances.

Change-Id: Icfa0046d3179f9bb2247e7a3c1f9ff073312667a
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-09-20 00:23:59 -04:00
Robert Greenwalt
a99f461b98 Don't require WAKE_LOCK permission to enable wifi
The process for starting wifi was using a wakelock around a message-pass and this was causing
an exception for meer mortals (who don't have WAKE_LOCK permission).

bug: 1750535
2009-09-19 18:14:32 -07:00
Mike LeBeau
1f6c7e6a2b Change the broadcast intent for dock state changes from a sticky broadcast to
a sticky ordered broadcast. This is so individual apps can override the default
behavior and stop the related dock app from launching.
2009-09-19 18:06:52 -07:00
Dianne Hackborn
edd9316ca9 Add better APIs for the battery status, and other cleanup.
Also add new configs for keeping screen on while docked, which will
be used elsewhere.

Change-Id: Ifaa1118f14fd850ac809895f9a5c9e8c413259b8
2009-09-19 14:03:05 -07:00
Dianne Hackborn
65c2387206 Fix transformation on windows.
The window offset was being applied incorrectly in relation to the
animation transform.

Change-Id: Ia578129f48cf6c57ae795af862d2b6ce5d447994
2009-09-18 17:47:02 -07:00
Android (Google) Code Review
90d8a6a449 Merge change 25628 into eclair
* changes:
  Inefficient but correct fix for 2122381: call finishBackup after every performBackup
2009-09-18 18:25:33 -04:00
Android (Google) Code Review
c3a3b399a9 Merge change 25752 into eclair
* changes:
  Add a Gservices setting to controll the app error reporting feature.
2009-09-18 15:07:28 -04:00
Dianne Hackborn
6136b7ef16 Show the live wallpaper on the lock screen.
This also takes care of the problem of system dialogs like the
crash dialog causing the status bar to dim behind the lock screen.

On the down side, the fade transition from the lock screen is
now gone, and I'm not sure how likely it is for it to return.

Change-Id: I7f9e6d0f3510a1fdbbe6ad252d986bd85a16475d
2009-09-18 09:27:22 -07:00
Jacek Surazski
a233943cb1 Add a Gservices setting to controll the app error reporting feature. 2009-09-18 15:01:26 +02:00
Dianne Hackborn
fa82f22f1d Fix issue #2093608: Calendar widget takes a few seconds to launch
Avert your eyes!

The key change here is that RemoteViews can now call a Context API to
start its pending intent, which inside of the activity manager we can
use to determine to cancel the timeout delay for external entities
to disrupt the home screen.

Change-Id: If097cf7478cbed7a3c04a304050bd7fd5703d197
2009-09-17 18:01:35 -07:00
Robert Greenwalt
c7d2530d52 Report NO_CONNECTIVITY when failover net unavail
Fix ConnectivityService so that it reports connection status correctly.

bug: 2128595
2009-09-17 16:34:39 -07:00
Android (Google) Code Review
0d51d63595 Merge change 25626 into eclair
* changes:
  Check if rename of current settings file was successful before persisting new changes to settings.
2009-09-17 19:32:34 -04:00
Suchi Amalapurapu
3d7e855df3 Check if rename of current settings file was successful before persisting
new changes to settings.
2009-09-17 16:30:14 -07:00
Dan Egnor
83861e74c3 Inefficient but correct fix for 2122381: call finishBackup after every performBackup 2009-09-17 16:19:02 -07:00
Android (Google) Code Review
4ac137cad9 Merge change 25526 into eclair
* changes:
  Add API to retrieve memory used by running processes.
2009-09-17 15:11:22 -04:00
Android (Google) Code Review
c2912a662d Merge change 25490 into eclair
* changes:
  Revert "Don't activate keyguard if screen is turned off while proximity sensor is active."
2009-09-17 14:39:43 -04:00
Dianne Hackborn
4f21c4cf07 Add API to retrieve memory used by running processes.
Change-Id: I9c1935c2ef3c78bd67ec4dfd811a1caaab4514c3
2009-09-17 11:13:45 -07:00
Yusuf T. Mobile
2d2078aa1d LocationManagerService: Take fix accuracy into account in proximity zone logic.
Fixes http://code.google.com/p/android/issues/detail?id=2002

Change-Id: If2b0665c556269279c5813f2254f9624a556bd92
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-09-17 13:56:36 -04:00
Mike Lockwood
c17f07aa04 Revert "Don't activate keyguard if screen is turned off while proximity sensor is active."
This reverts commit ddfe879b783ad72603308e28e8f683454464684e.
2009-09-17 11:58:01 -04:00
Christopher Tate
b8eb1cb79b Be sure to include shared lib path info when dealing with agents
In particular, this ensures that on the client side the full classpath is known
and used by the class loader during execution of the agent.
2009-09-16 17:58:45 -07:00
Dianne Hackborn
248b188860 Fix #1827299: Google login screen to re-enter password is not viewable
This was a problem with not hiding the starting window when it got
transfered to an activity whose window (instead of token) animates
when displayed.

Change-Id: I9eb58faa6e27d53144687952a715fc083a5c5842
2009-09-16 16:46:44 -07:00
Mike Lockwood
9092ab4d45 Add support for launching activities when attaching to a car or desk dock.
Categories CATEGORY_CAR_DOCK and CATEGORY_DESK_DOCK can be assigned to
activities to make them launchable on docked events.
This is a better mechanism than listening for ACTION_DOCK_EVENT with a broadcast receiver.

Change-Id: Ic5f3ab3555ce02ca922bc31ebba41978cefe8bda
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-09-16 14:43:21 -04:00
Android (Google) Code Review
2a66eee3ef Merge change 25157 into eclair
* changes:
  Remove deadlock in PackageManager when installing or upgrading packages. PM first creates a temporary file from the input package uri before installing it. if the package uri points to a content uri, the content provider  has to be retrieved via the ActivityManager which could cause deadlocks with the package manager locks being held. Clean up by always copying or creating temporary files before acquiring these locks. Fix issue when restoring a failed upgrade for third party apps.
2009-09-16 12:36:36 -04:00
Chung-yih Wang
4337476a66 Fix the missing part for reading enterprise fields in wifi configuration
+ refactor the enterprise fields.
2009-09-16 14:28:42 +08:00
Dianne Hackborn
93e462b79d Implement issue #1780928: Need support hiding nav keys.
This implements support for devices whose hardware can hide
their navigation keys.  It works much like the existing keyboardHidden
configuration, and for compatibility uses the same configuration
change bit.

Also add FLAG_TURN_ON_SCREEN for windows, which has the system
cause the screen to be turned on when the window is displayed.
Great fun when used with FLAG_SHOW_WHEN_LOCKED!

Change-Id: I0b867f19af85cfd8786a14cea194b34f7bdd9b7a
2009-09-15 22:50:40 -07:00
Android (Google) Code Review
6ee7b04d27 Merge change 25192 into eclair
* changes:
  Some improvements for wallpaper configuration.
2009-09-15 22:06:24 -04:00
Dianne Hackborn
9767e41d92 Some improvements for wallpaper configuration.
This introduces a new activity that you can derive from to implement
a wall paper configuration activity.  This is supposed to select
a theme based on whether it is being run to configure a real wallpaper
or a preview, but this is going to be more difficult to do than I
thought. :(

Also fix a problem in the white theme where the list view's background
was being set to white, so it wouldn't work on a transparent bg.

Change-Id: I26d5a8695a3c878a1664eb09900eded57eaff990
2009-09-15 18:59:31 -07:00
Mathias Agopian
cc9f52f943 make the window-shade use an opaque surface if possible 2009-09-15 18:23:59 -07:00
Suchi Amalapurapu
ee5ece4a4d Remove deadlock in PackageManager when installing or upgrading packages.
PM first creates a temporary file from the input package uri before installing it.
if the package uri points to a content uri, the content provider  has to be retrieved via the ActivityManager
which could cause deadlocks with the package manager locks being held.
Clean up by always copying or creating temporary files before acquiring these locks.
Fix issue when restoring a failed upgrade for third party apps.
2009-09-15 16:42:20 -07:00
Mike Lockwood
237a29923a Move backlight brightness from HardwareService to PowerManager
to prevent apps from changing the hardware behind its back.
Fixes b/2041941 Lock screen flashes the screen very bright before dimming

Change-Id: Ice757f7ae87902bdfb3634471cf44f020ebfaae4
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-09-15 15:47:09 -04:00
Ken Schultz
f02c0740d3 DockObserver wakes the display when broadcasting a change
- normal display timeout applies after wake

Signed-off-by: Ken Schultz <kschultz@motorola.com>
2009-09-15 10:58:05 -04:00
Mike Lockwood
d20ea369b2 PowerManagerService: Use 5 cm threshold for the proximity sensor.
This eliminates the assumption that the proximity sensor will always return
zero distance when it is active.

Change-Id: I6245b074e4c42aeae3a181e6a5087554517046d2
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-09-15 02:29:28 -04:00
Dan Murphy
951764b970 Add automatic lighting control framework
Add changes to have the ability to turn on and off the
automatic light sensing for the device.  This is fully configurable
and is by default not  present.  Vendors should override the ALS setting
to enable the automatic lighting controls.

These changes will add a check box to the Brightness settings menu to give control
to the user to allow the device's display lighting to be controlled via the slide bar
or the auto lighting system.

If the user selects auto then the slide bar will become invisible.  Manual mode
will present the slide bar to the user.

Change-Id: I146a6d75b99b08c9b839218ce6b85adf21f9fd73
Signed-off-by: Dan Murphy <D.Murphy@motorola.com>
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-09-15 02:29:15 -04:00
Dianne Hackborn
83fe3f5592 Last big work on #1991910: Make swipes work with capacitive keys
This takes care of allowing us to cancel the back button.  The
back button is a bear because it is strewn all over the place --
everywhere you can close something, there is some code looking
for the back button that now needs to deal with being canceled.

The main things changed are activity (of course), dialog,
input method, search dialog.  There are some other misc places
in the framework (and some I missed here that I will get in a
second pass).

To facility all of this, the key dispatching APIs now provide
a lot more support for dealing with looking for cancelled keys,
and incidentally also provide an actual API for catching long
key presses.  This also helped clean up the code in PhoneWindow
where it deals with all of the combinations of key pressed and
releases.  (And also allows people to override
Activity.onKeyLongPress() to provide a different long press
action for a standard key like search.)

And while I was doing this, I reworked how we detect long
presses by having this be part of the key event delivered by
the window manager.  This should greatly reduce (hopefully
outright eliminate) the problems with long presses being
mis-detected when an application is being slow.

Change-Id: Ia19066b8d588d573df3eee6d96e1c90fdc19f57d
2009-09-14 17:53:52 -07:00
Android (Google) Code Review
d023f9a9a9 Merge change 24829 into eclair
* changes:
  Some optizations to wallpaper drawing/scrolling.
2009-09-14 18:45:42 -04:00
Dianne Hackborn
19382ac1a4 Some optizations to wallpaper drawing/scrolling.
First, fix some issues with the final wallpaper bitmap
we use: ensure it is always 16bpp, and make sure dithering
of its bitmap is turned off.   We take of dithering
when loading, to make sure we don't use it when drawing.

Also add new APIs to return the wallpaper with the equivalent
of Launcher's old FastBitmapDrawable.  As doing this, also load
the default wallpaper the same way as custom ones, taking care to
resize it as needed at load time.

Finally implement a mechanism for the window manager to wait
for the wallpaper to redraw at its new position before returning
from the application's call to change the offset.  This ensures
that the wallpaper better tracks the application.  Note that there
is a timeout in this wait that is relatively short, and if it
expires we will run for a while without waiting.

Change-Id: Ife449437746da85958bd447e0a6cf3d2223b398c
2009-09-14 15:29:44 -07:00