Prefer std::string over String8
String8 is obsolete, only use std::string in the
input libraries now.
Bug: 64258224
Test: make, boot device, interact with UI
Change-Id: I0e610f8290438ab1e21e466288e3217015b49699
diff --git a/services/core/jni/com_android_server_input_InputManagerService.cpp b/services/core/jni/com_android_server_input_InputManagerService.cpp
index 21300ed..27c2fac 100644
--- a/services/core/jni/com_android_server_input_InputManagerService.cpp
+++ b/services/core/jni/com_android_server_input_InputManagerService.cpp
@@ -32,6 +32,7 @@
#include <atomic>
#include <cinttypes>
#include <limits.h>
+#include <android-base/stringprintf.h>
#include <android_runtime/AndroidRuntime.h>
#include <android_runtime/Log.h>
@@ -65,6 +66,8 @@
#define INDENT " "
+using android::base::StringPrintf;
+
namespace android {
// The exponent used to calculate the pointer speed scaling factor.
@@ -198,7 +201,7 @@
inline sp<InputManager> getInputManager() const { return mInputManager; }
- void dump(String8& dump);
+ void dump(std::string& dump);
void setVirtualDisplayViewports(JNIEnv* env, jobjectArray viewportObjArray);
void setDisplayViewport(int32_t viewportType, const DisplayViewport& viewport);
@@ -240,7 +243,7 @@
virtual void notifyConfigurationChanged(nsecs_t when);
virtual nsecs_t notifyANR(const sp<InputApplicationHandle>& inputApplicationHandle,
const sp<InputWindowHandle>& inputWindowHandle,
- const String8& reason);
+ const std::string& reason);
virtual void notifyInputChannelBroken(const sp<InputWindowHandle>& inputWindowHandle);
virtual bool filterInputEvent(const InputEvent* inputEvent, uint32_t policyFlags);
virtual void getDispatcherConfiguration(InputDispatcherConfiguration* outConfig);
@@ -347,28 +350,28 @@
env->DeleteGlobalRef(mServiceObj);
}
-void NativeInputManager::dump(String8& dump) {
- dump.append("Input Manager State:\n");
+void NativeInputManager::dump(std::string& dump) {
+ dump += "Input Manager State:\n";
{
- dump.appendFormat(INDENT "Interactive: %s\n", toString(mInteractive.load()));
+ dump += StringPrintf(INDENT "Interactive: %s\n", toString(mInteractive.load()));
}
{
AutoMutex _l(mLock);
- dump.appendFormat(INDENT "System UI Visibility: 0x%0" PRIx32 "\n",
+ dump += StringPrintf(INDENT "System UI Visibility: 0x%0" PRIx32 "\n",
mLocked.systemUiVisibility);
- dump.appendFormat(INDENT "Pointer Speed: %" PRId32 "\n", mLocked.pointerSpeed);
- dump.appendFormat(INDENT "Pointer Gestures Enabled: %s\n",
+ dump += StringPrintf(INDENT "Pointer Speed: %" PRId32 "\n", mLocked.pointerSpeed);
+ dump += StringPrintf(INDENT "Pointer Gestures Enabled: %s\n",
toString(mLocked.pointerGesturesEnabled));
- dump.appendFormat(INDENT "Show Touches: %s\n", toString(mLocked.showTouches));
- dump.appendFormat(INDENT "Pointer Capture Enabled: %s\n", toString(mLocked.pointerCapture));
+ dump += StringPrintf(INDENT "Show Touches: %s\n", toString(mLocked.showTouches));
+ dump += StringPrintf(INDENT "Pointer Capture Enabled: %s\n", toString(mLocked.pointerCapture));
}
- dump.append("\n");
+ dump += "\n";
mInputManager->getReader()->dump(dump);
- dump.append("\n");
+ dump += "\n";
mInputManager->getDispatcher()->dump(dump);
- dump.append("\n");
+ dump += "\n";
}
bool NativeInputManager::checkAndClearExceptionFromCallback(JNIEnv* env, const char* methodName) {
@@ -668,7 +671,7 @@
}
nsecs_t NativeInputManager::notifyANR(const sp<InputApplicationHandle>& inputApplicationHandle,
- const sp<InputWindowHandle>& inputWindowHandle, const String8& reason) {
+ const sp<InputWindowHandle>& inputWindowHandle, const std::string& reason) {
#if DEBUG_INPUT_DISPATCHER_POLICY
ALOGD("notifyANR");
#endif
@@ -680,7 +683,7 @@
getInputApplicationHandleObjLocalRef(env, inputApplicationHandle);
jobject inputWindowHandleObj =
getInputWindowHandleObjLocalRef(env, inputWindowHandle);
- jstring reasonObj = env->NewStringUTF(reason.string());
+ jstring reasonObj = env->NewStringUTF(reason.c_str());
jlong newTimeout = env->CallLongMethod(mServiceObj,
gServiceClassInfo.notifyANR, inputApplicationHandleObj, inputWindowHandleObj,
@@ -1342,7 +1345,7 @@
NativeInputManager* im = static_cast<NativeInputManager*>(data);
ALOGW("Input channel object '%s' was disposed without first being unregistered with "
- "the input manager!", inputChannel->getName().string());
+ "the input manager!", inputChannel->getName().c_str());
im->unregisterInputChannel(env, inputChannel);
}
@@ -1363,9 +1366,9 @@
status_t status = im->registerInputChannel(
env, inputChannel, inputWindowHandle, monitor);
if (status) {
- String8 message;
- message.appendFormat("Failed to register input channel. status=%d", status);
- jniThrowRuntimeException(env, message.string());
+ std::string message;
+ message += StringPrintf("Failed to register input channel. status=%d", status);
+ jniThrowRuntimeException(env, message.c_str());
return;
}
@@ -1390,9 +1393,9 @@
status_t status = im->unregisterInputChannel(env, inputChannel);
if (status && status != BAD_VALUE) { // ignore already unregistered channel
- String8 message;
- message.appendFormat("Failed to unregister input channel. status=%d", status);
- jniThrowRuntimeException(env, message.string());
+ std::string message;
+ message += StringPrintf("Failed to unregister input channel. status=%d", status);
+ jniThrowRuntimeException(env, message.c_str());
}
}
@@ -1576,9 +1579,9 @@
static jstring nativeDump(JNIEnv* env, jclass /* clazz */, jlong ptr) {
NativeInputManager* im = reinterpret_cast<NativeInputManager*>(ptr);
- String8 dump;
+ std::string dump;
im->dump(dump);
- return env->NewStringUTF(dump.string());
+ return env->NewStringUTF(dump.c_str());
}
static void nativeMonitor(JNIEnv* /* env */, jclass /* clazz */, jlong ptr) {