Skip to content
This repository was archived by the owner on Jul 22, 2024. It is now read-only.

Commit f48ca97

Browse files
authored
Correctly release SendTabDialog in onDestroy (#2928)
1 parent 9688e63 commit f48ca97

File tree

4 files changed

+17
-2
lines changed

4 files changed

+17
-2
lines changed

app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/NavigationBarWidget.java

+6-1
Original file line numberDiff line numberDiff line change
@@ -374,8 +374,13 @@ public void releaseWidget() {
374374
}
375375

376376
detachFromWindow();
377-
378377
mAttachedWindow = null;
378+
379+
if (mSendTabDialog != null && !mSendTabDialog.isReleased()) {
380+
mSendTabDialog.releaseWidget();
381+
}
382+
mSendTabDialog = null;
383+
379384
super.releaseWidget();
380385
}
381386

app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/TabsWidget.java

+4
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,10 @@ public void attachToWindow(WindowWidget aWindow) {
159159

160160
@Override
161161
public void releaseWidget() {
162+
if (mSendTabDialog != null && !mSendTabDialog.isReleased()) {
163+
mSendTabDialog.releaseWidget();
164+
}
165+
mSendTabDialog = null;
162166
super.releaseWidget();
163167
}
164168

app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/Windows.java

+4
Original file line numberDiff line numberDiff line change
@@ -459,6 +459,10 @@ public void onResume() {
459459
}
460460

461461
public void onDestroy() {
462+
if (mTabsWidget != null && !mTabsWidget.isReleased()) {
463+
mTabsWidget.releaseWidget();
464+
mTabsWidget = null;
465+
}
462466
mDelegate = null;
463467
for (WindowWidget window: mRegularWindows) {
464468
window.close();

app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/dialogs/UIDialog.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@ private void initialize() {
3333

3434
@Override
3535
public void releaseWidget() {
36-
mWidgetManager.removeWorldClickListener(this);
36+
if (mWidgetManager != null) {
37+
mWidgetManager.removeWorldClickListener(this);
38+
}
3739
mDialogs.remove(this);
3840
super.releaseWidget();
3941
}

0 commit comments

Comments
 (0)