merge in klp-release history after reset to klp-dev
diff --git a/apps/SettingInjectorSample/src/com/example/android/injector/DisabledInjectorService.java b/apps/SettingInjectorSample/src/com/example/android/injector/DisabledInjectorService.java
index 70e3615..c122639 100644
--- a/apps/SettingInjectorSample/src/com/example/android/injector/DisabledInjectorService.java
+++ b/apps/SettingInjectorSample/src/com/example/android/injector/DisabledInjectorService.java
@@ -31,14 +31,18 @@
}
@Override
- protected Status getStatus() {
+ protected String onGetSummary() {
try {
// Simulate a delay while reading the setting from disk
Thread.sleep(500);
} catch (InterruptedException e) {
Log.e(TAG, "", e);
}
+ return null;
+ }
- return new Status(null, false);
+ @Override
+ protected boolean onGetEnabled() {
+ return false;
}
}
diff --git a/apps/SettingInjectorSample/src/com/example/android/injector/FailingInjectorService.java b/apps/SettingInjectorSample/src/com/example/android/injector/FailingInjectorService.java
index f13d7e0..bdd15eb 100644
--- a/apps/SettingInjectorSample/src/com/example/android/injector/FailingInjectorService.java
+++ b/apps/SettingInjectorSample/src/com/example/android/injector/FailingInjectorService.java
@@ -26,12 +26,20 @@
private static final String TAG = "FailingInjectorService";
+ /**
+ * Whether to actually throw an exception here. Pretty disruptive when true, because it causes
+ * a "Unfortunately, My Setting Activity! has stopped" dialog to appear and also blocks the
+ * update of other settings from this app. So only set true when need to test the handling
+ * of the exception.
+ */
+ private static final boolean ACTUALLY_THROW = false;
+
public FailingInjectorService() {
super(TAG);
}
@Override
- protected Status getStatus() {
+ protected String onGetSummary() {
try {
// Simulate a delay while reading the setting from disk
Thread.sleep(100);
@@ -39,6 +47,14 @@
Log.e(TAG, "", e);
}
- throw new RuntimeException("Simulated failure reading setting");
+ if (ACTUALLY_THROW) {
+ throw new RuntimeException("Simulated failure reading setting");
+ }
+ return "Decided not to throw exception after all";
+ }
+
+ @Override
+ protected boolean onGetEnabled() {
+ return false;
}
}
diff --git a/apps/SettingInjectorSample/src/com/example/android/injector/MyInjectorService.java b/apps/SettingInjectorSample/src/com/example/android/injector/MyInjectorService.java
index 3318bc2..8797d69 100644
--- a/apps/SettingInjectorSample/src/com/example/android/injector/MyInjectorService.java
+++ b/apps/SettingInjectorSample/src/com/example/android/injector/MyInjectorService.java
@@ -31,14 +31,18 @@
}
@Override
- protected Status getStatus() {
+ protected String onGetSummary() {
try {
// Simulate a delay while reading the setting from disk
Thread.sleep(500);
} catch (InterruptedException e) {
Log.e(TAG, "", e);
}
+ return "Example status value";
+ }
- return new Status("Example status value", true);
+ @Override
+ protected boolean onGetEnabled() {
+ return true;
}
}
diff --git a/apps/SettingInjectorSample/src/com/example/android/injector/SlowInjectorService.java b/apps/SettingInjectorSample/src/com/example/android/injector/SlowInjectorService.java
index 9984df0..7cb32c9 100644
--- a/apps/SettingInjectorSample/src/com/example/android/injector/SlowInjectorService.java
+++ b/apps/SettingInjectorSample/src/com/example/android/injector/SlowInjectorService.java
@@ -31,14 +31,18 @@
}
@Override
- protected Status getStatus() {
+ protected String onGetSummary() {
try {
// Simulate a delay while reading the setting from disk
Thread.sleep(5000);
} catch (InterruptedException e) {
Log.e(TAG, "", e);
}
+ return "Dang that took a long time!";
+ }
- return new Status("Dang that took a long time!", true);
+ @Override
+ protected boolean onGetEnabled() {
+ return true;
}
}
diff --git a/apps/SettingInjectorSample/src/com/example/android/injector/UpdatingInjectorService.java b/apps/SettingInjectorSample/src/com/example/android/injector/UpdatingInjectorService.java
index 6320667..3db619a 100644
--- a/apps/SettingInjectorSample/src/com/example/android/injector/UpdatingInjectorService.java
+++ b/apps/SettingInjectorSample/src/com/example/android/injector/UpdatingInjectorService.java
@@ -32,13 +32,18 @@
}
@Override
- protected Status getStatus() {
+ protected String onGetSummary() {
// Every time it asks for our status, we tell it the setting has just changed. This will
// test the handling of races where we're getting many UPDATE_INTENT broadcasts in a short
// period of time
Intent intent = new Intent(ACTION_INJECTED_SETTING_CHANGED);
sendBroadcast(intent);
Log.d(TAG, "Broadcasting: " + intent);
- return new Status(String.valueOf(System.currentTimeMillis()), true);
+ return String.valueOf(System.currentTimeMillis());
+ }
+
+ @Override
+ protected boolean onGetEnabled() {
+ return true;
}
}
diff --git a/build/sdk.atree b/build/sdk.atree
index 909e6b7..86ce9fa 100644
--- a/build/sdk.atree
+++ b/build/sdk.atree
@@ -156,6 +156,7 @@
# Eclipse Editors support
framework/layoutlib.jar platforms/${PLATFORM_NAME}/data/layoutlib.jar
+framework/icu4j.jar platforms/${PLATFORM_NAME}/data/icu4j.jar
frameworks/base/core/res/res platforms/${PLATFORM_NAME}/data/res
docs/activity_actions.txt platforms/${PLATFORM_NAME}/data/activity_actions.txt
docs/broadcast_actions.txt platforms/${PLATFORM_NAME}/data/broadcast_actions.txt
diff --git a/samples/AccelerometerPlay/_index.jd b/samples/AccelerometerPlay/_index.jd
index 197e453..cdca3a6 100644
--- a/samples/AccelerometerPlay/_index.jd
+++ b/samples/AccelerometerPlay/_index.jd
@@ -1,6 +1,5 @@
-page.tags="Sensor", "Accelerometer"
-sample.tags="Accelerometer", "Games"
-sample.groups="Sensors"
+page.tags="Sensor", "Games", "Accelerometer"
+sample.group=Sensors
@jd:body
<p>Example code that shows how to use the device accelerometer in apps and games.</p>
diff --git a/samples/ActionBarCompat/_index.jd b/samples/ActionBarCompat/_index.jd
index 946570b..61b5e5e 100644
--- a/samples/ActionBarCompat/_index.jd
+++ b/samples/ActionBarCompat/_index.jd
@@ -1,6 +1,5 @@
-page.tags="ActionBar", "Compatibility", "Support Library"
-sample.tags="UI", "ActionBar", "Support Library"
-sample.group="Input"
+page.tags="ActionBar", "UI", "Compatibility", "Support Library"
+sample.group=Input
@jd:body
<p>This sample shows how to use the action bar design pattern on pre-API 11 devices and the built-in
diff --git a/samples/ApiDemos/AndroidManifest.xml b/samples/ApiDemos/AndroidManifest.xml
index a24af29..bbb01b4 100644
--- a/samples/ApiDemos/AndroidManifest.xml
+++ b/samples/ApiDemos/AndroidManifest.xml
@@ -1254,7 +1254,6 @@
<activity android:name=".animation.AnimationLoading"
android:label="Animation/Loading"
- android:hardwareAccelerated="false"
android:enabled="@bool/atLeastHoneycomb">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -1264,7 +1263,6 @@
<activity android:name=".animation.AnimationCloning"
android:label="Animation/Cloning"
- android:hardwareAccelerated="false"
android:enabled="@bool/atLeastHoneycomb">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -1274,7 +1272,6 @@
<activity android:name=".animation.AnimationSeeking"
android:label="Animation/Seeking"
- android:hardwareAccelerated="false"
android:enabled="@bool/atLeastHoneycomb">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -1284,7 +1281,6 @@
<activity android:name=".animation.AnimatorEvents"
android:label="Animation/Events"
- android:hardwareAccelerated="false"
android:enabled="@bool/atLeastHoneycomb">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -1294,7 +1290,6 @@
<activity android:name=".animation.BouncingBalls"
android:label="Animation/Bouncing Balls"
- android:hardwareAccelerated="false"
android:enabled="@bool/atLeastHoneycomb">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -1304,7 +1299,6 @@
<activity android:name=".animation.CustomEvaluator"
android:label="Animation/Custom Evaluator"
- android:hardwareAccelerated="false"
android:enabled="@bool/atLeastHoneycomb">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -1323,7 +1317,6 @@
<activity android:name=".animation.ReversingAnimation"
android:label="Animation/Reversing"
- android:hardwareAccelerated="false"
android:enabled="@bool/atLeastHoneycomb">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -1333,7 +1326,6 @@
<activity android:name=".animation.MultiPropertyAnimation"
android:label="Animation/Multiple Properties"
- android:hardwareAccelerated="false"
android:enabled="@bool/atLeastHoneycomb">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
diff --git a/samples/ApiDemos/src/com/example/android/apis/animation/Transitions.java b/samples/ApiDemos/src/com/example/android/apis/animation/Transitions.java
index b2983cd..4878c5f 100644
--- a/samples/ApiDemos/src/com/example/android/apis/animation/Transitions.java
+++ b/samples/ApiDemos/src/com/example/android/apis/animation/Transitions.java
@@ -24,6 +24,12 @@
import android.transition.TransitionManager;
import com.example.android.apis.R;
+/**
+ * This application demonstrates some of the capabilities and uses of the
+ * {@link android.transition transitions} APIs. Scenes and a TransitionManager
+ * are loaded from resource files and transitions are run between those scenes
+ * as well as a dynamically-configured scene.
+ */
public class Transitions extends Activity {
Scene mScene1, mScene2, mScene3;
@@ -39,6 +45,11 @@
TransitionInflater inflater = TransitionInflater.from(this);
+ // Note that this is not the only way to create a Scene object, but that
+ // loading them from layout resources cooperates with the
+ // TransitionManager that we are also loading from resources, and which
+ // uses the same layout resource files to determine the scenes to transition
+ // from/to.
mScene1 = Scene.getSceneForLayout(mSceneRoot, R.layout.transition_scene1, this);
mScene2 = Scene.getSceneForLayout(mSceneRoot, R.layout.transition_scene2, this);
mScene3 = Scene.getSceneForLayout(mSceneRoot, R.layout.transition_scene3, this);
@@ -58,7 +69,10 @@
mTransitionManager.transitionTo(mScene3);
break;
case R.id.scene4:
- TransitionManager.beginDelayedTransition(mSceneRoot, null);
+ // scene4 is not an actual 'Scene', but rather a dynamic change in the UI,
+ // transitioned to using beginDelayedTransition() to tell the TransitionManager
+ // to get ready to run a transition at the next frame
+ TransitionManager.beginDelayedTransition(mSceneRoot);
setNewSize(R.id.view1, 150, 25);
setNewSize(R.id.view2, 150, 25);
setNewSize(R.id.view3, 150, 25);
diff --git a/samples/BluetoothHDP/_index.jd b/samples/BluetoothHDP/_index.jd
index cf5f555..526e318 100644
--- a/samples/BluetoothHDP/_index.jd
+++ b/samples/BluetoothHDP/_index.jd
@@ -1,6 +1,5 @@
-page.tags="Bluetooth", "HDP"
-sample.tags="Bluetooth", "Health"
-sample.group="Connectivity"
+page.tags="Bluetooth", "HDP", "Health"
+sample.group=Connectivity
@jd:body
<p>A sample application that demonstrates how to communicate with a Bluetooth Health Device Profile (HDP) device. This feature is available on Android 4.0 (API level 14) or above platforms. The Android Bluetooth Health API lets you create
diff --git a/samples/BluetoothLeGatt/_index.jd b/samples/BluetoothLeGatt/_index.jd
index b73d519..110ca4a 100644
--- a/samples/BluetoothLeGatt/_index.jd
+++ b/samples/BluetoothLeGatt/_index.jd
@@ -1,6 +1,5 @@
page.tags="Bluetooth", "LE", "SMART"
-sample.tags="Bluetooth", "LE"
-sample.group="Connectivity"
+sample.group=Connectivity
@jd:body
<p>A sample application that demonstrates how to communicate with
diff --git a/testrunner/test_defs.xml b/testrunner/test_defs.xml
index 24e4dca..421641f 100644
--- a/testrunner/test_defs.xml
+++ b/testrunner/test_defs.xml
@@ -533,6 +533,13 @@
continuous="true"
description="SystemUI tests" />
+<test name="documentsui"
+ build_path="frameworks/base/packages/DocumentsUI/tests"
+ package="com.android.documentsui.tests"
+ coverage_target="DocumentsUI"
+ continuous="true"
+ description="DocumentsUI tests" />
+
<!-- native tests -->
<!-- Bionic C++ -->