summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/java/android/hardware/camera2/CaptureRequest.java12
-rw-r--r--core/java/android/security/IKeystoreService.aidl12
-rw-r--r--core/java/android/view/ActionMode.java4
-rw-r--r--core/jni/android_media_AudioRecord.cpp2
-rw-r--r--core/jni/android_media_AudioSystem.cpp6
-rw-r--r--core/jni/android_media_AudioTrack.cpp3
6 files changed, 27 insertions, 12 deletions
diff --git a/core/java/android/hardware/camera2/CaptureRequest.java b/core/java/android/hardware/camera2/CaptureRequest.java
index 8f7b983..b2c1c71 100644
--- a/core/java/android/hardware/camera2/CaptureRequest.java
+++ b/core/java/android/hardware/camera2/CaptureRequest.java
@@ -60,9 +60,17 @@ import java.util.Objects;
* high-resolution still capture would also include a Surface from a ImageReader
* configured for high-resolution JPEG images.</p>
*
- * @see CameraDevice#capture
- * @see CameraDevice#setRepeatingRequest
+ * <p>A reprocess capture request allows a previously-captured image from the camera device to be
+ * sent back to the device for further processing. It can be created with
+ * {@link CameraDevice#createReprocessCaptureRequest}, and used with a reprocessable capture session
+ * created with {@link CameraDevice#createReprocessableCaptureSession}.</p>
+ *
+ * @see CameraCaptureSession#capture
+ * @see CameraCaptureSession#setRepeatingRequest
+ * @see CameraCaptureSession#captureBurst
+ * @see CameraCaptureSession#setRepeatingBurst
* @see CameraDevice#createCaptureRequest
+ * @see CameraDevice#createReprocessCaptureRequest
*/
public final class CaptureRequest extends CameraMetadata<CaptureRequest.Key<?>>
implements Parcelable {
diff --git a/core/java/android/security/IKeystoreService.aidl b/core/java/android/security/IKeystoreService.aidl
index b0779c0..30ea8e7 100644
--- a/core/java/android/security/IKeystoreService.aidl
+++ b/core/java/android/security/IKeystoreService.aidl
@@ -30,33 +30,29 @@ import android.security.KeystoreArguments;
* @hide
*/
interface IKeystoreService {
- int test();
+ int getState(int userId);
byte[] get(String name);
int insert(String name, in byte[] item, int uid, int flags);
int del(String name, int uid);
int exist(String name, int uid);
- String[] saw(String namePrefix, int uid);
+ String[] list(String namePrefix, int uid);
int reset();
int onUserPasswordChanged(int userId, String newPassword);
- int lock();
+ int lock(int userId);
int unlock(int userId, String userPassword);
- int zero();
+ int isEmpty(int userId);
int generate(String name, int uid, int keyType, int keySize, int flags,
in KeystoreArguments args);
int import_key(String name, in byte[] data, int uid, int flags);
byte[] sign(String name, in byte[] data);
int verify(String name, in byte[] data, in byte[] signature);
byte[] get_pubkey(String name);
- int del_key(String name, int uid);
int grant(String name, int granteeUid);
int ungrant(String name, int granteeUid);
long getmtime(String name);
int duplicate(String srcKey, int srcUid, String destKey, int destUid);
int is_hardware_backed(String string);
int clear_uid(long uid);
- int reset_uid(int uid);
- int sync_uid(int sourceUid, int targetUid);
- int password_uid(String password, int uid);
// Keymaster 0.4 methods
int addRngEntropy(in byte[] data);
diff --git a/core/java/android/view/ActionMode.java b/core/java/android/view/ActionMode.java
index 9f00455..4b9b590 100644
--- a/core/java/android/view/ActionMode.java
+++ b/core/java/android/view/ActionMode.java
@@ -343,7 +343,9 @@ public abstract class ActionMode {
* @param mode The ActionMode that requires positioning.
* @param view The View that originated the ActionMode, in whose coordinates the Rect should
* be provided.
- * @param outRect The Rect to be populated with the content position.
+ * @param outRect The Rect to be populated with the content position. Use this to specify
+ * where the content in your app lives within the given view. This will be used
+ * to avoid occluding the given content Rect with the created ActionMode.
*/
public void onGetContentRect(ActionMode mode, View view, Rect outRect) {
if (view != null) {
diff --git a/core/jni/android_media_AudioRecord.cpp b/core/jni/android_media_AudioRecord.cpp
index e5c4ba9..5928c69 100644
--- a/core/jni/android_media_AudioRecord.cpp
+++ b/core/jni/android_media_AudioRecord.cpp
@@ -623,7 +623,7 @@ static jboolean android_media_AudioRecord_setInputDevice(
sp<AudioRecord> lpRecorder = getAudioRecord(env, thiz);
if (lpRecorder == 0) {
- return 0;
+ return false;
}
return lpRecorder->setInputDevice(device_id) == NO_ERROR;
}
diff --git a/core/jni/android_media_AudioSystem.cpp b/core/jni/android_media_AudioSystem.cpp
index eab5668..1cd07d1 100644
--- a/core/jni/android_media_AudioSystem.cpp
+++ b/core/jni/android_media_AudioSystem.cpp
@@ -1554,6 +1554,11 @@ exit:
return jStatus;
}
+static jint
+android_media_AudioSystem_systemReady(JNIEnv *env, jobject thiz)
+{
+ return nativeToJavaStatus(AudioSystem::systemReady());
+}
// ----------------------------------------------------------------------------
@@ -1601,6 +1606,7 @@ static JNINativeMethod gMethods[] = {
(void *)android_media_AudioSystem_registerPolicyMixes},
{"native_register_dynamic_policy_callback", "()V",
(void *)android_media_AudioSystem_registerDynPolicyCallback},
+ {"systemReady", "()I", (void *)android_media_AudioSystem_systemReady},
};
diff --git a/core/jni/android_media_AudioTrack.cpp b/core/jni/android_media_AudioTrack.cpp
index daafd5e..5b52a49 100644
--- a/core/jni/android_media_AudioTrack.cpp
+++ b/core/jni/android_media_AudioTrack.cpp
@@ -998,6 +998,9 @@ static jboolean android_media_AudioTrack_setOutputDevice(
JNIEnv *env, jobject thiz, jint device_id) {
sp<AudioTrack> lpTrack = getAudioTrack(env, thiz);
+ if (lpTrack == 0) {
+ return false;
+ }
return lpTrack->setOutputDevice(device_id) == NO_ERROR;
}