diff options
-rw-r--r-- | core/java/android/preference/RingtonePreference.java | 28 | ||||
-rw-r--r-- | core/res/res/values/attrs.xml | 3 | ||||
-rw-r--r-- | media/java/android/media/RingtoneManager.java | 10 |
3 files changed, 41 insertions, 0 deletions
diff --git a/core/java/android/preference/RingtonePreference.java b/core/java/android/preference/RingtonePreference.java index a76bb09..81c0595 100644 --- a/core/java/android/preference/RingtonePreference.java +++ b/core/java/android/preference/RingtonePreference.java @@ -48,6 +48,7 @@ public class RingtonePreference extends Preference implements private int mRingtoneType; private boolean mShowDefault; private boolean mShowSilent; + private int mDialogStyle; private int mRequestCode; @@ -62,6 +63,8 @@ public class RingtonePreference extends Preference implements true); mShowSilent = a.getBoolean(com.android.internal.R.styleable.RingtonePreference_showSilent, true); + mDialogStyle = a.getResourceId( + com.android.internal.R.styleable.RingtonePreference_dialogStyle, 0); a.recycle(); } @@ -136,6 +139,27 @@ public class RingtonePreference extends Preference implements mShowSilent = showSilent; } + /** + * Returns the resource id style of the ringtone dialog. + * + * @return The resource id of the style + * @hide + */ + public int getDialogStyle() { + return mDialogStyle; + } + + /** + * Sets the resource id style of the ringtone dialog. + * + * @param dialogStyle The resource id of the style. + * @see RingtoneManager#EXTRA_RINGTONE_DIALOG_THEME + * @hide + */ + public void setDialogStyle(int dialogStyle) { + mDialogStyle = dialogStyle; + } + @Override protected void onClick() { // Launch the ringtone picker @@ -166,6 +190,10 @@ public class RingtonePreference extends Preference implements ringtonePickerIntent.putExtra(RingtoneManager.EXTRA_RINGTONE_DEFAULT_URI, RingtoneManager.getDefaultUri(getRingtoneType())); } + if (mDialogStyle != 0) { + ringtonePickerIntent.putExtra(RingtoneManager.EXTRA_RINGTONE_DIALOG_THEME, + mDialogStyle); + } ringtonePickerIntent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, mShowSilent); ringtonePickerIntent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, mRingtoneType); diff --git a/core/res/res/values/attrs.xml b/core/res/res/values/attrs.xml index 67abe8d..4e220b1 100644 --- a/core/res/res/values/attrs.xml +++ b/core/res/res/values/attrs.xml @@ -6837,6 +6837,9 @@ i <attr name="showDefault" format="boolean" /> <!-- Whether to show an item for 'Silent'. --> <attr name="showSilent" format="boolean" /> + <!-- The style of the ringtone dialog. + @hide --> + <attr name="dialogStyle" format="reference" /> </declare-styleable> <!-- Base attributes available to VolumePreference. --> diff --git a/media/java/android/media/RingtoneManager.java b/media/java/android/media/RingtoneManager.java index 025029e..01cae5c 100644 --- a/media/java/android/media/RingtoneManager.java +++ b/media/java/android/media/RingtoneManager.java @@ -184,6 +184,16 @@ public class RingtoneManager { */ public static final String EXTRA_RINGTONE_PICKED_URI = "android.intent.extra.ringtone.PICKED_URI"; + + /** + * Set the resource id theme to use for the dialog picker activity.<br/> + * The default theme is <code>com.android.internal.R.Theme_Holo_Dialog_Alert</code>. + * + * @see #ACTION_RINGTONE_PICKER + * @hide + */ + public static final String EXTRA_RINGTONE_DIALOG_THEME = + "android.intent.extra.ringtone.DIALOG_THEME"; // Make sure the column ordering and then ..._COLUMN_INDEX are in sync |