diff options
author | Sam Mortimer <sam@mortimer.me.uk> | 2017-09-19 15:29:24 -0700 |
---|---|---|
committer | Sam Mortimer <sam@mortimer.me.uk> | 2017-10-09 16:50:05 +0000 |
commit | 2041fae2c5f9f4f0f5837ed9e15c2126d195d56c (patch) | |
tree | 1c052b178508b4eaad4eb2aa1c1a1e84d20c8777 | |
parent | 83a7945dd5c8361f9f4a8747dbb9cab13fa2090a (diff) | |
download | lineage-sdk-2041fae2c5f9f4f0f5837ed9e15c2126d195d56c.tar.gz lineage-sdk-2041fae2c5f9f4f0f5837ed9e15c2126d195d56c.tar.bz2 lineage-sdk-2041fae2c5f9f4f0f5837ed9e15c2126d195d56c.zip |
Remove dependency on framework settings getDelimitedStringAsList()
The *DelimitedString* settings methods that we patched into
frameworks/base in <= 14.1 aren't used by anything else so move
the minimum code needed here thereby allowing us not to have to
add the frameworks commit to 15.0.
Link to previous code that was in 14.1:
https://review.lineageos.org/#/c/65703/
Change-Id: I3ec10e406e642ee90f5c2dbd89e598ea97682f67
-rw-r--r-- | packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageSettingsProvider.java | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageSettingsProvider.java b/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageSettingsProvider.java index d481378a..445a5d15 100644 --- a/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageSettingsProvider.java +++ b/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageSettingsProvider.java @@ -50,10 +50,12 @@ import org.lineageos.internal.util.QSUtils; import lineageos.providers.LineageSettings; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.regex.Pattern; /** * The LineageSettingsProvider serves as a {@link ContentProvider} for Lineage specific settings @@ -226,8 +228,8 @@ public class LineageSettingsProvider extends ContentProvider { + settingsValue); } - final List<String> tiles = Settings.Secure.getDelimitedStringAsList( - contentResolver, settingsKey, ","); + final List<String> tiles = delimitedStringToList( + Settings.Secure.getString(contentResolver, settingsKey), ","); if (!tiles.contains(QSConstants.TILE_DND)) { tiles.add(QSConstants.TILE_DND); @@ -284,6 +286,20 @@ public class LineageSettingsProvider extends ContentProvider { return rowsInserted; } + private List<String> delimitedStringToList(String s, String delimiter) { + List<String> list = new ArrayList<String>(); + if (!TextUtils.isEmpty(s)) { + final String[] array = TextUtils.split(s, Pattern.quote(delimiter)); + for (String item : array) { + if (TextUtils.isEmpty(item)) { + continue; + } + list.add(item); + } + } + return list; + } + /** * Performs cleanup for the removed user. * @param userId The id of the user that is removed. |