Fix NPE in onListFragmentScrollStateChange
Ensure that view passed into DialerUtils.hideInputMethod is
never null (since mParentLayout refers to the main content view, it
should never be null)
Also rename parentLayout to mParentLayout
Bug: 17797827
Change-Id: I2ac9864138776fcdaea5b7d2df52a82d31911039
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java
index 8c5b9c5..7071e51 100644
--- a/src/com/android/dialer/DialtactsActivity.java
+++ b/src/com/android/dialer/DialtactsActivity.java
@@ -135,7 +135,7 @@
private static final int ACTIVITY_REQUEST_CODE_VOICE_SEARCH = 1;
- private FrameLayout parentLayout;
+ private FrameLayout mParentLayout;
/**
* Fragment containing the dialpad that slides into view
@@ -421,8 +421,8 @@
mSlideOut.setAnimationListener(mSlideOutListener);
- parentLayout = (FrameLayout) findViewById(R.id.dialtacts_mainlayout);
- parentLayout.setOnDragListener(new LayoutOnDragListener());
+ mParentLayout = (FrameLayout) findViewById(R.id.dialtacts_mainlayout);
+ mParentLayout.setOnDragListener(new LayoutOnDragListener());
floatingActionButtonContainer.getViewTreeObserver().addOnGlobalLayoutListener(
new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
@@ -433,7 +433,7 @@
return;
}
observer.removeOnGlobalLayoutListener(this);
- int screenWidth = parentLayout.getWidth();
+ int screenWidth = mParentLayout.getWidth();
mFloatingActionButtonController.setScreenWidth(screenWidth);
updateFloatingActionButtonControllerAlignment(false /* animate */);
}
@@ -933,7 +933,7 @@
hideDialpadFragment(true, false);
} else if (isInSearchUi()) {
exitSearchUi();
- DialerUtils.hideInputMethod(parentLayout);
+ DialerUtils.hideInputMethod(mParentLayout);
} else {
super.onBackPressed();
}
@@ -945,7 +945,7 @@
private boolean maybeExitSearchUi() {
if (isInSearchUi() && TextUtils.isEmpty(mSearchQuery)) {
exitSearchUi();
- DialerUtils.hideInputMethod(parentLayout);
+ DialerUtils.hideInputMethod(mParentLayout);
return true;
}
return false;
@@ -982,7 +982,7 @@
public void onListFragmentScrollStateChange(int scrollState) {
if (scrollState == OnScrollListener.SCROLL_STATE_TOUCH_SCROLL) {
hideDialpadFragment(true, false);
- DialerUtils.hideInputMethod(getCurrentFocus());
+ DialerUtils.hideInputMethod(mParentLayout);
}
}