Add InputConsumerNoResampling, which is a rewrite of InputConsumer
In this CL, an InputConsumer with built-in looper handling is being added. This will be useful for native code that needs batching, and that provides choreographer callbacks directly into native code. Before this CL (and with this CL, temporarily) the InputConsumer logic was split between native and jni layers. In general, we shouldn't have logic inside jni. But in this case, the situation was also making the code difficult to reason and debug. In this new InputConsumerNoResampling class, all of the features of InputConsumer and NativeInputReceiver are combined, except for resampling. That will be done separately, at a later time. As a result, we will not be switching to the new InputConsumerNoResampling class right away. Once resampling is added, we can switch to the new InputConsumerNoResampling (and rename it to InputConsumer), and delete the old InputConsumer. In the meantime, the new InputConsumerNoResampling will be useful in the new NDK APIs. There, having resampling is not critical. Bug: 311142655 Test: TEST=libinput_tests; m $TEST && $ANDROID_HOST_OUT/nativetest64/$TEST/$TEST --gtest_repeat=100 --gtest_break_on_failure Change-Id: I468ddbd8406c4bf9f5e022f79fd1a582ba680633
Loading
Please register or sign in to comment