Commit Graph

1399 Commits

Author SHA1 Message Date
Irfan Sheriff
da6da0907b Captive portal handling
We now notify the user of a captive portal before switching to the network as default.
This allows background applications to continue to work until the user confirms he
wants to sign in to the captive portal.

Also, moved out captive portal handling out of wifi as a seperate component.

Change-Id: I7c7507481967e33a1afad0b4961688bd192f0d31
2012-08-27 22:27:06 -07:00
Dianne Hackborn
d820c38d21 am 513f68bc: am bfe20d1a: am 8bfba7df: Merge "fix wrong substring"
* commit '513f68bc5a5f15d799f8795392d4861a5704fba1':
  fix wrong substring
2012-08-24 07:30:11 -07:00
Wu-cheng Li
dad32938cd Merge "Add INTENT_ACTION_STILL_IMAGE_CAMERA_SECURE intent." into jb-mr1-dev 2012-08-24 00:07:32 -07:00
Dianne Hackborn
513f68bc5a am bfe20d1a: am 8bfba7df: Merge "fix wrong substring"
* commit 'bfe20d1aa1b1236e6592914c5682c59d94936432':
  fix wrong substring
2012-08-23 15:12:26 -07:00
Wu-cheng Li
f88320558f Add INTENT_ACTION_STILL_IMAGE_CAMERA_SECURE intent.
The intent is used to launch camera when the device is secured
(e.g. with a pin, password, pattern, or face unlock).

bug:5955016
Change-Id: I5470cf7ee9deab9677665ef0566bac88bdfd80c6
2012-08-23 13:57:46 +08:00
Masanori Ogino
08bab56f68 fix wrong substring
The tokenOffsets is the offset from trimed contentLine.
But it is used in substring as the offset from un-trimed contentLine.

How to reproduce bug (ICS and before):
1. Add a contact record with name and a phone number (ex. 090-1111-2222)
2. Search by "0" in Contacts app
3. Contacts shows a wrong number something like "0900111102222"

Change-Id: I1e1cb2f3bd135d98e1573a50aa6ddc021af35b9f
2012-08-23 14:06:45 +09:00
John Spurlock
1a868b7981 Add framework support for multiple dreams.
Bug:7028665
Change-Id: I4fba6b8e39dc07af4490c621ac3bc7b3867371b2
2012-08-22 16:49:20 -04:00
Brian Muramatsu
37a37f445c add wireless charger support
bug: 6879638

- add new enum value BATTERY_PLUGGED_WIRELESS
- check for sys online file with contents "Wireless"

Change-Id: I22dc3c40f50573c98643e7b5cbcb237d0216530d
2012-08-20 10:04:12 -07:00
Dianne Hackborn
f02b60aa4f Rename UserId to UserHandle.
This is the start of turning this into a formal public API.

Change-Id: I5786d2c320f1de41a06ed5d0f65adb68967287a0
2012-08-16 12:46:38 -07:00
Jeff Brown
9630704ed3 Power manager rewrite.
The major goal of this rewrite is to make it easier to implement
power management policies correctly.  According, the new
implementation primarily uses state-based rather than event-based
triggers for applying changes to the current power state.

For example, when an application requests that the proximity
sensor be used to manage the screen state (by way of a wake lock),
the power manager makes note of the fact that the set of
wake locks changed.  Then it executes a common update function
that recalculates the entire state, first looking at wake locks,
then considering user activity, and eventually determining whether
the screen should be turned on or off.  At this point it may
make a request to a component called the DisplayPowerController
to asynchronously update the display's powe state.  Likewise,
DisplayPowerController makes note of the updated power request
and schedules its own update function to figure out what needs
to be changed.

The big benefit of this approach is that it's easy to mutate
multiple properties of the power state simultaneously then
apply their joint effects together all at once.  Transitions
between states are detected and resolved by the update in
a consistent manner.

The new power manager service has is implemented as a set of
loosely coupled components.  For the most part, information
only flows one way through these components (by issuing a
request to that component) although some components support
sending a message back to indicate when the work has been
completed.  For example, the DisplayPowerController posts
a callback runnable asynchronously to tell the PowerManagerService
when the display is ready.  An important feature of this
approach is that each component neatly encapsulates its
state and maintains its own invariants.  Moreover, we do
not need to worry about deadlocks or awkward mutual exclusion
semantics because most of the requests are asynchronous.

The benefits of this design are especially apparent in
the implementation of the screen on / off and brightness
control animations which are able to take advantage of
framework features like properties, ObjectAnimator
and Choreographer.

The screen on / off animation is now the responsibility
of the power manager (instead of surface flinger).  This change
makes it much easier to ensure that the animation is properly
coordinated with other power state changes and eliminates
the cause of race conditions in the older implementation.

The because of the userActivity() function has been changed
so that it never wakes the device from sleep.  This change
removes ambiguity around forcing or disabling user activity
for various purposes.  To wake the device, use wakeUp().
To put it to sleep, use goToSleep().  Simple.

The power manager service interface and API has been significantly
simplified and consolidated.  Also fixed some inconsistencies
related to how the minimum and maximum screen brightness setting
was presented in brightness control widgets and enforced behind
the scenes.

At present the following features are implemented:

- Wake locks.
- User activity.
- Wake up / go to sleep.
- Power state broadcasts.
- Battery stats and event log notifications.
- Dreams.
- Proximity screen off.
- Animated screen on / off transitions.
- Auto-dimming.
- Auto-brightness control for the screen backlight with
  different timeouts for ramping up versus ramping down.
- Auto-on when plugged or unplugged.
- Stay on when plugged.
- Device administration maximum user activity timeout.
- Application controlled brightness via window manager.

The following features are not yet implemented:

- Reduced user activity timeout for the key guard.
- Reduced user activity timeout for the phone application.
- Coordinating screen on barriers with the window manager.
- Preventing auto-rotation during power state changes.
- Auto-brightness adjustment setting (feature was disabled
  in previous version of the power manager service pending
  an improved UI design so leaving it out for now).
- Interpolated brightness control (a proposed new scheme
  for more compactly specifying auto-brightness levels
  in config.xml).
- Button / keyboard backlight control.
- Change window manager to associated WorkSource with
  KEEP_SCREEN_ON_FLAG wake lock instead of talking
  directly to the battery stats service.
- Optionally support animating screen brightness when
  turning on/off instead of playing electron beam animation
  (config_animateScreenLights).

Change-Id: I1d7a52e98f0449f76d70bf421f6a7f245957d1d7
2012-08-15 03:06:24 -07:00
Chiao Cheng
472f416140 Merge "Adding limit and offset query parameters to CallLog." into jb-mr1-dev 2012-08-14 10:53:19 -07:00
Haoyu Bai
0412423f06 Setup idletimer for network interface.
Cherry-picked from commit f71ca8a572 in
master. DO NOT MERGE

Change-Id: I6101c7ae041b4cc1237ce7a9983753dbdfa301d3
2012-08-10 15:58:34 -07:00
Irfan Sheriff
3fb4ba616e Add control to disable suspend optimizations
Add an advanced setting that allows user to turn off power savings at screen off.

Bug: 5885175
Change-Id: I2dd013b86d7500a2ad1f9ec75d86551808f05543
2012-08-09 15:50:55 -07:00
Subir Jhanb
603af61a7c Add a new permission to have access to Gal Provider
BUG:6897999

Change-Id: Ie60963b7f3911b402b971e794178754e1b4f0a43
2012-08-08 14:31:45 -07:00
Dianne Hackborn
5773bfdb7c Add power menu action to take a bug report
Change-Id: I5f58d99e9a27a1fc496fa54e0c0ee333087155da
2012-08-07 11:42:09 -07:00
Dianne Hackborn
dde331cebd We can now (kind-of) change screen density on the fly.
Preloaded drawables now have a density associated with them, so we
can load the correct drawable if we are using a different density.

Window manager now formally keeps track of the density for each
screen, allowing it to be overridden like you can already do with
size, and relies on this density to drive itself internally and
the configurations it reports.

There are a new set of Bitmap constructors where you provide a
DisplayMetrics so they can be constructed with the correct density.
(This will be for when you can have different windows in the same
app running at different densities.)

ActivityThread now watches for density changes, and pushes them
to the DENSITY_DEVICE and Bitmap global density values for that
process.

A new am command allows you to change the density.
2012-08-03 17:27:29 -07:00
Chiao Cheng
509e1f1a97 Adding limit and offset query parameters to CallLog.
Allows clients to paginate through call logs.

Change-Id: Icdd796f990ccf25f5f5e2183412e5391f4572add
2012-08-03 15:19:37 -07:00
Michael Chan
5f0a47415c am 19a04862: am a13730f4: Merge "Fixed the problem where getEntityAndIncrementCursor would always return "0" for attendeeIdentity & attendeeIdNamespace instead of the actual string." into jb-dev
* commit '19a048626e29524e17bbe30f1f235aa365b6212b':
  Fixed the problem where getEntityAndIncrementCursor would always return "0" for attendeeIdentity & attendeeIdNamespace instead of the actual string.
2012-07-24 22:03:18 -07:00
Michael Chan
19a048626e am a13730f4: Merge "Fixed the problem where getEntityAndIncrementCursor would always return "0" for attendeeIdentity & attendeeIdNamespace instead of the actual string." into jb-dev
* commit 'a13730f42449d97ec7206769ccaad9d95bc2924f':
  Fixed the problem where getEntityAndIncrementCursor would always return "0" for attendeeIdentity & attendeeIdNamespace instead of the actual string.
2012-07-24 22:00:39 -07:00
Wink Saville
33034b13ca Create telephony-common and mms-common - DO NOT MERGE
These have been created to reduce the size and complexity
of frameworks/base.

mms-common was created by moving all of
  frameworks/base/core/java/com/google/android/mms
to:
   frameworks/opt/mms

telephony-common was created by moving some of
   frameworks/base/telephony
to:
   frameworks/opt/telephony

Change-Id: If6cb3c6ff952767fc10210f923dc0e4b343cd4ad
2012-07-17 12:23:09 -07:00
Michael Chan
a07ea5da07 Fixed the problem where getEntityAndIncrementCursor would always return "0" for attendeeIdentity & attendeeIdNamespace instead of the actual string.
Bug: 6798688
Change-Id: Ia3b6ee33110ecc8035c24d6340593160748849fd
2012-07-13 14:10:40 -07:00
Wink Saville
5362f17ff5 Merge commit '1b003ef0' into mit
* commit '1b003ef0':
  Create telephony-common and mms-common

Change-Id: Ie8876541dbe7f4c933cf7d69910dd204538bc975
2012-07-11 18:15:50 -07:00
Wink Saville
a639b311e9 Create telephony-common and mms-common
These have been created to reduce the size and complexity
of frameworks/base.

mms-common was created by moving all of
  frameworks/base/core/java/com/google/android/mms
to:
   frameworks/opt/mms

telephony-common was created by moving some of
   frameworks/base/telephony
to:
   frameworks/opt/telephony

Change-Id: If6cb3c6ff952767fc10210f923dc0e4b343cd4ad
2012-07-11 16:02:08 -07:00
Christopher Tate
b2d8f3f747 am b69c77cd: am 1598a508: Merge "Do not back up / restore the rotation-related settings" into jb-dev
* commit 'b69c77cd194ccbe24a8b1e5d8457b44d150f9a96':
  Do not back up / restore the rotation-related settings
2012-06-29 12:45:57 -07:00
Christopher Tate
596e1917d5 Do not back up / restore the rotation-related settings
Change-Id: I4c5f8c31fa78acc1dfa2676e89b2c1c7bbd12a06
2012-06-29 11:55:02 -07:00
Makoto Onuki
9b6f53c544 am df6d3eeb: am c4637d3e: Merge "Allow restricting the scope of a phone-filter search" into jb-dev
* commit 'df6d3eebbaa8c0b3cb41aec44b9e212f2d4cdb1a':
  Allow restricting the scope of a phone-filter search
2012-06-18 10:49:44 -07:00
Daniel Lehmann
1024de5961 Allow restricting the scope of a phone-filter search
This also includes a previous change to current.txt that hasn't been
copied to 16.txt yet

Bug:6662259

Change-Id: Iaab5c38ad56882a1270b5276ba7a399bbb8a49f3
2012-06-15 20:32:33 -07:00
Jeff Brown
1b60e72877 am eef4bc08: am 615fd3df: Merge "Implement new rotation policy." into jb-dev
* commit 'eef4bc08137f2324e2974c282992ff546df99e54':
  Implement new rotation policy.
2012-06-05 19:20:08 -07:00
Jeff Brown
207673cdbb Implement new rotation policy.
Rotation lock does not override NOSENSOR mode anymore.

Centralize the rotation policy settings into a new class shared by
the System UI and Settings applications.

Add a new setting to specify whether rotation-lock is being hidden
because the "auto-rotate screen" option has been toggled in the
Accessibility settings panel.

Bug: 6523269
Change-Id: I15173280d25bc5d101e89a9c65913aefc53fc33a
2012-06-05 17:59:46 -07:00
Makoto Onuki
5d6c1e3dbf am 46d12127: am bde32efa: Merge "Fix bug 6563184: API compatibility issue with quick contact" into jb-dev
* commit '46d1212704b962df06e0d150a3d81c2c95acd5f5':
  Fix bug 6563184: API compatibility issue with quick contact
2012-05-31 11:05:09 -07:00
Makoto Onuki
bde32efa20 Merge "Fix bug 6563184: API compatibility issue with quick contact" into jb-dev 2012-05-31 10:58:58 -07:00
Svetoslav Ganov
2d9f96bf45 am 191e7c5a: am 758534ed: Merge "Ask to enable touch exploration only the first time it enables the feature." into jb-dev
* commit '191e7c5a4959e4c16154ade5d1ceb277ef31021e':
  Ask to enable touch exploration only the first time it enables the feature.
2012-05-30 19:13:29 -07:00
Svetoslav Ganov
9a4c5cd191 Ask to enable touch exploration only the first time it enables the feature.
1. Now we are asking the user to grant permission to the service to enable
   touch exploration only the first time this service is enabled. If the
   service was uninstalled and then later installed we ask the user again.
   This avoids the scenario in which rebooting the device or upgrading an
   accessibility service leaves the device in a state in which the user
   cannot interact with.

bug:6582088

Change-Id: I51d24e4892b3b48c9fb11dfb09ec1118502ba526
2012-05-30 18:41:08 -07:00
Makoto Onuki
bba33cd86e Fix bug 6563184: API compatibility issue with quick contact
Add FLAG_ACTIVITY_NEW_TASK if the starting contentext is not an activity.

Change-Id: I3c03a1acc12798d846c6f321cf46f77a2833172b
2012-05-30 13:44:56 -07:00
rich cannings
a6cfe52eb8 Allow APKs to install when verifier times out.
When app verfication is enabled and the verifier times out, allow
PackageManagerService to continue with the installation.

Bug: 6531120
Change-Id: Ic6aef755af92588e8887c918b70fb195c683b24c
2012-05-22 10:44:39 -07:00
Jeff Sharkey
787c9ec558 Merge "Transition from DEV network stats to XT." into jb-dev 2012-05-18 11:40:42 -07:00
Jake Hamby
172d97edcd Enable SMS short code patterns to be updated from secure settings.
The premium SMS short code detector loads patterns from an XML resource
by default (frameworks/base/core/res/res/xml/sms_short_codes.xml).
Add support for updated patterns to be loaded on a per-country basis
from a secure setting named "sms_short_codes_" + the country code.
Updated patterns can be pushed to Google devices via Gservices.

Bug: 5513975
Change-Id: Ibfc0be4f12227ba45c28396ec7cdbc307442af81
2012-05-17 16:29:44 -07:00
Jeff Sharkey
70c70530bd Transition from DEV network stats to XT.
When XT stats are available, transition to prefer them over DEV,
since they aren't subject to hardware driver bugs.  Only switches at
the first atomic XT bucket, and adds a Settings.Secure flag to force
back to DEV if needed.  Includes tests to cover transition.

Fix tests where device overlay would change which network types
reflected data usage.  Test both history and summary APIs.  Fixed
collection timestamps to reflect full buckets.

Bug: 6504744
Change-Id: Idd7f3b2fdb064c36547c85c51c214fd938c59b7e
2012-05-17 10:10:39 -07:00
Michael Chan
9a9001f008 Update docs for launching custom app for calendar events
Change-Id: I0aeeed91cc27f2c4fa9a026371713cb562776fa8
2012-05-14 18:28:21 -07:00
Jeff Sharkey
f53857716a Enforce READ_EXTERNAL through Settings.Secure.
Always defers to user-defined setting, when present.

Bug: 6389556
Change-Id: I079d2a41b772facfdac74eefc4c8072fc9284f97
2012-05-11 15:31:39 -07:00
Dianne Hackborn
518a3d82f7 Remove auto-brightness adjustment knob.
Not yet ready for release.

Change-Id: I75bc87f35af47c6baac1f26953d8bf3e38062c92
2012-05-09 16:30:49 -07:00
Daisuke Miyakawa
3c60eeb133 Have a new constant for "vibrate when ringing" setting
Bug: 6036529
Change-Id: I850d27629a75615647883fdaa2933f337c4824d1
2012-05-08 18:37:41 -07:00
Eric Laurent
bffc3d1bd3 Silent and Vibrate mode clean up
Clean up related to new Vibration policy.
The vibrate behavior is now only derived from:
 - presence of a vibrator on the device
 - current ringer mode selected: NORMAL, VIBRATE or SILENT
If no vibrator is present the ringer mode can only be NORMAL or SILENT.

The control of ringer mode via volume keys when volume keys control the "master"
stream type (RING on phones, MUSIC on tablets) is as follows:
If a vibrator is present:
 VOL- and volume equals 1: NORMAL => VIBRATE
 VOL- and volume equals 0 and not continuous press: VIBRATE => SILENT
 VOL+ and in SILENT mode: SILENT => VIBRATE
 VOL+ and in VIBRATE mode: VIBRATE => NORMAL, volume = 1
If no vibrator is present:
 VOL- and volume equals 0 and not continuous press: NORMAL => SILENT
 VOL+ and in SILENT mode: SILENT => NORMAL, volume = 0

VIBRATE_ON and VIBRATE_IN_SILENT settings are not stored/retreived any more.

AudioService checks and corrects ringer mode and stream volumes if necessary when reading from
DB at boot time.

Also:
 Added dump for stream volumes in AudioService.
 Added device names missing in AudioSystem for USB accessory and USB device.

Issue: 6036529
Issue: 6414950
Issue: 6448163

Change-Id: I77fb821ec63e4e566320cac2701b4ac466e86aef
2012-05-08 15:10:37 -07:00
Daisuke Miyakawa
e23362a54d Use callable-filter capability when updating call log
CallerInfo#phoneNumber has a formatted phone number even when contacts
database itself has an unformatted one, so just using Phone.CONTENT_URI
may not be enough to find the relevant contact.

Bug: 6291905
Change-Id: Ie6e40529eb1f9cf98de861601669dbccb718541c
2012-05-06 19:02:51 -07:00
Makoto Onuki
35c29cfce7 Remove SocialContract, which was never used.
Bug 6148750

Change-Id: I3061b427ea20c35de826e6c0c7bb8cbe5fa1f04d
2012-05-03 16:39:40 -07:00
Irfan Sheriff
d52e0c791f Merge "Add support for changing p2p device name" into jb-dev 2012-04-27 09:55:37 -07:00
Irfan Sheriff
2bdefcab74 Add support for changing p2p device name
Change-Id: Ie13fe2adedd0bac6aa07b3369c4d6a05ef33cd24
Signed-off-by: isheriff@google.com
Signed-off-by: Yoshihiko Ikenaga <yoshihiko.ikenaga@jp.sony.com>
2012-04-27 08:53:34 -07:00
Makoto Onuki
46891a8f1c Update streamitems javadoc
ACCOUNT_TYPE and ACCOUNT_NAME query parameters were required in API level 15.
We've removed the check for JB, but in order to keep compatibility with HC
apps still need to add those parameters.

Bug 5135278

Change-Id: Ib9b9751c9017c53905047045816a44c5a279fa64
2012-04-26 15:41:48 -07:00
Makoto Onuki
e5420e9c98 Clearify javadoc on Phone.NORMALIZED_NUMBER.
This column can be null even if NUMBER isn't.

Change-Id: I74698c7caca87b92aee469b8d343c4d20a78f4fd
2012-04-25 13:24:41 -07:00
Michael Chan
e272cbe7e6 Merge "Add support for custom app and uri in events" 2012-04-24 17:39:11 -07:00