Commit Graph

843 Commits

Author SHA1 Message Date
The Android Open Source Project
d3844bcfb0 merge from froyo-plus-aosp
Change-Id: I9bd45d66c9586b99635d7d05d1f351126bfc9840
2010-06-25 11:21:37 -07:00
Dianne Hackborn
ea8eafad4f am 2529a453: Merge "Make bad notifications crash their application." into gingerbread
Merge commit '2529a45339b7e02d9d2b813358bcecd144a971ea' into gingerbread-plus-aosp

* commit '2529a45339b7e02d9d2b813358bcecd144a971ea':
  Make bad notifications crash their application.
2010-06-24 17:30:42 -07:00
Dianne Hackborn
9d39d0cb36 Make bad notifications crash their application.
Implement notification manager handling of bad notifications, to
call a new activity manager to have the owner's process crashed
(if there is one).

Change-Id: Ib15e8d0c598756f3b39c99cc2045c18e054daf6b
2010-06-24 17:27:28 -07:00
Dianne Hackborn
2eb12a4722 am 01e4cfc4: Some ActivityThread/ActivityManager cleanup.
Merge commit '01e4cfc47d0a2c7e7ab383d2fb23224ec52c0301' into gingerbread-plus-aosp

* commit '01e4cfc47d0a2c7e7ab383d2fb23224ec52c0301':
  Some ActivityThread/ActivityManager cleanup.
2010-06-24 15:23:59 -07:00
Dianne Hackborn
01e4cfc47d Some ActivityThread/ActivityManager cleanup.
- Move PackageInfo out of ActivityThread, renaming to LoadedApk.
- Rename some of the other PacakgeInfo inner classes to better
  represent what they are.
- Rename HistoryRecord to ActivityRecord.
- Introduce AppGlobals, to eventually let ActivityThread become
  package scoped.

Change-Id: Ib714c54ceb3cdbb525dce3db9505f31042e88cf0
2010-06-24 15:20:48 -07:00
Dianne Hackborn
82677b9585 am e57c3a88: Merge "Add APIs for finding heavy-weight apps." into gingerbread
Merge commit 'e57c3a88b99856d1e69fdf115e7c7954594b7385' into gingerbread-plus-aosp

* commit 'e57c3a88b99856d1e69fdf115e7c7954594b7385':
  Add APIs for finding heavy-weight apps.
2010-06-24 12:42:55 -07:00
Dianne Hackborn
baf42c625c Add APIs for finding heavy-weight apps.
Change-Id: I6c865cce404cac1a08eee056f963de5d276d5898
2010-06-24 11:38:47 -07:00
Dianne Hackborn
98f7aed66b am 1e4b9f39: Remove InputConsumer, replacing with InputQueue.
Merge commit '1e4b9f3936d6f357e89360293e05a0e16d5fa440' into gingerbread-plus-aosp

* commit '1e4b9f3936d6f357e89360293e05a0e16d5fa440':
  Remove InputConsumer, replacing with InputQueue.
2010-06-23 14:40:36 -07:00
Dianne Hackborn
1e4b9f3936 Remove InputConsumer, replacing with InputQueue.
Change-Id: Ib06907278457aaee842b123adc072840ca3602d8
2010-06-23 14:37:30 -07:00
Daniel Sandler
c82b4e80b8 am 69a4817e: Immersive activity API.
Merge commit '69a4817e3e1e368e758ff8c238deb5ee26963c04' into gingerbread-plus-aosp

* commit '69a4817e3e1e368e758ff8c238deb5ee26963c04':
  Immersive activity API.
2010-06-23 13:36:25 -07:00
Daniel Sandler
69a4817e3e Immersive activity API.
An Activity can declare itself to be "immersive" either by
setting android:immersive="true" in AndroidManifest or by
calling setImmersive(true).

Immersive activities "should" not be interrupted, for
example by Notifications with an associated
fullScreenIntent. (In the future we may even prevent any
non-system application from successfully calling
startActivity() if the foreground activity is immersive.)
Notifications with FLAG_HIGH_PRIORITY set will be shown to
the user in some less-obtrusive way if the frontmost
activity is immersive.

Change-Id: I8d0c25cc4e22371c27cbf2bb6372d2c95d57b2d7
2010-06-23 16:29:36 -04:00
Dianne Hackborn
e3e2883f22 am e24a60aa: Merge "First stab at attaching native event dispatching." into gingerbread
Merge commit 'e24a60aa4670fb835772b23ff665bb368fa65e30' into gingerbread-plus-aosp

* commit 'e24a60aa4670fb835772b23ff665bb368fa65e30':
  First stab at attaching native event dispatching.
2010-06-22 11:26:02 -07:00
Dianne Hackborn
a95e4cb62f First stab at attaching native event dispatching.
Provides the basic infrastructure for a
NativeActivity's native code to get an object representing
its event stream that can be used to read input events.

Still work to do, probably some API changes, and reasonable
default key handling (so that for example back will still
work).

Change-Id: I6db891bc35dc9683181d7708eaed552b955a077e
2010-06-22 11:21:50 -07:00
The Android Open Source Project
6c9a30045b merge from froyo-plus-aosp
Change-Id: I36dd4460cae6e3212d724e70ff1091cb791670cd
2010-06-21 11:23:45 -07:00
The Android Open Source Project
766d1b7458 merge from open-source master
Change-Id: I05e4c26c902f3cfe0dd99107f518768b246562f7
2010-06-18 12:44:20 -07:00
Daniel Sandler
e46cbd379a New API for high-priority Notifications and full-screen alerts.
* fullScreenIntent: a PendingIntent pointing to a
  full-screen activity or other modal alert experience to be
  shown to the user instead of (or in addition to) a
  traditional status bar notification icon. Example: An
  incoming call should pop up a full-screen activity
  allowing the user to accept or decline the call.

  The old way to accomplish this is to simply fire off the
  full-screen intent directly from the Phone app. By routing
  through the Notification system, we make way for the
  FLAG_IMMERSIVE bit (forthcoming API) which would allow the
  frontmost opaque window to suppress full-screen alerts.

* FLAG_HIGH_PRIORITY: This bit allows a notification to be
  shown in windows that have the FLAG_IMMERSIVE bit set. For
  example, a Notification corresponding to an incoming call
  would be marked HIGH_PRIORITY so that even in an immersive
  activity (i.e. a networked game) the Notification could be
  shown to the user.

Change-Id: I4943e53f425800a6e152bc4992dd41586b43aff8
2010-06-17 11:34:13 -04:00
Martin Nordholts
e429c5ec9d Support custom themes with AlertDialog.Builder
Add a constructor to AlertDialog.Builder with a 'theme' parameter so
that e.g. the buttons in a dialog built with AlertDialog.Builder can
be themed.

Change-Id: Ie1b1c9706ad2146c8b64dd91fe249c6855c6ac65
2010-06-15 12:05:17 -07:00
The Android Open Source Project
a191eb013a Fix build
This file was brought back to life by mistaken when merging from
a branch where it was modified into a branch where it had been
deleted

Change-Id: I406c6ced978abfdd59684f14bc9dd53ee7968aae
2010-06-15 09:59:15 -07:00
The Android Open Source Project
4138677a72 merge from open-source master
Change-Id: I405069e9495e43fdcdedc41efce77d43a291272c
2010-06-15 09:30:31 -07:00
Christian Mehlmauer
e6af73e18e Replaced deprecated Inten.toURI method
Change-Id: Iff3200294edbc1cac188502219bfe481133a5d8e
2010-06-14 15:47:15 -07:00
Brad Fitzpatrick
143666f0ca StrictMode: implement the log-to-DropBox option
Change-Id: I51d12e264155078f953028241f8c5cbdc47262e8
2010-06-14 13:38:01 -07:00
Brad Fitzpatrick
46d4238746 More StrictMode work, handling violations in ActivityManagerService.
Also starts to do duplicate-suppression.

Change-Id: I0502f6ab6c45fa319298de4874ecfe44b7829d21
2010-06-11 16:11:26 -07:00
Dianne Hackborn
32907cfb38 Adjust activity manager process OOM adj.
Modify OOM adj classes a bit, to take into account the new
heavy weight app type, and give "foreground services" their
own category to have a bettery chance to manager them when
things go wrong.

Also add some new code to battery stats to keep a history
of changes to the battery level.

Change-Id: I29f5ab6938777e1a7eafd7d8c38b5e564cc9f96a
2010-06-11 10:39:11 -07:00
Brad Fitzpatrick
438d059512 Introduce "StrictMode"
This is a new public API for developers to opt-in to strict rules
about what they're allowed to do on certain threads.  (this is the
public face of the @hide dalvik.system.BlockGuard, added recently...)

In practice this will be used for developers to opt-in to declaring
that they don't want to be allowed to do various operations (such as
disk I/O or network operations) on their main UI threads.  (these
operations are often accidental, or even when they are fast come with
a good chance of being slow or very slow in some cases....)

Implementation wise, this is just a thread-local integer that has a
bitmask of the things that aren't allowed, and more bits for saying
what the violation penalty is.  The penalties, of which multiple can
be chosen, include:

  * logging
  * dropbox uploading for analysis/reporting
  * annoying dialog
  * full-on crashing

These are all only very roughly implemented at this point, but all
parts now minimally work end-to-end now, so this is a good checkpoint
commit before this gets too large.

Future CLs will polish all the above 4 penalties, including
checksumming of stacktraces and minimizing penalties for duplicate
violations.

Change-Id: Icbe61a2e950119519e7364030b10c3c28d243abe
2010-06-10 14:38:58 -07:00
Jim Miller
3b68548da6 am 75b6a6b9: Merge "Fix 2737842: Disable KeguardManager API if device policy is enabled" into froyo
Merge commit '75b6a6b972e6b18143fd629d3d9c824c442c5f4c' into kraken

* commit '75b6a6b972e6b18143fd629d3d9c824c442c5f4c':
  Fix 2737842: Disable KeguardManager API if device policy is enabled
2010-06-08 16:33:26 -07:00
Jim Miller
c19dade5a4 am 75b6a6b9: Merge "Fix 2737842: Disable KeguardManager API if device policy is enabled" into froyo
Merge commit '75b6a6b972e6b18143fd629d3d9c824c442c5f4c' into froyo-plus-aosp

* commit '75b6a6b972e6b18143fd629d3d9c824c442c5f4c':
  Fix 2737842: Disable KeguardManager API if device policy is enabled
2010-06-08 16:33:22 -07:00
Jim Miller
284b62e1b8 Fix 2737842: Disable KeguardManager API if device policy is enabled
This change adds notification to find out when the device policy
has changed.  When an admin adds or changes a policy, we get notified
and reset the state of keyguard to be enabled.

It also moves disabling keyguard into the TokenWatcher.acquired()
method to avoid disabling keyguard when a policy doesn't permit it.
This avoids reference counting issues in TokenWatcher and hence relieves
the ordering issue.

There is one remaining caveat. An application that uses KeyguardManager
to disable keyguard will need to disable keyguard again after any
policy change.

Tested:

Install and run app that disables keyguard with no admin. Result: keyguard is enabled/disabled as expected.
Enable admin and set quality = "something" after installing & running app. Result: keyguard is enabled.
Change admin password quality to "unspecified" and re-run app (per caveat). Result: keyguard is disabled.
Change admin password quality to "something" again. Result: keyguard is enabled.
Disable admin : Result: keyguard is enabled until app runs again (per caveat).

Added minor cosmetic changes after review.

Change-Id: I302f2b01446bf031f746b0f3e8b5fd7a6cc0e648
2010-06-08 15:47:52 -07:00
Jim Miller
700a95068e am cb52cb52: Fix SDK build.
Merge commit 'cb52cb52253c3832ccc7f5f1dbb4d8a0bd8178c0' into kraken

* commit 'cb52cb52253c3832ccc7f5f1dbb4d8a0bd8178c0':
  Fix SDK build.
2010-06-07 21:23:53 -07:00
Jim Miller
5d0cc81a34 am cb52cb52: Fix SDK build.
Merge commit 'cb52cb52253c3832ccc7f5f1dbb4d8a0bd8178c0' into froyo-plus-aosp

* commit 'cb52cb52253c3832ccc7f5f1dbb4d8a0bd8178c0':
  Fix SDK build.
2010-06-07 21:23:33 -07:00
Jim Miller
cb52cb5225 Fix SDK build.
On branch fix_sdk
 Changes to be committed:
   (use "git reset HEAD <file>..." to unstage)

	modified:   core/java/android/app/KeyguardManager.java

Change-Id: I56848db098822536f0ac32efc8f0eb1d725bf6f9
2010-06-07 21:19:16 -07:00
Jim Miller
c4e37ac0ea am bde25c20: Merge "Fix 2737842: disable keyguard API when device policy is enabled." into froyo
Merge commit 'bde25c207731783a62e3611586fe05cd35add0d9' into froyo-plus-aosp

* commit 'bde25c207731783a62e3611586fe05cd35add0d9':
  Fix 2737842: disable keyguard API when device policy is enabled.
2010-06-07 19:26:28 -07:00
Jim Miller
7d70358a03 am bde25c20: Merge "Fix 2737842: disable keyguard API when device policy is enabled." into froyo
Merge commit 'bde25c207731783a62e3611586fe05cd35add0d9' into kraken

* commit 'bde25c207731783a62e3611586fe05cd35add0d9':
  Fix 2737842: disable keyguard API when device policy is enabled.
2010-06-07 19:25:49 -07:00
Jim Miller
d6b5705e18 Fix 2737842: disable keyguard API when device policy is enabled.
This fix disables KeyguardManager's enable/disable API when any
device policy admin requests a policy that enforces a password.

Change-Id: Idb1da16b14ed8963142f7b1f62d2b060d84ffa65
2010-06-07 19:19:29 -07:00
Dianne Hackborn
860755faa6 Add support for heavy-weight applications.
Only one can be running at a time, their process can not be killed,
and a notification is posted while it is running.

Change-Id: I843015723947e0c934ae63a1aeee139327c0bc01
2010-06-04 10:09:13 -07:00
Joe Onorato
798ac4c7d7 Start moving resources to SystemUI.apk.
Change-Id: Ibf30b8196d65d7fbca1177968cefa5f7a875bf1d
2010-06-02 14:48:45 -07:00
Joe Onorato
18e69dfc72 Checkpoint. Data structures for Notifications in place.
Change-Id: I146fb9bc1d349112541368e2c99a667821dfdf6e
2010-06-02 14:48:43 -07:00
Joe Onorato
4762c2d75a Add expand and collapse.
Change-Id: I58ad95c59b2c46d3f25349e137d5624aefc6c6cd
2010-06-02 14:48:42 -07:00
Joe Onorato
f3f0e053f0 Make disable() work.
Change-Id: I93fea37e777b3e04fe7f9171d5b84821587c24f5
2010-06-02 14:48:42 -07:00
Joe Onorato
0cbda99f87 The status bar draws its icons now. 2010-06-02 14:48:41 -07:00
Joe Onorato
90233a1ee5 Add IStatusBar
Change-Id: Ie73d665085d5ce7358c285bf332ef1dc96005d0f
2010-06-02 14:48:40 -07:00
Joe Onorato
25f95f9200 Rename IStatusBar to IStatusBarService.
Change-Id: Icfec2a830f037b21f6afaa796bf49da610567e7b
2010-06-02 14:48:40 -07:00
Joe Onorato
2314aab506 First pass at splitting the status bar for the different devices.
Change-Id: I2f568df92f88dfe8de18d24dd004239f52761aa6
2010-06-02 14:48:39 -07:00
The Android Open Source Project
b705eea702 am 1bd7597b: merge from open-source master
Merge commit '1bd7597b8cdaf39d1183077c463cb30596eb31b0' into kraken

* commit '1bd7597b8cdaf39d1183077c463cb30596eb31b0':
  Replaced raw string arguments for Context.getSystemService() with final Context variables
2010-06-02 09:03:04 -07:00
The Android Open Source Project
59c82376e5 am c8763858: merge from open-source master
Merge commit 'c8763858cfcae8be89c0f88df87bf9a3ad90ae64' into kraken

* commit 'c8763858cfcae8be89c0f88df87bf9a3ad90ae64':
  Fix for issue 895 (missing android: prefix), Removed unused imports
2010-06-02 08:54:59 -07:00
The Android Open Source Project
1bd7597b8c merge from open-source master
Change-Id: I8333e295ba6b6ed8e7658ecf3fbf1ebea3537aeb
2010-06-02 08:54:47 -07:00
The Android Open Source Project
c8763858cf merge from open-source master
Change-Id: Ife78a3e7582be1853d28bbcef41f5d06f3b97ef6
2010-06-02 08:41:59 -07:00
Christian Mehlmauer
ef367529f9 Replaced raw string arguments for Context.getSystemService() with final Context variables
Change-Id: If5139a1526101292e5da557bfad3f4db80fb64a8
2010-05-31 23:08:30 +02:00
Christian Mehlmauer
d6c1919779 Fix for issue 895 (missing android: prefix), Removed unused imports
Change-Id: I5eeca1db7eb97251729dff728b4c482de4b14885
2010-05-21 19:02:48 +02:00
Dianne Hackborn
74323fd1ab Update NativeActivity to allow direct surface access.
No actual native API for using a surface, but it's a step.

Change-Id: I627f26b705abc7a05edf9117411abfacf0fae64a
2010-05-18 18:16:35 -07:00
Scott Main
6c034325a8 am 6d8e4fd8: am b83a283a: docs: add dev guide for backup
Merge commit '6d8e4fd83bb7f4eabc942dd17fa229cf9baf5fcf' into kraken

* commit '6d8e4fd83bb7f4eabc942dd17fa229cf9baf5fcf':
  docs: add dev guide for backup
2010-05-14 11:56:14 -07:00