diff options
author | John Reck <jreck@google.com> | 2012-03-08 13:31:51 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-03-08 13:31:51 -0800 |
commit | 0967caab7114a455b5e548e29158a0c2cf766c84 (patch) | |
tree | c8ed7bbb8385ce33985d8c684de28d171928220d /src | |
parent | b18756768d7d24be572e14808bd3602a4a1ffa1d (diff) | |
parent | d1d87315942218816a509798a299612ed674c21c (diff) | |
download | packages_apps_Browser-0967caab7114a455b5e548e29158a0c2cf766c84.tar.gz packages_apps_Browser-0967caab7114a455b5e548e29158a0c2cf766c84.tar.bz2 packages_apps_Browser-0967caab7114a455b5e548e29158a0c2cf766c84.zip |
Merge "Remove WebSettings from BrowserSettings in destroy"
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/browser/BrowserSettings.java | 11 | ||||
-rw-r--r-- | src/com/android/browser/BrowserWebView.java | 6 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/com/android/browser/BrowserSettings.java b/src/com/android/browser/BrowserSettings.java index 4f4bb13d2..4fe93d6ed 100644 --- a/src/com/android/browser/BrowserSettings.java +++ b/src/com/android/browser/BrowserSettings.java @@ -161,6 +161,17 @@ public class BrowserSettings implements OnSharedPreferenceChangeListener, } } + public void stopManagingSettings(WebSettings settings) { + Iterator<WeakReference<WebSettings>> iter = mManagedSettings.iterator(); + while (iter.hasNext()) { + WeakReference<WebSettings> ref = iter.next(); + if (ref.get() == settings) { + iter.remove(); + return; + } + } + } + private Runnable mSetup = new Runnable() { @Override diff --git a/src/com/android/browser/BrowserWebView.java b/src/com/android/browser/BrowserWebView.java index 7981d8ace..49d1a2e90 100644 --- a/src/com/android/browser/BrowserWebView.java +++ b/src/com/android/browser/BrowserWebView.java @@ -124,4 +124,10 @@ public class BrowserWebView extends WebView implements WebViewClassic.TitleBarDe return false; } + @Override + public void destroy() { + BrowserSettings.getInstance().stopManagingSettings(getSettings()); + super.destroy(); + } + } |