Commit Graph

1854 Commits

Author SHA1 Message Date
Adam Powell
85de77a1c7 Merge "Fix bug 5098288 - Rethink the suite of new themes" 2011-08-02 18:44:50 -07:00
Adam Powell
269248d112 Fix bug 5098288 - Rethink the suite of new themes
Cut down the list of new themes for ICS. Holo apps now have
Theme.Holo, Theme.Holo.Light, and Theme.Holo.Light.DarkActionBar to
choose from.

Add manifest attribute android:uiOptions to express
splitActionBarWhenNarrow. Other options may move into this later as
well. (DialogWhenLarge?) This attribute is valid on both activity and
application tags; application settings will serve as the default for
activities that do not explicitly set uiOptions.

uiOptions are not currently reflected in the startup window for new
activities.

Change-Id: Iffdc2ce4cc69f79c9bd4e541b7923286e6936c1e
2011-08-02 17:58:24 -07:00
Dianne Hackborn
6311d0a079 Clear the bitmap from the canvas in a lot of places.
Change-Id: I6b2071ac7b348c473b9bdd1b972d095aebbb4fb3
2011-08-02 16:37:58 -07:00
Dianne Hackborn
ba39839444 Move ImageWallpaper to SystemUI process.
Nice to not load 4MB bitmaps in the system process.

Also, hey, with how we are now scrolling the surface instead of
the bitmap, there is no reason to keep that 4MB bitmap loaded in
to memory.  So don't.

Unfortunately it looks like for some reason the VM is still
holding on to the bitmap.  I'll need to figure out why.  Later.

Change-Id: Ib3503756144502fc5c8d5e294248c2417c4fe8c8
2011-08-01 17:55:54 -07:00
Adam Powell
f0f5fffc6f Fix bug 5090996 - Crash on tapping Menu on dial pad
Let the FragmentManager handle deferring menu invalidation when
not currently resumed.

Change-Id: I6e5de9c8ab5288c7c90a59ce8e0c7bb9133b6eb5
2011-08-01 15:55:16 -07:00
Amith Yamasani
44df62c441 Merge "Don't submit a query if it's whitespace only." 2011-07-29 11:28:37 -07:00
Christopher Tate
e0fe39387a Merge "Require the current backup pw in all backup/restore operations" 2011-07-29 11:20:45 -07:00
Dianne Hackborn
c68c913d35 Various work on out of memory managment.
- Improve how we handle processes that have shown UI, to take care
  of more cases where we want to push them into the background LRU
  list.
- New trim memory level for when an application that has done UI
  is no longer visible to the user.
- Add APIs to get new trim memory callback.
- Add a host of new bind flags to tweak how the system will adjust
  the OOM level of the target process.

Change-Id: I23ba354112f411a9f8773a67426b4dff85fa2439
2011-07-29 02:06:46 -07:00
Christopher Tate
728a1c4d5e Require the current backup pw in all backup/restore operations
Specifically, we now also require the current password to confirm any
restore operation.

Bug 4901637

Change-Id: I39ecce7837f70cd05778cb7e0e6390ad8f6fe3f3
2011-07-28 18:04:07 -07:00
Adam Powell
80df829e35 Merge "Fix bug 5079507 - ICS (phone) : ActionBar tabs don't correctly resize if activity handles orientation change" 2011-07-28 16:40:03 -07:00
Adam Powell
45c0b1954d Fix bug 5079507 - ICS (phone) : ActionBar tabs don't correctly resize
if activity handles orientation change

Make sure that bar content height and sizing/layout parameters are
properly updated after a configuration change.

Change-Id: I886df5cd9a655ba1bd34fab2b48e8b5be67fcc32
2011-07-28 16:14:19 -07:00
Christopher Tate
2efd2dbbac Support full-backup encryption and global backup password
If the user has supplied a backup password in Settings, that password
is validated during the full backup process and is used as an encryption
key for encoding the backed-up data itself.  This is the fundamental
mechanism whereby users can secure their data even against malicious
parties getting physical unlocked access to their device.

Technically the user-supplied password is not used as the encryption
key for the backed-up data itself.  What is actually done is that a
random key is generated to use as the raw encryption key.  THAT key,
in turn, is encrypted with the user-supplied password (after random
salting and key expansion with PBKDF2).  The encrypted master key
and a checksum are stored in the backup header.  At restore time,
the user supplies their password, which allows the system to decrypt
the master key, which in turn allows the decryption of the backup
data itself.

The checksum is part of the archive in order to permit validation
of the user-supplied password.  The checksum is the result of running
the user-supplied password through PBKDF2 with a randomly selected
salt.  At restore time, the proposed password is run through PBKDF2
with the salt described by the archive header.  If the result does
not match the archive's stated checksum, then the user has supplied
the wrong decryption password.

Also, suppress backup consideration for a few packages whose
data is either nonexistent or inapplicable across devices or
factory reset operations.

Bug 4901637

Change-Id: Id0cc9d0fdfc046602b129f273d48e23b7a14df36
2011-07-28 16:01:20 -07:00
Adam Powell
88ab69780f Fix bug 5087752 - Maintain correct contrast against action bars in
inverse-bar themes

Add the actionBarWidgetTheme theme attribute. This lets a theme
specify a wrapper theme that can be used to create views that will
end up in the action bar so that the rest of the code can ignore
differences in contrast. (e.g. the inverse action bar themes.)

Apps can use ActionBar#getThemedContext() to obtain a Context with a
proper theme for views that will end up in the action
bar. MenuInflaters generated by Activities will automatically use this
to properly theme inflated action views.

Change-Id: Ib28c82bf47c25d446cca2a63f617b8a4a0afa6b2
2011-07-28 11:44:41 -07:00
Romain Guy
b6f7a27c59 Merge "Reclaim more memory, more often." 2011-07-27 18:53:32 -07:00
Romain Guy
65b345fa22 Reclaim more memory, more often.
Yay.

Change-Id: I04557ad575c307a55088549f48f0e9ad994b7275
2011-07-27 18:51:50 -07:00
Adam Powell
257466d4e2 Merge "Bug 5076788 - Optimize the building and invalidation of menus" 2011-07-27 15:47:04 -07:00
Adam Powell
89b09da7b3 Bug 5076788 - Optimize the building and invalidation of menus
Fix cases that weren't batching menu presenter changes correctly.

Have FragmentManager invalidate the options menu less often.

Change-Id: Ia66fcd09ada8b0a084ad6b08d4340a8fa0c8fc5d
2011-07-27 15:37:58 -07:00
Amith Yamasani
6a7421ba94 Don't submit a query if it's whitespace only.
Just to maintain backward compatibility. It's not documented that a space
is not a valid query, but it does make sense to expect that.
Bug: 5079755

Also avoid showing an x by an empty query, by having the SearchDialog simulate an ActionBar.

Change-Id: I3a9332286a439b659e179a249587c491ef29e5c1
2011-07-27 11:55:53 -07:00
Scott Main
36193d09a8 cherrypick Change-Id: I4713d3977a0a1514ff9c4217e7f3723c0346d0d8
docs: revise ActionBar class summary and add a few links to dev guide docs

Change-Id: I14df84b16d7bdab85aa74d8b8211e988b0519115
2011-07-27 11:21:33 -07:00
Dianne Hackborn
d04ad541de Fix issue #5063010: Loaders don't seem to be properly...
...retained with compatibility library

Yikes, and also in the main platform...! :(

Change-Id: I76ee3a9a5ba4a220c2f54d0af9cf49e3a736e7bd
2011-07-25 16:28:47 -07:00
repo sync
55bc5f3e04 Updated: Wi-Fi p2p framework
First stage. Get the bones in right now even though
we are not ready on the native side.

Once, we have things underneath working - we will further update the
framework

Change-Id: I4a7dab5cd4267373dc5f8989ae4122f91c384ed5
2011-07-24 10:08:47 -07:00
Dianne Hackborn
c693823fd4 Fix issue #5054723: java.lang.NullPointerException at...
...android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1284)

Make sure to commit all pending actions before completing the destroy.

Change-Id: I85643e5f7b1221048523bd186b48fb88fc70ca23
2011-07-22 11:05:20 -07:00
satok
7793719ca9 Merge "Create TextServiceManager and SpellCheckerService" 2011-07-21 22:59:48 -07:00
satok
988323c57b Create TextServiceManager and SpellCheckerService
Bug: 4176026

This CL inherits https://android-git.corp.google.com/g/112600

Spec of TextServiceManager
- Chooses the most applicable TextService(e.g. SpellCheckerService, WordBreakIteratorService..)
    for each locale

Spec of SpellCheckerService
- Returns whether the given string is a correct word or not
- Returns Suggestions for the given string

Change-Id: Iaa425c7915fe70767ad0b17bf6c6fbcd2a1200b2
2011-07-22 14:52:21 +09:00
Romain Guy
9cbd934b3c Merge "Ouput looper traces as traceview traces" 2011-07-21 18:07:16 -07:00
Romain Guy
9a8c5cefca Ouput looper traces as traceview traces
Change-Id: I96c8e85fd7497d970febbf6f5aefc4ab903add8e
2011-07-21 18:04:29 -07:00
Dianne Hackborn
c09bd156b7 Merge "Fix bug where memory trim was not being delivered with correct level." 2011-07-21 16:19:11 -07:00
Dianne Hackborn
f0754f5ba7 Fix bug where memory trim was not being delivered with correct level.
Also improve how we handle services, keeping track of whether they showed
UI and if so putting them immediately on the LRU list.

Change-Id: I816834668722fc67071863acdb4a7f427a982a08
2011-07-21 16:02:56 -07:00
Romain Guy
6ee8c2495d Merge "Add looper profiling to adb shell am" 2011-07-21 15:31:59 -07:00
Romain Guy
7eabe55db6 Add looper profiling to adb shell am
To profile the looper, run the following command:

adb shell am profile looper start <process> <file>
adb shell am profile looper stop <process>

Change-Id: I781f156e473d7bdbb6d13aaffeeaae88bc01a69f
2011-07-21 14:56:34 -07:00
Svetoslav Ganov
6179ea3196 Adding accessibility support to the Status Bar.
1. Added content description to pretty much all animals
   in the zoo including buttons in the navigation bar,
   notifications and status icons for battery, signal,
   data, etc.

2. Rectored to avoid ovelaying views since they block
   touch exploratino. In general overlaying views
   cause trouble for touch exploration and accessibility
   in general.

3. Avoid sending accessibility events in case the user is
   touching outside of the StatauBAr panels to avoid
   confusion.

4. Added records to accessibility events in the places where
   this would help the presentation. So the event comes from
   a given "leaf" view and its predecessor is adding a record
   to the event for itself to provide more cotext. It is up
   to the accessiiblity service to choose how to present that.

bug:4686943

Change-Id: I1c1bd123d828fb10911bca92130e9a05c1f020b3
2011-07-21 12:04:54 -07:00
Costin Manolache
7288ebd8e5 Merge "waitWithTimeout() needs to check if the result is already available, like waitForActivity() does." 2011-07-20 12:33:42 -07:00
Dianne Hackborn
116b208b3a Merge "Fix issue #4976176: Font size setting does not persist" 2011-07-19 18:06:25 -07:00
Dianne Hackborn
31ca854cdb Fix issue #4976176: Font size setting does not persist
Change-Id: Id58caf990bdd3aac5ea97aaba45652ffad1f678a
2011-07-19 14:58:28 -07:00
Jeff Brown
13589b2f17 Merge "Remove an unnecessary finalizer." 2011-07-18 19:47:10 -07:00
Amith Yamasani
b4569fb17f SearchView behavioral and visual changes
Align text suggestions and search string.
Close button only clears the field.
Back button clears focus, hides dropdown and keyboard.
Tweaked SearchDialog's use of SearchView to follow above patterns.
Fixed other little bugs.

Change-Id: I9d34c2ebe2b1b2ca887220894c19a26809db85f6
2011-07-18 17:32:24 -07:00
Jeff Brown
487c38b842 Remove an unnecessary finalizer.
Simply having a finalizer impacts the GC's ability to
reclaim resources in a timely manner.

Change-Id: Ia9e5f6f1dcb50fae8c2819d25d167df751adf451
2011-07-18 17:03:20 -07:00
Dianne Hackborn
6dd005b481 I. Can. Not. Stand. ViewAncestor.
It was done so we would have the name "ViewRoot" available for a
public API.  However, the name "ViewAncestor" just makes no sense.
So instead, change it to ViewRootImpl.

Change-Id: If9599ca67896f339f6fefa7d1dde121201171d97
2011-07-18 16:16:23 -07:00
Romain Guy
bdf7609867 Trim OpenGLRenderer's memory usage whenever possible
Change-Id: I9225077184f374b1a43300add15cc1d5b6869d1c
2011-07-18 15:00:43 -07:00
Costin Manolache
b0935343e8 waitWithTimeout() needs to check if the result is already available, like waitForActivity() does.
Change-Id: I410ab590d6669d5a657f473877a2bb3cae36d0d3
2011-07-17 14:35:29 -07:00
Dianne Hackborn
0e3328fbdd Rework and fix "adb shell dumpsys meminfo"
We now collect more detailed information splitting the maps into
additional useful categories.

Fixed some bugs in account, such as not correctly handling all of
the current dalvik allocations.

The activity manager now prints a final summary of all pss organized
by the apps and the categories.

Change-Id: Iafc5f27c998095812b1483c6803b8e0f0587aeae
2011-07-17 13:48:37 -07:00
Jeff Sharkey
6fa7e7e9bb Merge "Release strong Fragment references after exec." 2011-07-17 12:06:05 -07:00
Dianne Hackborn
cadaa3a983 Merge "Improve handling of low memory." 2011-07-14 10:48:01 -07:00
Adam Powell
c29f4e52c3 Nicer API for disabling/enabling the home/up button in action bars.
Have an explicit call for enabling the home/up button. Auto-enable it
if the app targets < ICS to preserve Honeycomb behavior. Auto-enable
it if the app shows home as up.

This prevents unwanted touch/focus feedback on the home button when
the app hasn't wired it up to do anything useful.

Change-Id: Icfe95ab5a11b3998bca08b0fbbfe1bf6c3c89b5d
2011-07-14 10:42:36 -07:00
Dianne Hackborn
ce86ba86df Improve handling of low memory.
Now classify background processes into a set of bins of how much
memory they should try to clear.  The last bin also involves
destroying all activities in that process.

Removed the old code for the simulator that is no longer needed
(yay).  The debugging features it had are now integrated into the
regular oom adj code.

Small fixes to load average service.

Change-Id: Ic8df401714b188c73b50dbc8f8e6345b58f1f3a0
2011-07-14 10:39:39 -07:00
Christopher Tate
7926a693c4 Compress the backup output stream
Zlib compression, with a full flush between each application's
data.  Encryption will be performed on the already-compressed data
once that's implemented.

On restore, the streamed data is similarly uncompressed on the fly.

Change-Id: I19b65c88e759a66527d10913d18fffa9df0bc011
2011-07-13 15:30:41 -07:00
Jeff Sharkey
0d32528be3 Release strong Fragment references after exec.
When finished with a Runnable transaction in execPendingActions(),
release the strong reference so that Fragment can be GC'ed.

Bug: 3117761
Change-Id: Ica2f50e363be1bd047bf0474b293efeb814b1264
2011-07-13 09:36:46 -07:00
Mark Brophy
622c03e6cf Merge "Expose app resume times to the ApplicationProvider." 2011-07-12 02:57:16 -07:00
Mark Brophy
9fc0330832 Expose app resume times to the ApplicationProvider.
Add ActivityManager.getAllPackageUsageStats which returns
the PkgUsageStats object for all packages.

In UsageStatsService, remember the last resume time of each component, and
add that info to PkgUsageStats instances.

ApplicationProvider will use getAllPackageUsageStats and the new field
in PkgUsageStats to set the new SearchManager column
SUGGEST_COLUMN_LAST_USAGE_HINT for requests with the GLOBAL_SEARCH
permission.

Change-Id: I80e9b127410ed0d528515d2256787f30a953e9b0
2011-07-10 21:19:23 +01:00
Jeff Brown
10e8971286 Eliminate single-process mode.
Bug: 5010576

Change-Id: Id450dc83efed4897d1e4ff451530fed14457aace
2011-07-08 19:54:07 -07:00