diff options
author | Richard MacGregor <rmacgregor@cyngn.com> | 2015-05-11 16:43:50 -0700 |
---|---|---|
committer | Clark Scheff <clark@cyngn.com> | 2015-10-27 18:19:07 -0700 |
commit | 58f5b46439cc714a25400c42110423d4f73aa9c0 (patch) | |
tree | 7887b1dd49307720dbf65a9173f1557bcb4e4894 | |
parent | b5ba6f4852f8747d413395f694f21716ec60f282 (diff) | |
download | frameworks_base-58f5b46439cc714a25400c42110423d4f73aa9c0.zip frameworks_base-58f5b46439cc714a25400c42110423d4f73aa9c0.tar.gz frameworks_base-58f5b46439cc714a25400c42110423d4f73aa9c0.tar.bz2 |
[1/2] Recognized multiple wallpapers in theme
Add functions into ThemeUtils for returning paths to all wallpapers
found in theme assets.
Change-Id: If0c9a2038fe8ea3dab83020962b875678e39546a
-rw-r--r-- | core/java/android/content/pm/ThemeUtils.java | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/core/java/android/content/pm/ThemeUtils.java b/core/java/android/content/pm/ThemeUtils.java index ac4d7ee..926c2e3 100644 --- a/core/java/android/content/pm/ThemeUtils.java +++ b/core/java/android/content/pm/ThemeUtils.java @@ -99,6 +99,10 @@ public class ThemeUtils { public static final String SYSTEM_NOTIFICATIONS_PATH = SYSTEM_MEDIA_PATH + File.separator + "notifications"; + // path to asset lockscreen and wallpapers directory + public static final String LOCKSCREEN_WALLPAPER_PATH = "lockscreen"; + public static final String WALLPAPER_PATH = "wallpapers"; + private static final String MEDIA_CONTENT_URI = "content://media/internal/audio/media"; // Constants for theme change broadcast @@ -528,17 +532,29 @@ public class ThemeUtils { } public static String getLockscreenWallpaperPath(AssetManager assetManager) throws IOException { - String[] assets = assetManager.list("lockscreen"); + String[] assets = assetManager.list(LOCKSCREEN_WALLPAPER_PATH); String asset = getFirstNonEmptyAsset(assets); if (asset == null) return null; - return "lockscreen/" + asset; + return LOCKSCREEN_WALLPAPER_PATH + File.separator + asset; } public static String getWallpaperPath(AssetManager assetManager) throws IOException { - String[] assets = assetManager.list("wallpapers"); + String[] assets = assetManager.list(WALLPAPER_PATH); String asset = getFirstNonEmptyAsset(assets); if (asset == null) return null; - return "wallpapers/" + asset; + return WALLPAPER_PATH + File.separator + asset; + } + + public static List<String> getWallpaperPathList(AssetManager assetManager) + throws IOException { + List<String> wallpaperList = new ArrayList<String>(); + String[] assets = assetManager.list(WALLPAPER_PATH); + for (String asset : assets) { + if (!TextUtils.isEmpty(asset)) { + wallpaperList.add(WALLPAPER_PATH + File.separator + asset); + } + } + return wallpaperList; } // Returns the first non-empty asset name. Empty assets can occur if the APK is built @@ -548,7 +564,7 @@ public class ThemeUtils { if (assets == null) return null; String filename = null; for(String asset : assets) { - if (!asset.isEmpty()) { + if (!TextUtils.isEmpty(asset)) { filename = asset; break; } |