Fix preventable NPE & probable others

Test: treehugger
Bug: 153698788
Change-Id: I77bab3f8db7dc633784a2bbb03c57125726c1ffe
This commit is contained in:
Mady Mellor
2020-04-10 13:40:05 -07:00
parent 4cbb22353a
commit 2dce0fe593

View File

@@ -1143,7 +1143,8 @@ public class BubbleStackView extends FrameLayout {
if (show
&& mShouldShowManageEducation
&& mManageEducationView.getVisibility() != VISIBLE
&& mIsExpanded) {
&& mIsExpanded
&& mExpandedBubble.getExpandedView() != null) {
mManageEducationView.setAlpha(0);
mManageEducationView.setVisibility(VISIBLE);
mManageEducationView.post(() -> {
@@ -1848,7 +1849,8 @@ public class BubbleStackView extends FrameLayout {
Log.d(TAG, "updateExpandedBubble()");
}
mExpandedViewContainer.removeAllViews();
if (mIsExpanded && mExpandedBubble != null) {
if (mIsExpanded && mExpandedBubble != null
&& mExpandedBubble.getExpandedView() != null) {
BubbleExpandedView bev = mExpandedBubble.getExpandedView();
mExpandedViewContainer.addView(bev);
bev.populateExpandedView();
@@ -1868,7 +1870,7 @@ public class BubbleStackView extends FrameLayout {
if (!mExpandedViewYAnim.isRunning()) {
// We're not animating so set the value
mExpandedViewContainer.setTranslationY(y);
if (mExpandedBubble != null) {
if (mExpandedBubble != null && mExpandedBubble.getExpandedView() != null) {
mExpandedBubble.getExpandedView().updateView();
}
} else {
@@ -1906,7 +1908,7 @@ public class BubbleStackView extends FrameLayout {
}
private void updatePointerPosition() {
if (mExpandedBubble == null) {
if (mExpandedBubble == null || mExpandedBubble.getExpandedView() == null) {
return;
}
int index = getBubbleIndex(mExpandedBubble);
@@ -1988,7 +1990,7 @@ public class BubbleStackView extends FrameLayout {
* a back key down/up event pair is forwarded to the bubble Activity.
*/
boolean performBackPressIfNeeded() {
if (!isExpanded() || mExpandedBubble == null) {
if (!isExpanded() || mExpandedBubble == null || mExpandedBubble.getExpandedView() == null) {
return false;
}
return mExpandedBubble.getExpandedView().performBackPressIfNeeded();