diff options
author | 2024-02-16 12:10:39 +0000 | |
---|---|---|
committer | 2024-02-21 15:22:38 +0000 | |
commit | 14ee29abbf9d8353982de0353548023fb590bdf5 (patch) | |
tree | 7318cab1767a82acd4402c4538adb6323bf45052 | |
parent | 51503c1a420f7523cad4c50fd79062c8c828c9c9 (diff) |
Rename android.view.InputEvent obtain copy from native methods
Rename obtain Java InputEvent copy from native methods for Key and
Motion events for consistency. This CL renames
1. android_view_MotionEvent_obtainAsCopy ->
android_view_MotionEvent_obtainAsCopy
2. android_view_KeyEvent_fromNative ->
android_view_KeyEvent_obtainAsCopy
3. android_view_KeyEvent_toNative ->
android_view_KeyEvent_obtainAsCopy
Bug: 324375527
Test: atest MotionEventTest KeyEventTest
Change-Id: I2a2fee29fd8ffcce04a939d19d3f7a0ce0c5dcf1
-rw-r--r-- | core/jni/android_view_InputEventReceiver.cpp | 4 | ||||
-rw-r--r-- | core/jni/android_view_InputEventSender.cpp | 2 | ||||
-rw-r--r-- | core/jni/android_view_InputQueue.cpp | 2 | ||||
-rw-r--r-- | core/jni/android_view_KeyCharacterMap.cpp | 2 | ||||
-rw-r--r-- | core/jni/android_view_KeyEvent.cpp | 4 | ||||
-rw-r--r-- | core/jni/android_view_KeyEvent.h | 4 | ||||
-rw-r--r-- | native/android/input.cpp | 8 | ||||
-rw-r--r-- | services/core/jni/com_android_server_input_InputManagerService.cpp | 17 |
8 files changed, 22 insertions, 21 deletions
diff --git a/core/jni/android_view_InputEventReceiver.cpp b/core/jni/android_view_InputEventReceiver.cpp index f93b3068a229..a88314434340 100644 --- a/core/jni/android_view_InputEventReceiver.cpp +++ b/core/jni/android_view_InputEventReceiver.cpp @@ -378,8 +378,8 @@ status_t NativeInputEventReceiver::consumeEvents(JNIEnv* env, ALOGD("channel '%s' ~ Received key event.", getInputChannelName().c_str()); } inputEventObj = - android_view_KeyEvent_fromNative(env, - static_cast<KeyEvent&>(*inputEvent)); + android_view_KeyEvent_obtainAsCopy(env, + static_cast<KeyEvent&>(*inputEvent)); break; case InputEventType::MOTION: { diff --git a/core/jni/android_view_InputEventSender.cpp b/core/jni/android_view_InputEventSender.cpp index b5fbb22215b4..88b02baab924 100644 --- a/core/jni/android_view_InputEventSender.cpp +++ b/core/jni/android_view_InputEventSender.cpp @@ -359,7 +359,7 @@ static jboolean nativeSendKeyEvent(JNIEnv* env, jclass clazz, jlong senderPtr, jint seq, jobject eventObj) { sp<NativeInputEventSender> sender = reinterpret_cast<NativeInputEventSender*>(senderPtr); - const KeyEvent event = android_view_KeyEvent_toNative(env, eventObj); + const KeyEvent event = android_view_KeyEvent_obtainAsCopy(env, eventObj); status_t status = sender->sendKeyEvent(seq, &event); return !status; } diff --git a/core/jni/android_view_InputQueue.cpp b/core/jni/android_view_InputQueue.cpp index a0d081d2cd26..50d2cbe2ce74 100644 --- a/core/jni/android_view_InputQueue.cpp +++ b/core/jni/android_view_InputQueue.cpp @@ -221,7 +221,7 @@ static jlong nativeSendKeyEvent(JNIEnv* env, jobject clazz, jlong ptr, jobject e jboolean predispatch) { InputQueue* queue = reinterpret_cast<InputQueue*>(ptr); KeyEvent* event = queue->createKeyEvent(); - *event = android_view_KeyEvent_toNative(env, eventObj); + *event = android_view_KeyEvent_obtainAsCopy(env, eventObj); if (predispatch) { event->setFlags(event->getFlags() | AKEY_EVENT_FLAG_PREDISPATCH); diff --git a/core/jni/android_view_KeyCharacterMap.cpp b/core/jni/android_view_KeyCharacterMap.cpp index a79e37afd4cd..3325e893980d 100644 --- a/core/jni/android_view_KeyCharacterMap.cpp +++ b/core/jni/android_view_KeyCharacterMap.cpp @@ -219,7 +219,7 @@ static jobjectArray nativeGetEvents(JNIEnv *env, jobject clazz, jlong ptr, result = env->NewObjectArray(jsize(events.size()), gKeyEventClassInfo.clazz, NULL); if (result) { for (size_t i = 0; i < events.size(); i++) { - jobject keyEventObj = android_view_KeyEvent_fromNative(env, events.itemAt(i)); + jobject keyEventObj = android_view_KeyEvent_obtainAsCopy(env, events.itemAt(i)); if (!keyEventObj) break; // threw OOM exception env->SetObjectArrayElement(result, jsize(i), keyEventObj); env->DeleteLocalRef(keyEventObj); diff --git a/core/jni/android_view_KeyEvent.cpp b/core/jni/android_view_KeyEvent.cpp index a9c991919361..908ab5ed2eac 100644 --- a/core/jni/android_view_KeyEvent.cpp +++ b/core/jni/android_view_KeyEvent.cpp @@ -94,7 +94,7 @@ static struct { // ---------------------------------------------------------------------------- -jobject android_view_KeyEvent_fromNative(JNIEnv* env, const KeyEvent& event) { +jobject android_view_KeyEvent_obtainAsCopy(JNIEnv* env, const KeyEvent& event) { ScopedLocalRef<jbyteArray> hmac = toJbyteArray(env, event.getHmac()); jobject eventObj = env->CallStaticObjectMethod(gKeyEventClassInfo.clazz, gKeyEventClassInfo.obtain, @@ -113,7 +113,7 @@ jobject android_view_KeyEvent_fromNative(JNIEnv* env, const KeyEvent& event) { return eventObj; } -KeyEvent android_view_KeyEvent_toNative(JNIEnv* env, jobject eventObj) { +KeyEvent android_view_KeyEvent_obtainAsCopy(JNIEnv* env, jobject eventObj) { jint id = env->GetIntField(eventObj, gKeyEventClassInfo.mId); jint deviceId = env->GetIntField(eventObj, gKeyEventClassInfo.mDeviceId); jint source = env->GetIntField(eventObj, gKeyEventClassInfo.mSource); diff --git a/core/jni/android_view_KeyEvent.h b/core/jni/android_view_KeyEvent.h index bc4876a7a835..eab7c972817b 100644 --- a/core/jni/android_view_KeyEvent.h +++ b/core/jni/android_view_KeyEvent.h @@ -27,11 +27,11 @@ class KeyEvent; /* Obtains an instance of a DVM KeyEvent object as a copy of a native KeyEvent instance. * Returns NULL on error. */ -extern jobject android_view_KeyEvent_fromNative(JNIEnv* env, const KeyEvent& event); +extern jobject android_view_KeyEvent_obtainAsCopy(JNIEnv* env, const KeyEvent& event); /* Copies the contents of a DVM KeyEvent object to a native KeyEvent instance. * Returns non-zero on error. */ -extern KeyEvent android_view_KeyEvent_toNative(JNIEnv* env, jobject eventObj); +extern KeyEvent android_view_KeyEvent_obtainAsCopy(JNIEnv* env, jobject eventObj); /* Recycles a DVM KeyEvent object. * Key events should only be recycled if they are owned by the system since user diff --git a/native/android/input.cpp b/native/android/input.cpp index 6efb0280ac02..4708e69447ec 100644 --- a/native/android/input.cpp +++ b/native/android/input.cpp @@ -87,7 +87,7 @@ int64_t AKeyEvent_getDownTime(const AInputEvent* key_event) { const AInputEvent* AKeyEvent_fromJava(JNIEnv* env, jobject keyEvent) { std::unique_ptr<KeyEvent> event = std::make_unique<KeyEvent>(); - *event = android::android_view_KeyEvent_toNative(env, keyEvent); + *event = android::android_view_KeyEvent_obtainAsCopy(env, keyEvent); return event.release(); } @@ -323,9 +323,9 @@ jobject AInputEvent_toJava(JNIEnv* env, const AInputEvent* aInputEvent) { static_cast<const MotionEvent&>( *aInputEvent)); case AINPUT_EVENT_TYPE_KEY: - return android::android_view_KeyEvent_fromNative(env, - static_cast<const KeyEvent&>( - *aInputEvent)); + return android::android_view_KeyEvent_obtainAsCopy(env, + static_cast<const KeyEvent&>( + *aInputEvent)); default: LOG_ALWAYS_FATAL("Unexpected event type %d in AInputEvent_toJava.", eventType); } diff --git a/services/core/jni/com_android_server_input_InputManagerService.cpp b/services/core/jni/com_android_server_input_InputManagerService.cpp index cbbcd965f4af..93c0c6258e9b 100644 --- a/services/core/jni/com_android_server_input_InputManagerService.cpp +++ b/services/core/jni/com_android_server_input_InputManagerService.cpp @@ -1510,8 +1510,8 @@ bool NativeInputManager::filterInputEvent(const InputEvent& inputEvent, uint32_t switch (inputEvent.getType()) { case InputEventType::KEY: inputEventObj.reset( - android_view_KeyEvent_fromNative(env, - static_cast<const KeyEvent&>(inputEvent))); + android_view_KeyEvent_obtainAsCopy(env, + static_cast<const KeyEvent&>(inputEvent))); break; case InputEventType::MOTION: inputEventObj.reset( @@ -1559,7 +1559,7 @@ void NativeInputManager::interceptKeyBeforeQueueing(const KeyEvent& keyEvent, const nsecs_t when = keyEvent.getEventTime(); JNIEnv* env = jniEnv(); - ScopedLocalRef<jobject> keyEventObj(env, android_view_KeyEvent_fromNative(env, keyEvent)); + ScopedLocalRef<jobject> keyEventObj(env, android_view_KeyEvent_obtainAsCopy(env, keyEvent)); if (!keyEventObj.get()) { ALOGE("Failed to obtain key event object for interceptKeyBeforeQueueing."); return; @@ -1639,7 +1639,7 @@ nsecs_t NativeInputManager::interceptKeyBeforeDispatching(const sp<IBinder>& tok // Token may be null ScopedLocalRef<jobject> tokenObj(env, javaObjectForIBinder(env, token)); - ScopedLocalRef<jobject> keyEventObj(env, android_view_KeyEvent_fromNative(env, keyEvent)); + ScopedLocalRef<jobject> keyEventObj(env, android_view_KeyEvent_obtainAsCopy(env, keyEvent)); if (!keyEventObj.get()) { ALOGE("Failed to obtain key event object for interceptKeyBeforeDispatching."); return 0; @@ -1670,7 +1670,7 @@ std::optional<KeyEvent> NativeInputManager::dispatchUnhandledKey(const sp<IBinde // Note: tokenObj may be null. ScopedLocalRef<jobject> tokenObj(env, javaObjectForIBinder(env, token)); - ScopedLocalRef<jobject> keyEventObj(env, android_view_KeyEvent_fromNative(env, keyEvent)); + ScopedLocalRef<jobject> keyEventObj(env, android_view_KeyEvent_obtainAsCopy(env, keyEvent)); if (!keyEventObj.get()) { ALOGE("Failed to obtain key event object for dispatchUnhandledKey."); return {}; @@ -1689,7 +1689,8 @@ std::optional<KeyEvent> NativeInputManager::dispatchUnhandledKey(const sp<IBinde return {}; } - const KeyEvent fallbackEvent = android_view_KeyEvent_toNative(env, fallbackKeyEventObj.get()); + const KeyEvent fallbackEvent = + android_view_KeyEvent_obtainAsCopy(env, fallbackKeyEventObj.get()); android_view_KeyEvent_recycle(env, fallbackKeyEventObj.get()); return fallbackEvent; } @@ -2070,7 +2071,7 @@ static jint nativeInjectInputEvent(JNIEnv* env, jobject nativeImplObj, jobject i InputEventInjectionSync mode = static_cast<InputEventInjectionSync>(syncMode); if (env->IsInstanceOf(inputEventObj, gKeyEventClassInfo.clazz)) { - const KeyEvent keyEvent = android_view_KeyEvent_toNative(env, inputEventObj); + const KeyEvent keyEvent = android_view_KeyEvent_obtainAsCopy(env, inputEventObj); const InputEventInjectionResult result = im->getInputManager()->getDispatcher().injectInputEvent(&keyEvent, targetUid, mode, std::chrono::milliseconds( @@ -2101,7 +2102,7 @@ static jobject nativeVerifyInputEvent(JNIEnv* env, jobject nativeImplObj, jobjec NativeInputManager* im = getNativeInputManager(env, nativeImplObj); if (env->IsInstanceOf(inputEventObj, gKeyEventClassInfo.clazz)) { - const KeyEvent keyEvent = android_view_KeyEvent_toNative(env, inputEventObj); + const KeyEvent keyEvent = android_view_KeyEvent_obtainAsCopy(env, inputEventObj); std::unique_ptr<VerifiedInputEvent> verifiedEvent = im->getInputManager()->getDispatcher().verifyInputEvent(keyEvent); if (verifiedEvent == nullptr) { |