Commit Graph

918 Commits

Author SHA1 Message Date
Adam Powell
0e94b5151d Add subtitles for action bars and context modes.
Fix an issue where context mode content was cleared before animating out.

Change-Id: Ie7a065e65bc18e3da32de07543d0f71d2a2d648c
2010-06-29 19:00:15 -07:00
Adam Powell
89e0645b41 Added context modes to ActionBar API.
Change-Id: I7c3e782cbf01be7bc671b377fb4d706040888833
2010-06-29 14:04:58 -07:00
Dianne Hackborn
b0c56b24aa Fix SDK build.
Change-Id: Iec71b6cbaf262f143c65c4b7b98e165f285259ac
2010-06-28 21:46:32 -07:00
Dianne Hackborn
445646c521 Improvements to ListFragment.
Now deals correctly with a content view containing just a list,
and adds a lot more built-in functionality: ability to show
custom text for an empty list, and indeterminant progress while
populating the list.

In addition, reworks transaction committing to be more aggressive
about committing the transactions as the containing activity
moves between its states (rather than waiting for the activity's
handler to process the transaction message whenever that may
finally happen).  And fixed a bug with saving/restoring state of
transaction replace operations.

Change-Id: I9617a0c4f248b50a61b319910323639b6de24f73
2010-06-28 15:17:44 -07:00
The Android Open Source Project
d0e73fb629 am d3844bcf: merge from froyo-plus-aosp
Merge commit 'd3844bcfb05719ab69d4aae6f4767ad3ef6d23fc'

* commit 'd3844bcfb05719ab69d4aae6f4767ad3ef6d23fc':
  Support custom themes with AlertDialog.Builder
2010-06-25 14:22:11 -07:00
The Android Open Source Project
d3844bcfb0 merge from froyo-plus-aosp
Change-Id: I9bd45d66c9586b99635d7d05d1f351126bfc9840
2010-06-25 11:21:37 -07:00
Dianne Hackborn
8bb998d52c am ea8eafad: am 2529a453: Merge "Make bad notifications crash their application." into gingerbread
Merge commit 'ea8eafad4f5438ec1291d45376959a996d36e15e'

* commit 'ea8eafad4f5438ec1291d45376959a996d36e15e':
  Make bad notifications crash their application.
2010-06-24 17:33:14 -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
36e5f667bc resolved conflicts for merge of 2eb12a47 to master
Change-Id: I79eb9d9f083e51ec1b99145d81632683669e7a99
2010-06-24 16:29:54 -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
5eceb79a19 am 82677b95: am e57c3a88: Merge "Add APIs for finding heavy-weight apps." into gingerbread
Merge commit '82677b9585968806800abff65c5b1529f509a313'

* commit '82677b9585968806800abff65c5b1529f509a313':
  Add APIs for finding heavy-weight apps.
2010-06-24 12:46:31 -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
f92f8686f9 am 98f7aed6: am 1e4b9f39: Remove InputConsumer, replacing with InputQueue.
Merge commit '98f7aed66b54c365f816fe990de978f61155cde1'

* commit '98f7aed66b54c365f816fe990de978f61155cde1':
  Remove InputConsumer, replacing with InputQueue.
2010-06-23 14:43:31 -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
4ecdad302f am c82b4e80: am 69a4817e: Immersive activity API.
Merge commit 'c82b4e80b8211851963929b33592bbc50358525b'

* commit 'c82b4e80b8211851963929b33592bbc50358525b':
  Immersive activity API.
2010-06-23 13:37:59 -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
320742b15a am e3e2883f: am e24a60aa: Merge "First stab at attaching native event dispatching." into gingerbread
Merge commit 'e3e2883f2232007174ead562610eb01201890d9b'

* commit 'e3e2883f2232007174ead562610eb01201890d9b':
  First stab at attaching native event dispatching.
2010-06-23 10:32:25 -07: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
Jean-Baptiste Queru
3b9f0a33a1 Recover a handful of commits that were reverted earlier 2010-06-21 13:46:59 -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
c68b6e893a am 04b4f781: am cc86c933: Merge "New API for high-priority Notifications and full-screen alerts." into gingerbread
Merge commit '04b4f781b118fa9c815910bf5d2a772cdfef07c2'

* commit '04b4f781b118fa9c815910bf5d2a772cdfef07c2':
  New API for high-priority Notifications and full-screen alerts.
2010-06-17 13:27:34 -07:00
Adam Powell
96675b1df3 Merging ActionBar menu with options menu.
Options menu items may now specify if they would like to appear in the
action bar. Menu items defined in xml may set the showAsAction
attribute to one of "never"(default), "ifRoom", or "always". Action
buttons are populated as follows:

* All showAsAction="always" items become action buttons, even if it
  would crowd the navigation area of the action bar.

* If there is space remaining, showAsAction="ifRoom" items are added
  until no more will fit comfortably.

Action button click events are now handled by the
onOptionsItemSelected method used by the standard options menu.

The construction of options menus now happens earlier in order to
provide data to the action bar. Activities with an action bar can now
expect to have onCreateOptionsMenu called when activity start-up is
complete.

Activity#invalidateOptionsMenu can be used to force a refresh of menu
items where the previous API would use ActionBar#updateActionMenu.

Change-Id: If52ddf1cf9f6926206bcdeadf42072ea2c24fab9
2010-06-17 11:35:43 -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
4ed8e42c50 am 92dd85d0: am 742b282e: Merge "StrictMode: implement the log-to-DropBox option" into gingerbread
Merge commit '92dd85d02af60b001f1ae6919eeb11bcf38e64c8'

* commit '92dd85d02af60b001f1ae6919eeb11bcf38e64c8':
  StrictMode: implement the log-to-DropBox option
2010-06-14 15:25:09 -07:00
Brad Fitzpatrick
143666f0ca StrictMode: implement the log-to-DropBox option
Change-Id: I51d12e264155078f953028241f8c5cbdc47262e8
2010-06-14 13:38:01 -07:00
Sen Hu
bde7570659 wire up sampling profiler to dropbox
When system property "persist.sys.profiler_hz" > 0, SamplingProfilerService is
loaded to SystemServer. It creates a FileObserver, watching any new file in the snapshot
directory. When a snapshot is found, it is put in dropbox and deleted after that.

SamplingProfilerIntegration writes snapshots with headers. Headers are <name, value> pairs,
instantiated by caller.

Currently header format is (also in source comment):

Version: <version number of profiler>\n
Process: <process name>\n
Package: <package name, if exists>\n
Package-Version: <version number of the package, if exists>\n
Build: <fingerprint>\n
\n
<the actual snapshot content begins here...>

BUG=2732642

Change-Id: I2c1699f1728e603de13dbd38f9d8443cd3eecc06
2010-06-14 13:27:01 -07:00
Dianne Hackborn
5ddd127d5a Implement ListFragment and Fragment context menus.
Also fix the docs build.

Change-Id: I96f24cc03e6debd897171e503957284b140a9f27
2010-06-12 22:34:04 -07:00
Wink Saville
4dc643eb67 Fix some javadoc link/see's to fix the build for the sdk-win_sdk target.
Change-Id: I243c19d3d7f1ed2decbd6bfc7ecbe6ce2b582fc2
2010-06-12 22:16:41 -07:00
Brad Fitzpatrick
0c330e26e8 am 11bd9d1e: am 94f14aec: Merge "More StrictMode work, handling violations in ActivityManagerService." into gingerbread
Merge commit '11bd9d1ec20ce3bbd3791b537faad429a1ca87e7'

* commit '11bd9d1ec20ce3bbd3791b537faad429a1ca87e7':
  More StrictMode work, handling violations in ActivityManagerService.
2010-06-11 18:30:09 -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
cf0a99910c am 4d4f265e: am 9f8cc518: Merge "Adjust activity manager process OOM adj." into kraken
Merge commit '4d4f265e6b6ccfc239150bd71aa2ce2b8de6237f'

* commit '4d4f265e6b6ccfc239150bd71aa2ce2b8de6237f':
  Adjust activity manager process OOM adj.
2010-06-11 11:00:53 -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
b60c941811 resolved conflicts for merge of f37cbe6b to master
Change-Id: I529b17e55b9668f900f685f92e9831e14a82db05
2010-06-10 15:58:22 -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
Dmitri Plotnikov
d92ea071c0 Adding a stopLoading() method.
This add an API to stop and remove a loader that
is no longer needed.

Change-Id: Ibe59981bb8bc9965a3360917e80b0e710efcd8e1
2010-06-09 20:20:38 -07:00
Dianne Hackborn
b31e84bc45 Add Fragment option menu APIs.
Also fix up how transactions are handled so that a series of transactions
can correctly be created and committed.

Change-Id: I948ba47d49e9b2246a1958bd9eac9dd36dc5a855
2010-06-09 12:26:29 -07:00
Konstantin Lopyrev
c857740f24 Adding support for minimum number of non letter characters.
Change-Id: If54cb7209d65eef826d474d7e0dbbef63d2f2b47
2010-06-08 19:06:11 -07:00
Adam Powell
db479c9af0 Merge "Dropdown mode for ActionBar; style and API updates" 2010-06-08 17:27:09 -07:00
Jim Miller
1a0ce1cc6f am db603bb5: am 3b68548d: am 75b6a6b9: Merge "Fix 2737842: Disable KeguardManager API if device policy is enabled" into froyo 2010-06-08 16:37:12 -07:00