From fadd9365c6ea6c44482dc9f34adbe4bbeb31ca12 Mon Sep 17 00:00:00 2001 From: Mark Finkle Date: Sat, 3 Oct 2015 00:36:04 -0400 Subject: [PATCH] Bug 1210243 - Cleanup click handlers in Fragments/Panels r=margaret --- mobile/android/base/home/HistoryPanel.java | 8 ++++++++ mobile/android/base/home/ReadingListPanel.java | 5 +++++ mobile/android/base/home/RecentTabsPanel.java | 5 +++++ .../base/home/RemoteTabsExpandableListFragment.java | 6 ++++++ .../android/base/home/RemoteTabsSplitPlaneFragment.java | 6 ++++++ 5 files changed, 30 insertions(+) diff --git a/mobile/android/base/home/HistoryPanel.java b/mobile/android/base/home/HistoryPanel.java index 3f86fc8b9378..8a6c8aadcfee 100644 --- a/mobile/android/base/home/HistoryPanel.java +++ b/mobile/android/base/home/HistoryPanel.java @@ -237,6 +237,14 @@ public class HistoryPanel extends HomeFragment { @Override public void onDestroyView() { super.onDestroyView(); + + // Discard any additional item clicks on the list as the + // panel is getting destroyed (bug 1210243). + if (mRangeList != null) { + mRangeList.setOnItemClickListener(null); + } + mList.setOnItemClickListener(null); + mRangeList = null; mList = null; mEmptyView = null; diff --git a/mobile/android/base/home/ReadingListPanel.java b/mobile/android/base/home/ReadingListPanel.java index 43ff07cf314e..46287d42ff50 100644 --- a/mobile/android/base/home/ReadingListPanel.java +++ b/mobile/android/base/home/ReadingListPanel.java @@ -125,6 +125,11 @@ public class ReadingListPanel extends HomeFragment { @Override public void onDestroyView() { super.onDestroyView(); + + // Discard any additional item clicks on the list as the + // panel is getting destroyed (bug 1210243). + mList.setOnItemClickListener(null); + mList = null; mTopView = null; mEmptyView = null; diff --git a/mobile/android/base/home/RecentTabsPanel.java b/mobile/android/base/home/RecentTabsPanel.java index e8999dc42f82..c90b66b47c6e 100644 --- a/mobile/android/base/home/RecentTabsPanel.java +++ b/mobile/android/base/home/RecentTabsPanel.java @@ -166,6 +166,11 @@ public class RecentTabsPanel extends HomeFragment @Override public void onDestroyView() { super.onDestroyView(); + + // Discard any additional item clicks on the list as the + // panel is getting destroyed (bug 1210243). + mList.setOnItemClickListener(null); + mList = null; mEmptyView = null; diff --git a/mobile/android/base/home/RemoteTabsExpandableListFragment.java b/mobile/android/base/home/RemoteTabsExpandableListFragment.java index 3ccfd06f101f..84687fb8969c 100644 --- a/mobile/android/base/home/RemoteTabsExpandableListFragment.java +++ b/mobile/android/base/home/RemoteTabsExpandableListFragment.java @@ -125,6 +125,12 @@ public class RemoteTabsExpandableListFragment extends RemoteTabsBaseFragment { @Override public void onDestroyView() { super.onDestroyView(); + + // Discard any additional item clicks on the list as the + // panel is getting destroyed (bug 1210243). + mList.setOnChildClickListener(null); + mList.setOnGroupClickListener(null); + mList = null; mEmptyView = null; } diff --git a/mobile/android/base/home/RemoteTabsSplitPlaneFragment.java b/mobile/android/base/home/RemoteTabsSplitPlaneFragment.java index ffa0827db681..071f9babb019 100644 --- a/mobile/android/base/home/RemoteTabsSplitPlaneFragment.java +++ b/mobile/android/base/home/RemoteTabsSplitPlaneFragment.java @@ -140,6 +140,12 @@ public class RemoteTabsSplitPlaneFragment extends RemoteTabsBaseFragment { @Override public void onDestroyView() { super.onDestroyView(); + + // Discard any additional item clicks on the list as the + // panel is getting destroyed (bug 1210243). + mClientList.setOnItemClickListener(null); + mTabList.setOnItemClickListener(null); + mClientList = null; mTabList = null; mEmptyView = null;