Bug 1255222 - Implement InputConnection.getHandler for Android N; r=esawin

Implement the new InputConnection.getHandler method for running input
methods on a separate thread in Android N.
This commit is contained in:
Jim Chen 2016-05-04 13:58:27 -04:00
Родитель 6455e570f8
Коммит 2a49ee9839
1 изменённых файлов: 11 добавлений и 6 удалений

Просмотреть файл

@ -454,17 +454,22 @@ class GeckoInputConnection
return config.keyboard != Configuration.KEYBOARD_NOKEYS;
}
@Override
// Android N: @Override // InputConnection
public Handler getHandler() {
if (isPhysicalKeyboardPresent()) {
return ThreadUtils.getUiHandler();
}
return getBackgroundHandler();
}
@Override // InputConnectionListener
public Handler getHandler(Handler defHandler) {
if (!canReturnCustomHandler()) {
return defHandler;
}
if (isPhysicalKeyboardPresent()) {
return mEditableClient.setInputConnectionHandler(defHandler);
}
return mEditableClient.setInputConnectionHandler(getBackgroundHandler());
return mEditableClient.setInputConnectionHandler(getHandler());
}
@Override