470 Commits

Author SHA1 Message Date
Chih-Chung Chang
46ad796186 Unhide cancelAutoFocus API in Camera.
Change-Id: I29450867edf9c68ac06e6d76fae0ad93ea89b632
2009-09-16 22:43:46 +08:00
Dianne Hackborn
93e462b79d Implement issue #1780928: Need support hiding nav keys.
This implements support for devices whose hardware can hide
their navigation keys.  It works much like the existing keyboardHidden
configuration, and for compatibility uses the same configuration
change bit.

Also add FLAG_TURN_ON_SCREEN for windows, which has the system
cause the screen to be turned on when the window is displayed.
Great fun when used with FLAG_SHOW_WHEN_LOCKED!

Change-Id: I0b867f19af85cfd8786a14cea194b34f7bdd9b7a
2009-09-15 22:50:40 -07:00
Dianne Hackborn
9767e41d92 Some improvements for wallpaper configuration.
This introduces a new activity that you can derive from to implement
a wall paper configuration activity.  This is supposed to select
a theme based on whether it is being run to configure a real wallpaper
or a preview, but this is going to be more difficult to do than I
thought. :(

Also fix a problem in the white theme where the list view's background
was being set to white, so it wouldn't work on a transparent bg.

Change-Id: I26d5a8695a3c878a1664eb09900eded57eaff990
2009-09-15 18:59:31 -07:00
Mike Reed
4e54f3309e update for new plugin api 2009-09-15 20:26:19 -04:00
Derek Sollenberger
0b3a5d6524 First pass at replacing native plugin views with java.
Change-Id: I6d1f45f31210c2353fa348cc37be8d91bcd5e887
2009-09-15 19:33:54 -04:00
Bjorn Bringert
ed2c13a9d2 Revert "Deprecate showSearchIconAsBadge and icon search attrs"
I tried to revert a flag, but that doesn't actually work
and ended up deprecating the entire attribute.

This reverts commit ab50b86b79936623b5e326f2ed84b3c947c8ec93.
2009-09-15 19:49:10 +01:00
Dianne Hackborn
1cd403eaac Add SurfaceView API to put surface on top of window.
Change-Id: I9db84ee63a362e54ebc2f5b24a20ae5bdc3588bf
2009-09-15 11:29:00 -07:00
Dianne Hackborn
83fe3f5592 Last big work on #1991910: Make swipes work with capacitive keys
This takes care of allowing us to cancel the back button.  The
back button is a bear because it is strewn all over the place --
everywhere you can close something, there is some code looking
for the back button that now needs to deal with being canceled.

The main things changed are activity (of course), dialog,
input method, search dialog.  There are some other misc places
in the framework (and some I missed here that I will get in a
second pass).

To facility all of this, the key dispatching APIs now provide
a lot more support for dealing with looking for cancelled keys,
and incidentally also provide an actual API for catching long
key presses.  This also helped clean up the code in PhoneWindow
where it deals with all of the combinations of key pressed and
releases.  (And also allows people to override
Activity.onKeyLongPress() to provide a different long press
action for a standard key like search.)

And while I was doing this, I reworked how we detect long
presses by having this be part of the key event delivered by
the window manager.  This should greatly reduce (hopefully
outright eliminate) the problems with long presses being
mis-detected when an application is being slow.

Change-Id: Ia19066b8d588d573df3eee6d96e1c90fdc19f57d
2009-09-14 17:53:52 -07:00
Dianne Hackborn
c297480937 Fix issue #2116977: buttons are huge and bent
Now that we are using preloaded drawables in compatibilty mode, when
constructing them from their constant state we need to set the new
drawable's target density appropriately.

Change-Id: I3665cbea09d38b9ac5f45f8c380dc8641f86b266
2009-09-14 16:32:56 -07:00
Dianne Hackborn
19382ac1a4 Some optizations to wallpaper drawing/scrolling.
First, fix some issues with the final wallpaper bitmap
we use: ensure it is always 16bpp, and make sure dithering
of its bitmap is turned off.   We take of dithering
when loading, to make sure we don't use it when drawing.

Also add new APIs to return the wallpaper with the equivalent
of Launcher's old FastBitmapDrawable.  As doing this, also load
the default wallpaper the same way as custom ones, taking care to
resize it as needed at load time.

Finally implement a mechanism for the window manager to wait
for the wallpaper to redraw at its new position before returning
from the application's call to change the offset.  This ensures
that the wallpaper better tracks the application.  Note that there
is a timeout in this wait that is relatively short, and if it
expires we will run for a while without waiting.

Change-Id: Ife449437746da85958bd447e0a6cf3d2223b398c
2009-09-14 15:29:44 -07:00
Bjorn Bringert
ab50b86b79 Deprecate showSearchIconAsBadge and icon search attrs
mlebeau says:
"Basically, because we now show the app icon for in-app
search, showSearchIconAsBadge is a bit unnecessary, but it does in
fact still work. Basically if either showSearchIconAsBadge or
showSearchLabelAsBadge are specified, we grow the height of the search
bar and place the provided icon or the provided label, respectively,
above the text field and app icon. But we do not remove the app icon
if the developer specifies showSearchIconAsBadge - it's still just the
'badge area' above the icon."

Fixes:
http://b/issue?id=2105329
"Deprecate searchable attributes 'showSearchIconAsBadge' and 'icon'"

Change-Id: Ie2976aafe42b4ab870be9e64b34eb0ed441ebbb0
2009-09-14 06:59:50 +01:00
Nick Pelly
005b228cdf API_CHANGE: Cleanup, javadoc and unhide more Bluetooth API.
This is a large batch, and covers:

-- Bluetooth Device Discovery --
BluetoothAdapter.ACTION_DISCOVERY_STARTED
BluetoothAdapter.ACTION_DISCOVERY_FINISHED
BluetoothAdapter.startDiscovery()
BluetoothAdapter.cancelDiscovery()
BluetoothAdapter.isDiscovering()

-- Bluetooth bonding (pairing) --
BluetoothAdapter.getBondedDevices()
BluetoothDevice.ACTION_BOND_STATE_CHANGED
BluetoothDevice.EXTRA_BOND_STATE
BluetoothDevice.EXTRA_PREVIOUS_BOND_STATE
BluetoothDevice.BOND_NONE
BluetoothDevice.BOND_BONDING
BluetoothDevice.BOND_BONDED
BluetoothDevice.getBondState()
BluetoothDevice.createBond()
BluetoothDevice.cancelBondProcess()
BluetoothDevice.removeBond()

-- BluetoothClass --
BluetoothDevice.ACTION_CLASS_CHANGED
BluetoothDevice.EXTRA_CLASS
BluetoothDevice.getBluetoothClass()
BluetoothClass.Service.*
BluetoothClass.Device.Major.*
BluetoothClass.Device.*
BluetoothClass.getDeviceClass()
BluetoothClass.getMajorDeviceClass()
BluetoothClass.hasService()

-- Misc BluetoothDevice --
BluetoothDevice.ACTION_ACL_CONNECTED
BluetoothDevice.ACTION_ACL_DISCONNECTED_REQUESTED
BluetoothDevice.ACTION_ACL_DISCONNECTED
BluetoothDevice.ACTION_DISCOVERED
BluetoothDevice.ACTION_NAME_CHANGED
BluetoothDevice.EXTRA_DEVICE
BluetoothDevice.EXTRA_NAME
BluetoothDevice.EXTRA_RSSI

-- Misc BluetoothAdapter --
BluetoothAdapter.ACTION_LOCAL_NAME_CHANGED
BluetoothAdapter.EXTRA_LOCAL_NAME
BluetoothAdapter.checkBluetoothAddress()

I deprecated BluetoothIntent and moved each intent into the class it relates
to.

Change-Id: I877b1280428ab46278b2bc25668bb44cda22dc36
2009-09-10 18:52:21 -07:00
Jim Miller
70e1ad7d99 Add smallIcon and accountPreferences references to AuthenticatorDescription. Update after path conflict.
Update API for new AuthenticatorDescription preferences.xml
2009-09-10 18:10:53 -07:00
Dianne Hackborn
bcbcaa7edd Wallpapers, animations, pending intent.
Some more tweaks and fixes to wallpapers.  Make sure wallpapers are
told they are not visible when the screen is off.  Add some new animations
for transitions across tasks, and fiddle with many of the existing
animations.  Clean up the relationship between translucent activities
and animations.  Add new API to start a PendingIntent from an
activity.

Change-Id: Ie0bf45fe44081bb6982c75361257a55d9cd9d863
2009-09-10 12:08:50 -07:00
Nick Pelly
b24e11baac API_CHANGE
Deprecate BluetoothError.java.

I spent a lot of time experimenting with a class BluetoothError to enumerate
the many error codes returned by the Bluetooth API. But at the end of the day
they were never used. The vast majority of method calls only really need a
true/false error value, and often not even that.

Methods which do need more detailed error enumeration (for example, bonding
failures) can have there own enumerated error codes. But there is no need
for a common set of error codes.

Also change the IPC failed warnings in BluetoothA2dp to Log.e. These indicate
a very serious error.

Introduce BluetoothAdapter.ERROR and BluetoothDevice.ERROR as helper sentinel
values.
2009-09-09 10:52:18 -07:00
Nick Pelly
de893f5503 API_CHANGE
Another round of Bluetooth API clean up, javadoc'ing and unhide'ing.

-- Symbols for getting/setting bluetooth state --
BluetoothAdapter.ACTION_STATE_CHANGED
BluetoothAdapter.EXTRA_STATE
BluetoothAdapter.EXTRA_PREVIOUS_STATE
BluetoothAdapter.STATE_OFF
BluetoothAdapter.STATE_TURNING_ON
BluetoothAdapter.STATE_ON
BluetoothAdapter.STATE_TURNING_OFF
BluetoothAdapter.isEnabled()
BluetoothAdapter.getState()
BluetoothAdapter.enable()
BluetoothAdapter.disable()

-- Symbols for getting/setting scan mode --
BluetoothAdapter.ACTION_SCAN_MODE_CHANGED
BluetoothAdapter.EXTRA_SCAN_MODE
BluetoothAdapter.EXTRA_PREVIOUS_SCAN_MODE
BluetoothAdapter.SCAN_MODE_NONE
BluetoothAdapter.SCAN_MODE_CONNECTABLE
BluetoothAdapter.SCAN_MODE_DISCOVERABLE
BluetoothAdapter.getScanMode()
BluetoothAdapter.setScanMode()

-- Symbols for getting address/names --
BluetoothAdapter.getAddress()
BluetoothAdapter.getName()
BluetoothAdapter.setName()
2009-09-09 10:52:02 -07:00
Eric Laurent
96c08a69ea Fix issue 1992233: DTMF tones on Sholes is really long.
Add a parameter to ToneGenerator.startTone() allowing the caller to specify the tone duration. This is used by the phone application to have a precise control on the DTMF tone duration which was not possible with the use of delayed messaged.
Also modified AudioFlinger output threads so that 0s are written to the audio output stream when no more tracks are ready to mix instead of just sleeping. This avoids an issue where the end of a previous DTMF tone could stay in audio hardware buffers and be played just before the beginning of the next DTMF tone.
2009-09-08 22:56:07 -07:00
Fred Quintana
c4516a7b62 add a transaction monitor 2009-09-08 17:25:09 -07:00
Derek Sollenberger
2c3eb14d43 adding support for webkit plugins to use the java view system
Change-Id: I4fb328e5f30476fe4aa70565bacb969dc97b495d
2009-09-08 15:42:23 -04:00
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
Dianne Hackborn
25994b4306 Wallpapers: new transitions, hiding when not visible, other cleanup.
This is work on the transitions with wallpapers.  There are now new
animations specifically for leaving the wallpaper and returning to
it, which allow us to have a consistent animation when entering home
and returning to it.  I also renamed the existing animations across
wallpapers, and cleaned up some junk in the various interpolators.

This also now hides the wallpaper surface when it is not visible,
to get rid of the wallpaper flickers people complained about albeit
in a somewhat brutal way. :)  (Though really returning us to the
previous behavior with the same previous bugs and name back to them
not being very visible, yay!)  There is are also some bug fixes
here and there about managing the wallpaper visibility that this
change revealed.

Change-Id: I913990a9a81651728122ed2e1101b75ed2c36fcb
2009-09-04 14:28:42 -07:00
Jesse Wilson
f163f7f0f2 do not merge: fix API current.xml for Hashtable. 2009-09-03 18:20:50 -07:00
Jesse Wilson
6de753bffe do not merge: update API for Josh's optimizations for Eclair 2009-09-03 17:48:11 -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
Suchi Amalapurapu
32f589046b Make new attribute EXTRA_CHANGED_COMPONENT_NAME in
broadcast intent ACTION_PACKAGE_CHANGED public so that
apps like launcher can find out the changed component name
when loading changes made in components.
2009-09-02 16:11:14 -07:00
Wu-cheng Li
9b6a8ab822 Add camera parameters constants and methods. 2009-09-02 12:45:23 +08: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
2d2d5c4372 am c804efe2: Merge change 23569 into donut
Merge commit 'c804efe278fa33555e6e836504a467cb14505eb3' into eclair

* commit 'c804efe278fa33555e6e836504a467cb14505eb3':
  Update 4.xml to the most recent APIs.
2009-09-01 19:18:18 -07:00
Dianne Hackborn
2c8859aeda Update 4.xml to the most recent APIs. 2009-09-01 19:14:55 -07:00
Wink Saville
65d62c774e Add hasIccCard to IccCard and TelephonyManager.
Expose the presence/absence of IccCards in the system.
This is needed to fix bug 2033811 which needs to show
some SIM menus in the Mms app and Contact apps only if
there is a SIM and on CDMA there is no sims yet.

The current implementation assumes CDMA never has an
IccCard this is true at the moment but needs to change.

Change-Id: I4167368e364623ea68e9b2778556e6d730b1e715
2009-09-01 15:52:42 -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
Patrick Scott
05c9ed9ce1 Fix the documentation for onReceivedError.
This change adds the EventHandler error codes to WebViewClient for the public
api. Previously, the api was ambiguous about the value of the errorCode
parameter and falsely documented that the values are HTTP status codes.
2009-09-01 08:37:22 -04:00
Fred Quintana
56f67d2145 add the ability to specify yieldpoints in a ContentProviderOperation 2009-08-28 17:01:16 -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
Fred Quintana
5c7aede8d6 allow delaying after yielding 2009-08-27 21:43:35 -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
Dianne Hackborn
e5276a7474 Fix issue #2084148: Define the format for the auto focus preview for barcode scanning
Add new manifest/aapt support for specifying device features an application
requires.  The aapt badging now returns these (as well as uses-permission since
I need to look for those anyway); if an app doesn't explicitly request the
camera feature but does request the permission, then aapt will say that it has
requested both the basic camera feature as well as the autofocus feature.

Here's what you put in your manifest to say you need a camera but don't need
autofocus:

    <uses-permission android:name="android.permission.CAMERA" />
    <uses-feature android:name="android.hardware.camera" />
    <uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />

Here's what will be seen from aapt:

uses-permission:'android.permission.CAMERA'
uses-feature:'android.hardware.camera'
uses-feature-not-required:'android.hardware.camera.autofocus'

Change-Id: I4dd19cee0486cc54771f5bf14fc9db0e892115d5
2009-08-27 16:28:44 -07:00
Dianne Hackborn
fa5260290f am f734e027: Merge change 22939 into donut
Merge commit 'f734e027bfed6c884e5f060c3291d3aeb5706dc8' into eclair

* commit 'f734e027bfed6c884e5f060c3291d3aeb5706dc8':
  Final Donut API list.
2009-08-27 14:40:51 -07:00
Jesse Wilson
0409cde360 Updating synchronized to match x-net changes 2009-08-27 13:31:04 -07:00
Dianne Hackborn
fe240ecf85 Change these string constants back to match donut.
Unfortunately we are stuck with the donut ones, can't change these in Eclair
to be the more correct names.

Change-Id: Id8aaa2e90cd21631b18a36bea3755a63d0e6d577
2009-08-27 12:51:11 -07:00
Dianne Hackborn
6eccc39073 Final Donut API list. 2009-08-27 12:11:10 -07:00
Ben Murdoch
d497d87650 Pass the estimated size of new HTML 5 databases to the ChromeClient so it can use that amount to figure an initial default quota.
Change-Id:Ic9372b0c86472b42ba5d0b964aaff1e2bbfe3efa
2009-08-26 12:39:55 +01:00
Jeff Sharkey
534aa012b5 Mark all legacy contacts APIs as deprecated.
Now that we've merged ContactsContract and are relying on
compatibility mode, we're marking the previous public
contacts API as deprecated.

Fixes http://b/2076016
2009-08-25 17:27:15 -07:00
Jack Wang
fa5382208b Fix build break
- Introduced in 22109
2009-08-25 14:47:44 -07:00
Jack Wang
7aba54b2ed Fix bug 1546445: Correct spelling errors in API
- InstrumentationTestCase.injectInsrumentation
- AndroidTestRunner.setInstrumentaiton
2009-08-25 12:44:56 -07:00
Mike Reed
dbade9d6a0 expose runtime changes to gamma 2009-08-25 13:47:47 -04: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