Merge "Dispatch hover events through the input consumer proxy" into sc-v2-dev
This commit is contained in:
commit
a84f86f254
|
@ -99,6 +99,8 @@ public interface InputConsumer {
|
|||
|
||||
default void onMotionEvent(MotionEvent ev) { }
|
||||
|
||||
default void onHoverEvent(MotionEvent ev) { }
|
||||
|
||||
default void onKeyEvent(KeyEvent ev) { }
|
||||
|
||||
default void onInputEvent(InputEvent ev) {
|
||||
|
|
|
@ -100,6 +100,13 @@ public class OverviewInputConsumer<S extends BaseState<S>, T extends StatefulAct
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onHoverEvent(MotionEvent ev) {
|
||||
if (ENABLE_QUICKSTEP_LIVE_TILE.get()) {
|
||||
mActivity.dispatchGenericMotionEvent(ev);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onKeyEvent(KeyEvent ev) {
|
||||
if (ENABLE_QUICKSTEP_LIVE_TILE.get()) {
|
||||
|
|
|
@ -71,7 +71,16 @@ public class InputConsumerProxy {
|
|||
|
||||
private boolean onInputConsumerEvent(InputEvent ev) {
|
||||
if (ev instanceof MotionEvent) {
|
||||
onInputConsumerMotionEvent((MotionEvent) ev);
|
||||
MotionEvent event = (MotionEvent) ev;
|
||||
int action = event.getActionMasked();
|
||||
boolean isHoverEvent = action == MotionEvent.ACTION_HOVER_ENTER
|
||||
|| action == MotionEvent.ACTION_HOVER_MOVE
|
||||
|| action == MotionEvent.ACTION_HOVER_EXIT;
|
||||
if (isHoverEvent) {
|
||||
onInputConsumerHoverEvent(event);
|
||||
} else {
|
||||
onInputConsumerMotionEvent(event);
|
||||
}
|
||||
} else if (ev instanceof KeyEvent) {
|
||||
initInputConsumerIfNeeded();
|
||||
mInputConsumer.onKeyEvent((KeyEvent) ev);
|
||||
|
@ -113,6 +122,15 @@ public class InputConsumerProxy {
|
|||
return true;
|
||||
}
|
||||
|
||||
private void onInputConsumerHoverEvent(MotionEvent ev) {
|
||||
initInputConsumerIfNeeded();
|
||||
if (mInputConsumer != null) {
|
||||
SimpleOrientationTouchTransformer.INSTANCE.get(mContext).transform(ev,
|
||||
mRotationSupplier.get());
|
||||
mInputConsumer.onHoverEvent(ev);
|
||||
}
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
if (mTouchInProgress) {
|
||||
mDestroyPending = true;
|
||||
|
|
Loading…
Reference in New Issue