am 71c5d62d: Merge "Consider RTL layout in DPAD navigation in AbsSeekBar"
* commit '71c5d62d9680207c4d3d25ac3f590f3667b250eb': Consider RTL layout in DPAD navigation in AbsSeekBar
This commit is contained in:
@@ -704,19 +704,20 @@ public abstract class AbsSeekBar extends ProgressBar {
|
|||||||
@Override
|
@Override
|
||||||
public boolean onKeyDown(int keyCode, KeyEvent event) {
|
public boolean onKeyDown(int keyCode, KeyEvent event) {
|
||||||
if (isEnabled()) {
|
if (isEnabled()) {
|
||||||
int progress = getProgress();
|
int increment = mKeyProgressIncrement;
|
||||||
switch (keyCode) {
|
switch (keyCode) {
|
||||||
case KeyEvent.KEYCODE_DPAD_LEFT:
|
case KeyEvent.KEYCODE_DPAD_LEFT:
|
||||||
if (progress <= 0) break;
|
increment = -increment;
|
||||||
animateSetProgress(progress - mKeyProgressIncrement);
|
// fallthrough
|
||||||
onKeyChange();
|
|
||||||
return true;
|
|
||||||
|
|
||||||
case KeyEvent.KEYCODE_DPAD_RIGHT:
|
case KeyEvent.KEYCODE_DPAD_RIGHT:
|
||||||
if (progress >= getMax()) break;
|
increment = isLayoutRtl() ? -increment : increment;
|
||||||
animateSetProgress(progress + mKeyProgressIncrement);
|
int progress = getProgress() + increment;
|
||||||
onKeyChange();
|
if (progress > -mKeyProgressIncrement &&
|
||||||
return true;
|
progress < getMax() + mKeyProgressIncrement) {
|
||||||
|
animateSetProgress(progress);
|
||||||
|
onKeyChange();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user