The widget shows the icon for a search source, and when clicked
fires an intent that shows a search source selection activity.
That intent is handled by the QuickSearchBox app.
This change also adds the source selector to the in-app
search dialog.
An upcoming change to QuickSearchBox will add the search source
selector to the home screen search widget and to the Quick Search Box
activity.
TODO: Add assets for selected and pressed states to the search selector.
TODO: The SearchDialog hides when the soruce selection activity
appears. This will be fixed when SearchDialog is changed from a
system window to a normal app window.
Change-Id: I91eadd60682577614e274ecf5b995b927c70a48a
The ActivityManager.restartPackage() API is now deprecated, and no longer
allows applications to mess up the state of other applications. This was
being abused by task killers, causing users to think their other applications
had bugs.
A new API is introduced for task killers,
ActivityManager.killBackgroundProcesses(), which allows these applications
to kill processes but only the same amount that the out of memory
killer does, thus causing no permanent damage. The old restartPackage()
API is now a wrapper for calling this new API.
There is also a new private forceStopPackage() API that is used for the
system's force stop UI which does what the old restartPackage() API did.
The crashes are also reported to the event log (and of course the
main logcat, like they always have been). Ordinary Log.e(t,m,e) isn't dropboxed
but there's a new Log.wtf() which always is. (Still @pending in this change.)
Add a hook to IPowerManager to crash the system server on demand
(only for apps with REBOOT permission, since it's basically a restart).
This is not exposed in PowerManager, must be invoked directly -- mostly
this is there so "Bad Behavior" in dev tools can do it.
Make sure the application is always given the most recent configuration
when launcher. Use the current configuration, instead of whatever happens
to be set by the app, for reporting what it was launched with.
Change-Id: I2ffe306f56cc9092b640546dd0a28d2c29b9c0b3
(CrashData was a custom-marshalled crash-info class used for a server crash
reporting system I am deprecating). Use ApplicationErrorReport.CrashInfo
instead to report crash details (mostly the stack trace) from RuntimeInfo to
ActivityManagerService, since we're likely to need the crash information in
that form anyway.
Remove the (long-disabled) flags and support for the "Debug" button
in the crash dialog.
Further gut the ICheckinService interface by removing the crash-reporting
APIs (and everything that calls them), plus the synchronous checkin()
method (which has been stubbed out for a while now).
A new dropbox-based crash reporting system is in the works, but not part
of this change.
Merge commit '45e77ce36ae1d26bcf35afb1f7662d7b6fb08212' into eclair-mr2-plus-aosp
* commit '45e77ce36ae1d26bcf35afb1f7662d7b6fb08212':
Use unbundled QSB for global search
Merge commit 'a5ba0a78811fcd5d3470bfa09df3e0106b77567e' into eclair-mr2-plus-aosp
* commit 'a5ba0a78811fcd5d3470bfa09df3e0106b77567e':
Make sure to acknowledge stale broadcasts
Merge commit '0766b2d0f398dcad10e332b695bbc0cbe5011882' into eclair-mr2-plus-aosp
* commit '0766b2d0f398dcad10e332b695bbc0cbe5011882':
Update service example code.
This obsoletes the following:
- The need to run SearchDialog in the system process.
- The global search mode code in SearchDialog.
- The GlobalSearch package.
- The search widget built into Launcher.
I will remove these in future changes.
Change-Id: I154386b1d6be73cfeab8376b6959a1dc5483e5f0
Merge commit '767eb427fa8eca6c842c629cd4bfbf3551692148' into eclair-mr2
* commit '767eb427fa8eca6c842c629cd4bfbf3551692148':
Make sure to acknowledge stale broadcasts
If a broadcast arrives at a process but the receiver has been unregistered in
the interval between dispatch and its arrival on the receiving process's side,
we were simply dropping the broadcast entirely, leading to spurious ANRs and
potentially issues involving future broadcasts being timed out incorrectly. Fix
this by making sure to correctly 'finish' a broadcast even when the recipient
app no longer has any receiver that matches the broadcast's profile.
Change-Id: If990cab021a26668052cb536753f6c308d80a5b4
We need to expose SearchableInfo in the SDK in order to unbundle
Quick Search Box. Since the android.server.search package is
hidden, I'm moving SearchableInfo to android.app, where
SearchManager lives.
This change doesn't actually expose SearchableInfo. I'll do
that in a separate change to keep the change that
api-council needs to review small.
This is part of the fix for: http://b/issue?id=2270838
Change-Id: I9589f9c2c11d36c958beedff8245fe0c3319c6ba
Merge commit '8c7d9eab8aa297f5ee3a171c6fa63fcf94e2b330' into eclair-mr2-plus-aosp
* commit '8c7d9eab8aa297f5ee3a171c6fa63fcf94e2b330':
Create android-common static library which gets included in frameworks.jar,
but can also be used by unbundled apps. Move android.text.util.Regex there as
a starting example, renamed to a more sensible (?) com.android.common.Patterns.
Set up a corresponding test package, and move RegexTest (to PatternsTest).
Update clients.
Don't hold the global package log while instantiated an AssetManager+Resources, since
this is a fairly heavy-weight operation, and if done in the background can starve the
foreground.
Change-Id: I5ad37324fb7c27ffdbf28e1498ca0ad667479580
Merge commit 'b0d2313ea49194b8ab6caa987aaa680a45dd38b2' into eclair-mr2-plus-aosp
* commit 'b0d2313ea49194b8ab6caa987aaa680a45dd38b2':
docs: document the 'showSearchIconAsBadge" flag and
Merge commit 'd05fd6c33518e60664ffdf1bb6cb425f36c2b82f' into eclair-mr2
* commit 'd05fd6c33518e60664ffdf1bb6cb425f36c2b82f':
docs: document the 'showSearchIconAsBadge" flag and
Merge commit 'dbc7e27ef10349f11ac940d59ff4f812319fce51' into eclair
* commit 'dbc7e27ef10349f11ac940d59ff4f812319fce51':
docs: document the 'showSearchIconAsBadge" flag and