Commit Graph

447 Commits

Author SHA1 Message Date
Dianne Hackborn
eb034652c2 Implement all of the infrastructure for configuring wallpapers.
Actually being able to configure a wallpaper relies on additional
work in the launcher and wallpapers that will be in another change.
Also note that this breaks all existing wallpapers, since they now
need to include a meta-data item about themselves.  This also
will be fixed in another change.

Change-Id: I97d2c2bd07237abc32f92b9147c32530a2f73c71
2009-09-07 22:48:02 -07:00
Bob Lee
e540833fdf Integrated the profiler into the framework. We run it all the time if the persist.sampling_profiler
system property is set. Saves snapshots to the SD card.
2009-09-05 11:53:18 -07:00
Karl Rosaen
96836e1e8a Don't toggle between in app and global search on repeat key events.
Fixes http://b/issue?id=2019231.
2009-09-04 14:05:17 -07:00
Karl Rosaen
7bafed8623 Do a better job at finding the activity associated with a dialog when triggering search.
It first looks to see if there is an activity that is managing the dialog, and if not,
follows the context / contextwrapper chain to find an activity if possible.

Fixes http://b/issue?id=2064772.
2009-09-04 11:27:05 -07:00
Dianne Hackborn
dd9b82c283 Add better service reporting.
This will be used elsewhere.

Change-Id: Id561fa7fed5eb65446312cb697813483903d33a6
2009-09-03 14:11:02 -07:00
Dianne Hackborn
85644d7889 Really fix issue #:2097189 can't set custom wallpaper
Change-Id: Id0775b6c6716775c5da6f4fadf696571019279cc
2009-09-03 00:23:04 -07:00
Dianne Hackborn
5e802fbb89 Fix issue #2097189: can't set custom wallpaper
My deadlock fix was only half done.

Change-Id: If9f286030894a60cd71851fb784bb61045f08185
2009-09-02 21:53:30 -07:00
Dianne Hackborn
840c3a2b7e Fix deadlock in wallpaper.
Change-Id: I9ab5681ebf325a9e33ca4b59a8581e535e4dde54
2009-09-02 17:56:50 -07:00
Dianne Hackborn
a34f1ad7c3 Fiddle system boot ordering.
This makes the system a little more careful to not start third party
code until it is ready to.

Also fix a little bug in SyncManager that would cause it to crash
during boot if sync was in a failure state.

Change-Id: Ib2d287d8441d155d393fe740a5f98690895fd358
2009-09-02 17:39:54 -07:00
Christopher Tate
5e1ab335e6 Expand apps' control over the settings restore process
Applications can now specify two more aspects of the restore process:  whether
they need to run with their own custom Application subclass rather than being
launched in the usual restricted mode during restore, and whether it's okay for
the backup manager to kill the app process once restore has completed.  The new
manifest attributes for these are, respectively, android:restoreNeedsApplication
and android:killAfterRestore.

If unspecified in the manifest, restoreNeedsApplication is false, and
killAfterRestore is true.

In order to support kill-after-restore cleanly, this change also adds a new
system-process-only interface to the Activity Manager, which will schedule a
"commit suicide" event on the target app's main thread looper.

The framework backup agents have been given the appropriate new backup
attributes as well.
2009-09-01 20:59:36 -07:00
Dianne Hackborn
3025ef332c Various infrastructure to support a running services UI.
Some of this is temporary (in particular the two approaches for getting
process memory, one working but horrible, the other not working but
preferred) until I figure out the best way to do it.

Change-Id: I8c8f25062d481fcea22a47d459b083d2fd8a5040
2009-09-01 11:16:25 -07:00
Dianne Hackborn
284ac93aa3 More work on wallpapers: animations, lifecycle, scaling, etc.
Yet more work on improving the behavior of wallpapers.  This fixes a few
problems in their lifecycle (corresponding change in the picker also
required for this), makes their animations better for hardware that supports
alpha fades, adds animations for the wallpapers themselves, eliminates
fixed size wallpapers, and adjusts the API for retrieving a wallpaper
bitmap to take care of scaling the raw wallpaper image to match the current
desired width and height.

Change-Id: If1c0aaceba4ea4e175dcb7a8416ca7ddbb9bfa6f
2009-08-30 10:53:53 -07:00
Mike LeBeau
cc927375ce am af0b780a: Merge change 23198 into donut
Merge commit 'af0b780ac6305eb6b6795cb8139ae051e13dd7ff' into eclair

* commit 'af0b780ac6305eb6b6795cb8139ae051e13dd7ff':
  Update SearchManager documentation to reflect latest behavior.
2009-08-28 16:15:58 -07:00
Mike LeBeau
05b775e0b7 Update SearchManager documentation to reflect latest behavior. 2009-08-28 15:52:56 -07:00
Mike LeBeau
e9df3cf79c resolved conflicts for merge of 1e348378 to eclair 2009-08-27 23:54:12 -07:00
Dianne Hackborn
49237345d8 Add platform infrastructure for features.
This introduces a new mechanism to define features associated with
a platform, query the current device for the available features,
and enforce that apps requiring features that aren't available can't
be installed.

Also now allows uses-library to specify that a library is optional,
so the lack of such a library will not prevent the app from being
installed (but if it does exist it will be correctly linked into
the app).

Change-Id: I5b369b46cfa0b3d37c9e08fd14ef1098a978e67b
2009-08-27 21:51:00 -07:00
Android (Google) Code Review
1e3483780c Merge change 23043 into donut
* changes:
  Revert "Remove third party support for Quick Search Box (aka global search)."
2009-08-27 18:32:27 -07:00
Karl Rosaen
590f63433c Revert "Remove third party support for Quick Search Box (aka global search)."
This reverts commit a647b7f29d65a7792cede74284e714b591337992.
2009-08-27 17:42:48 -07:00
Bjorn Bringert
98d8858890 am ba223760: Close suggestion cursors that arrive after adapter is closed
Merge commit 'ba223760895e62ad2fcb85476984cb29018860c9' into eclair

* commit 'ba223760895e62ad2fcb85476984cb29018860c9':
  Close suggestion cursors that arrive after adapter is closed
2009-08-26 11:41:40 -07:00
Bjorn Bringert
ba22376089 Close suggestion cursors that arrive after adapter is closed
Before, after using the Browser, memory-hungry apps could
become very sluggish. This was because the search dialog in the
system process had the BrowserProvider open, which in turn had
EnhancedGoogleSearch open. Since EhancedGoogleSearch runs in acore,
the system would keep both the Browser process and acore to stay
around forever.

The cause (or at least one common cause) for this was that
if the user types quickly, and clicks on a suggestion before
the displayed suggestions have caught up, some suggestion cursors
are not be closed.

This change solves this problem by adding a close() method to
SuggestionsAdapter. SuggestionsAdapter now closes any cursors
that are passed to it after close() is called.

Fixes http://b/issue?id=2078226
"global search holding reference to browser: system -> browser -> acore = :("
2009-08-26 13:18:40 +01:00
Dianne Hackborn
4a51c20ce6 I am getting tired of the java doc warnings, so fix them.
Change-Id: I2205eebae419eaf4a0992c9f5b7cd807eb843fe1
2009-08-24 17:37:32 -07:00
Dianne Hackborn
f6f9f2d025 Add more control over a service's start state.
One of the problems I have been noticing is background services
sitting around running and using resources.  Some times this is
due to the app developer doing this when they shouldn't, but there
are also a number of issues with the current Service interaction
model that make it very difficult (or impossible) to avoid
getting services stuck in the started state.  This is a
change/enhancement to the Service API to try to address this.

The main change is that Service.onStart() has been deprecated,
replaced with a new Service.onStartCommand() that allows the
service to better control how the system should manage it.  The
key part here is a new result code returned by the function, telling
the system what it should do with the service afterwards:

- START_STICKY is basically the same as the previous behavior,
  where we usually leave the service running.  The only difference
  is that it if it gets restarted because its process is killed,
  onStartCommand() will be called on the new service with a null
  Intent instead of not being called at all.

- START_NOT_STICKY says that, upon returning to the system, if
  its process is killed with no remaining start commands to
  deliver, then the service will be stopped instead of restarted.
  This makes a lot more sense for services that are intended to
  only run while executing commands sent to them.

- START_REDELIVER_INTENT is like START_NOT_STICKY, except if
  the service's process is killed before it calls stopSelf()
  for a given intent, that intent will be re-delivered to it
  until it completes (unless after 4 or more tries it still
  can't complete, at which point we give up).

Change-Id: I978f5ca420d70023d1b5e7f97de639d09381f8ad
2009-08-24 17:00:54 -07:00
Jean-Baptiste Queru
dd03c6135f resolved conflicts for merge of 081a136d to eclair 2009-08-21 12:59:04 -07:00
Anonymous Coward
081a136d25 Remove third party support for Quick Search Box (aka global search).
- @hides relevant APIs
- removes relevant javadoc
- enforces that only system apps can participate

note: general support is still there, will be easy to reenable when we are ready.
2009-08-21 12:47:14 -07:00
Dianne Hackborn
3be63c0930 Infrastructure for supporting wallpaper previews.
Various things that will allow us to show previews of wallpapers.
Also some fixes to animations across wallpapers.
2009-08-20 20:34:42 -07:00
Dianne Hackborn
1066cbcac0 Fix build. 2009-08-18 15:09:23 -07:00
Dianne Hackborn
d8a43f6168 Fix issue #2047139: Remove Service.setForeground()
This API is becoming seriously abused, so now it is deprecated and has
become a no-op.

As an alternative, there is now a new API that allows you to make a service
be in the foreground but requires providing a persistent notification to
go along with this state, allowing the user to know about and control it.
2009-08-18 13:59:27 -07:00
Mike LeBeau
93df578638 am cfa419b7: Correct comments for startSearch in Activity and SearchManager to explain Donut behavior correctly.
Merge commit 'cfa419b754332e12f8cd45244c2f3bee9d6a74bb' into eclair

* commit 'cfa419b754332e12f8cd45244c2f3bee9d6a74bb':
  Correct comments for startSearch in Activity and SearchManager to explain
2009-08-18 10:59:53 -07:00
krosaen
d2d6014f71 NEW API for SearchManager and Activity to 'triggerSearch'.
This is pretty much the same thing as startSearch, except it also launches the
query.  We enforce that this can only be done for the package of the app that is
associated with the search mananger (e.g you can't trigger a contacts search
from anywhere).
2009-08-18 08:56:03 -07:00
Nick Pelly
bd022f423a Bluetooth: API change.
Split BluetoothDevice into BluetoothDevice and BluetoothAdapter.

BluetoothAdapter: Represents the local BT adapter. Operations on the local
                  adapter (start a scan, etc).
BluetoothDevice: Represents a remote BT device. Operations on remote devices
                 (pair, connect, etc).

IBluetoothDevice.aidl -> Bluetooth.aidl
BluetoothDeviceService.java -> BluetoothDeviceService.java

TODO:
Javadoc
2009-08-18 08:24:22 -07:00
Mike LeBeau
cfa419b754 Correct comments for startSearch in Activity and SearchManager to explain
Donut behavior correctly.
2009-08-17 11:10:32 -07:00
Dianne Hackborn
7341d7a104 More work on wallpapers.
- Do better about figuring out when to stop them and other related window
  management.
- Fix problem where we were not redrawing the surface when the orientation
  changed.  This was the cause of the device hang.
2009-08-17 10:42:59 -07:00
Dianne Hackborn
766cbfe44b Add new API to compare certs of two UIDs. 2009-08-12 21:40:05 -07:00
Dianne Hackborn
72c82ab992 Report wallpaper offset to the wallpaper, use this in the image wallpaper.
Wallpapers can now be just the size of the screen, and get told when their
scroll position should change to do the updating on their own.
2009-08-12 14:41:29 -07:00
Dianne Hackborn
90f77218a2 am b8546001: Merge change 20878 into donut
Merge commit 'b8546001701405a76dad7e6235046e592296fac2'

* commit 'b8546001701405a76dad7e6235046e592296fac2':
  Fix issue #2048263: More debugging information
2009-08-12 12:36:12 -07:00
Karl Rosaen
f57a1a5117 am b3fa1084: Merge change 20768 into donut
Merge commit 'b3fa1084ba31698fa5c58150a713d7abbadb1cd2'

* commit 'b3fa1084ba31698fa5c58150a713d7abbadb1cd2':
  Docs only change: finish documentation of Android Quick Search Box related information in SearchManager.
2009-08-12 12:04:22 -07:00
Dianne Hackborn
82e1ee93ee Fix issue #2048263: More debugging information
We now hopefully do better about generating the anr reports, and include
information about the malloc loaded assets in meminfo.
2009-08-11 18:56:41 -07:00
Karl Rosaen
d47fddc5d7 am abf44279: Fix NPE in SearchDialog (and thereby fix bug 2045398).
Merge commit 'abf44279add64c6f22a40592895225779b8481ea'

* commit 'abf44279add64c6f22a40592895225779b8481ea':
  Fix NPE in SearchDialog (and thereby fix bug 2045398).
2009-08-11 18:11:40 -07:00
Mike LeBeau
6f82aa3f4d am 021fa3fa: Merge change 20665 into donut
Merge commit '021fa3fa6fe88c33ad11a3139ebcd3a5be8eb953'

* commit '021fa3fa6fe88c33ad11a3139ebcd3a5be8eb953':
  First update of SearchManager docs to reflect the new Donut Quick Search Box feature.
2009-08-11 18:11:28 -07:00
Karl Rosaen
b504136852 Docs only change: finish documentation of Android Quick Search Box related information in SearchManager.
Includes:
- an overview section on including search suggestions in quick search box
- additional table of searchable metadata attributes related to quick search box
- additional column descriptions that we've added for quick search box.
- description of how to expose your content provider's search suggestions to
the search infrastructure if you have permissions guarding your content provider.
2009-08-11 13:43:14 -07:00
Dianne Hackborn
c8a0a75e1c Implement support for scrolling a wallpaper.
This currently only works for a wallpaper that is larger than the
screen.  Set the scroll position with the new wallpaper API.  Right
now only does jump scrolls.
2009-08-11 10:03:16 -04:00
Karl Rosaen
abf44279ad Fix NPE in SearchDialog (and thereby fix bug 2045398). 2009-08-10 17:09:24 -07:00
Mike LeBeau
8c91dd7ec8 First update of SearchManager docs to reflect the new Donut Quick Search Box feature.
This simply cleans up any inconsistencies or weirdnesses, we still need to add the new
info for QSB.
2009-08-10 16:32:29 -07:00
Dianne Hackborn
4c62fc0e1e Very primitive wallpapers in a surface.
This is all of the basic pieces:

- The WallpaperService now creates a surface with the window manager for its
  contents.
- There is a simple service that displays a bitmap.
- The wallpaper manager takes care of starting and stopping the service.
- The window manager knows about wallpaper windows and how to layer them with
  the windows that want to be shown on top of wallpaper.

Lots and lots of issues remain, but at this point you can actually write a
wallpaper service, select it in the UI, and see it behind an activity.
2009-08-08 22:13:46 -07:00
Karl Rosaen
332aaaf92f am a7a3b6ef: Dismiss both the soft keyboard and the search dialog on back if there is no text entered and no shortcuts are being obscured by the soft keyboard.
Merge commit 'a7a3b6ef0fdaf6b17993642b76baf90a03ae0077'

* commit 'a7a3b6ef0fdaf6b17993642b76baf90a03ae0077':
  Dismiss both the soft keyboard and the search dialog on back if there is no text entered and no shortcuts are being obscured by the soft keyboard.
2009-08-06 16:40:13 -07:00
Karl Rosaen
a7a3b6ef0f Dismiss both the soft keyboard and the search dialog on back if there is no text entered and no shortcuts are being obscured by the soft keyboard.
Fixes bug 2039508.  This makes backing out of the search dialog easier when dismissing the soft keyboard doesn't really
add any value.
2009-08-06 16:23:19 -07:00
Mike LeBeau
597543c5e7 am e303d2cf: Send a special respond to the cursor in SuggestionsAdapter to tell it to close itself directly because it may not happen correctly for some cursors currently. This fixes http://b/2036290, which is being caused by http://b/2015069 which we are not fixing f
Merge commit 'e303d2cf94da6bb7f0569fbddd6dfd5b85ed8295'

* commit 'e303d2cf94da6bb7f0569fbddd6dfd5b85ed8295':
  Send a special respond to the cursor in SuggestionsAdapter to tell it to
2009-08-06 14:55:29 -07:00
Mike LeBeau
e303d2cf94 Send a special respond to the cursor in SuggestionsAdapter to tell it to
close itself directly because it may not happen correctly for some cursors
currently. This fixes http://b/2036290, which is being caused by
http://b/2015069 which we are not fixing for Donut, so this is a hack around
that for the time being.
2009-08-06 14:52:15 -07:00
Dianne Hackborn
73cf55d963 Fix build. 2009-08-06 14:07:39 -07:00
Dianne Hackborn
8cc6a5026a First bit of wallpaper work.
This is mostly refactoring, adding a new WallpaperManager class that takes care
of the old wallpaper APIs on Context, so we don't need to pollute Context with
various new wallpaper APIs as they are needed.  Also adds the first little
definition of a wallpaper service, which is not yet used or useful.
2009-08-05 21:29:42 -07:00