diff --git a/mobile/android/base/GeckoPreferences.java b/mobile/android/base/GeckoPreferences.java index a867b240321f..9c02f7ac830d 100644 --- a/mobile/android/base/GeckoPreferences.java +++ b/mobile/android/base/GeckoPreferences.java @@ -676,9 +676,7 @@ public class GeckoPreferences // Initialize preferences by requesting the preference values from Gecko private int getGeckoPreferences(final PreferenceGroup screen, ArrayList prefs) { - JSONArray jsonPrefs = new JSONArray(prefs); - - return PrefsHelper.getPrefs(jsonPrefs, new PrefsHelper.PrefHandlerBase() { + return PrefsHelper.getPrefs(prefs, new PrefsHelper.PrefHandlerBase() { private Preference getField(String prefName) { return screen.findPreference(prefName); } diff --git a/mobile/android/base/PrefsHelper.java b/mobile/android/base/PrefsHelper.java index d2a1538a4403..2e5211c38ab4 100644 --- a/mobile/android/base/PrefsHelper.java +++ b/mobile/android/base/PrefsHelper.java @@ -13,6 +13,7 @@ import org.json.JSONObject; import android.util.Log; +import java.util.ArrayList; import java.util.HashMap; import java.util.Map; @@ -40,6 +41,14 @@ public final class PrefsHelper { return getPrefs(prefs, callback); } + public static int getPrefs(ArrayList prefNames, PrefHandler callback) { + JSONArray prefs = new JSONArray(); + for (String p : prefNames) { + prefs.put(p); + } + return getPrefs(prefs, callback); + } + public static int getPrefs(JSONArray prefNames, PrefHandler callback) { int requestId; synchronized (PrefsHelper.class) {