Skip to content

Commit

Permalink
Prevent scrollView to scroll with dpad when scrollEnabled property is…
Browse files Browse the repository at this point in the history
… set to false.
  • Loading branch information
aamalric committed Jun 25, 2019
1 parent a89e932 commit f4d1b0e
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
import androidx.core.view.ViewCompat;
import androidx.core.text.TextUtilsCompat;
import android.util.Log;
import android.view.KeyEvent;
import android.view.FocusFinder;
import android.view.MotionEvent;
import android.view.View;
Expand Down Expand Up @@ -411,6 +412,16 @@ public boolean onTouchEvent(MotionEvent ev) {
return super.onTouchEvent(ev);
}

@Override
public boolean executeKeyEvent(KeyEvent event) {
int eventKeyCode = event.getKeyCode();
if (!mScrollEnabled && (eventKeyCode == KeyEvent.KEYCODE_DPAD_LEFT ||
eventKeyCode == KeyEvent.KEYCODE_DPAD_RIGHT)) {
return false;
}
return super.executeKeyEvent(event);
}

@Override
public void fling(int velocityX) {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import android.graphics.drawable.Drawable;
import androidx.core.view.ViewCompat;
import android.util.Log;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
Expand Down Expand Up @@ -300,6 +301,16 @@ public boolean onTouchEvent(MotionEvent ev) {
return super.onTouchEvent(ev);
}

@Override
public boolean executeKeyEvent(KeyEvent event) {
int eventKeyCode = event.getKeyCode();
if (!mScrollEnabled && (eventKeyCode == KeyEvent.KEYCODE_DPAD_UP ||
eventKeyCode == KeyEvent.KEYCODE_DPAD_DOWN)) {
return false;
}
return super.executeKeyEvent(event);
}

@Override
public void setRemoveClippedSubviews(boolean removeClippedSubviews) {
if (removeClippedSubviews && mClippingRect == null) {
Expand Down

0 comments on commit f4d1b0e

Please sign in to comment.