Merge "QSFragment: fix NPE in setOverScrollAmount" into tm-dev am: ca1f7d88d4 am: 60c6c2be2d

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17730691

Change-Id: I553157344187b8519fb444584a55af259583987c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
TreeHugger Robot
2022-04-14 11:31:42 +00:00
committed by Automerger Merge Worker
2 changed files with 22 additions and 1 deletions

View File

@@ -519,7 +519,10 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
@Override
public void setOverScrollAmount(int overScrollAmount) {
mOverScrolling = overScrollAmount != 0;
getView().setTranslationY(overScrollAmount);
View view = getView();
if (view != null) {
view.setTranslationY(overScrollAmount);
}
}
@Override

View File

@@ -315,6 +315,24 @@ public class QSFragmentTest extends SysuiBaseFragmentTest {
verify(mQuickQSPanelController).setCollapseExpandAction(action);
}
@Test
public void setOverScrollAmount_setsTranslationOnView() {
QSFragment fragment = resumeAndGetFragment();
fragment.setOverScrollAmount(123);
assertThat(mQsFragmentView.getTranslationY()).isEqualTo(123);
}
@Test
public void setOverScrollAmount_beforeViewCreated_translationIsNotSet() {
QSFragment fragment = getFragment();
fragment.setOverScrollAmount(123);
assertThat(mQsFragmentView.getTranslationY()).isEqualTo(0);
}
@Override
protected Fragment instantiate(Context context, String className, Bundle arguments) {
MockitoAnnotations.initMocks(this);