diff options
Diffstat (limited to 'src/com/android/settings/DreamBackend.java')
-rw-r--r-- | src/com/android/settings/DreamBackend.java | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/com/android/settings/DreamBackend.java b/src/com/android/settings/DreamBackend.java index 7effe4b..a866174 100644 --- a/src/com/android/settings/DreamBackend.java +++ b/src/com/android/settings/DreamBackend.java @@ -26,6 +26,7 @@ import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.content.pm.PackageManager.NameNotFoundException; +import android.content.pm.ServiceInfo; import android.content.res.Resources; import android.content.res.TypedArray; import android.content.res.XmlResourceParser; @@ -116,6 +117,22 @@ public class DreamBackend { } } + public CharSequence getActiveDreamName() { + ComponentName cn = getActiveDream(); + if (cn != null) { + PackageManager pm = mContext.getPackageManager(); + try { + ServiceInfo ri = pm.getServiceInfo(cn, 0); + if (ri != null) { + return ri.loadLabel(pm); + } + } catch (PackageManager.NameNotFoundException exc) { + return null; // uninstalled? + } + } + return null; + } + public boolean isEnabled() { return getBoolean(SCREENSAVER_ENABLED); } |