Merge "Fix null pointer exception when updating action bar shadow." into oc-mr1-dev
This commit is contained in:
@@ -121,7 +121,7 @@ public class ActionBarShadowController implements LifecycleObserver, OnStart, On
|
||||
final boolean shouldShowShadow = view.canScrollVertically(-1);
|
||||
if (mAnchorView != null) {
|
||||
mAnchorView.setElevation(shouldShowShadow ? ELEVATION_HIGH : ELEVATION_LOW);
|
||||
} else {
|
||||
} else if (mActivity != null) { // activity can become null when running monkey
|
||||
final ActionBar actionBar = mActivity.getActionBar();
|
||||
if (actionBar != null) {
|
||||
actionBar.setElevation(shouldShowShadow ? ELEVATION_HIGH : ELEVATION_LOW);
|
||||
|
@@ -104,4 +104,15 @@ public class ActionBarShadowControllerTest {
|
||||
verify(mRecyclerView, times(2)).addOnScrollListener(any());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onScrolled_nullAnchorViewAndActivity_shouldNotCrash() {
|
||||
final Activity activity = null;
|
||||
final ActionBarShadowController controller =
|
||||
ActionBarShadowController.attachToRecyclerView(activity, mLifecycle, mRecyclerView);
|
||||
|
||||
// Scroll
|
||||
controller.mScrollChangeWatcher.onScrolled(mRecyclerView, 10 /* dx */, 10 /* dy */);
|
||||
// no crash
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user