Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Guard against using Android API not defined in API level 16 & 17 #8006

Merged
merged 1 commit into from
Mar 1, 2019
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion shell/platform/android/io/flutter/view/FlutterView.java
Original file line number Diff line number Diff line change
Expand Up @@ -570,7 +570,11 @@ public boolean onHoverEvent(MotionEvent event) {

@Override
public boolean onGenericMotionEvent(MotionEvent event) {
if (!event.isFromSource(InputDevice.SOURCE_CLASS_POINTER) ||
// Method isFromSource is only available in API 18+ (Jelly Bean MR2)
// Mouse hover support is not implemented for API < 18.
boolean isPointerEvent = Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2
&& event.isFromSource(InputDevice.SOURCE_CLASS_POINTER);
if (!isPointerEvent ||
event.getActionMasked() != MotionEvent.ACTION_HOVER_MOVE ||
!isAttached()) {
return super.onGenericMotionEvent(event);
Expand Down