diff options
-rw-r--r-- | AndroidManifest.xml | 1 | ||||
-rw-r--r-- | res/layout/data_usage_summary.xml | 5 | ||||
-rw-r--r-- | res/layout/manage_applications_apps.xml | 5 | ||||
-rw-r--r-- | res/values/strings.xml | 3 | ||||
-rw-r--r-- | res/xml/other_sound_settings.xml | 8 | ||||
-rw-r--r-- | src/com/android/settings/AppHeader.java | 28 | ||||
-rw-r--r-- | src/com/android/settings/DataUsageSummary.java | 10 | ||||
-rw-r--r-- | src/com/android/settings/applications/AppInfoBase.java | 3 | ||||
-rw-r--r-- | src/com/android/settings/applications/AppInfoWithHeader.java | 4 | ||||
-rw-r--r-- | src/com/android/settings/applications/ManageApplications.java | 11 | ||||
-rw-r--r-- | src/com/android/settings/applications/ProcessStatsDetail.java | 2 | ||||
-rw-r--r-- | src/com/android/settings/fuelgauge/PowerUsageDetail.java | 2 | ||||
-rw-r--r-- | src/com/android/settings/notification/AppNotificationSettings.java | 2 | ||||
-rw-r--r-- | src/com/android/settings/notification/OtherSoundSettings.java | 5 |
14 files changed, 64 insertions, 25 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml index b4f5a9d..12551d0 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -1852,7 +1852,6 @@ android:label="@string/wifi_display_settings_title" android:taskAffinity=""> <intent-filter android:priority="1"> - <action android:name="android.settings.WIFI_DISPLAY_SETTINGS" /> <action android:name="android.settings.CAST_SETTINGS" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> diff --git a/res/layout/data_usage_summary.xml b/res/layout/data_usage_summary.xml index 6634105..8875004 100644 --- a/res/layout/data_usage_summary.xml +++ b/res/layout/data_usage_summary.xml @@ -26,6 +26,11 @@ android:orientation="vertical" android:background="@drawable/default_preference_background"> + <FrameLayout + android:id="@+id/pinned_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + <include layout="@layout/tab_widget" /> <!-- give an empty content area to make tabhost happy --> diff --git a/res/layout/manage_applications_apps.xml b/res/layout/manage_applications_apps.xml index 044cdb4..e4ec871 100644 --- a/res/layout/manage_applications_apps.xml +++ b/res/layout/manage_applications_apps.xml @@ -30,6 +30,11 @@ android:orientation="vertical" android:visibility="gone"> + <FrameLayout + android:id="@+id/pinned_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + <FrameLayout android:layout_width="match_parent" android:layout_height="0px" android:layout_weight="1"> diff --git a/res/values/strings.xml b/res/values/strings.xml index ce56b63..4ff5090 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -5969,6 +5969,9 @@ <!-- Sound & notification > Other sounds: Title for the option enabling touch sounds for screen locking sounds. [CHAR LIMIT=30] --> <string name="screen_locking_sounds_title">Screen locking sounds</string> + <!-- Sound & notification > Other sounds: Title for the option enabling charging sounds. [CHAR LIMIT=30] --> + <string name="charging_sounds_title">Charging sounds</string> + <!-- Sound & notification > Other sounds: Title for the option enabling docking sounds. [CHAR LIMIT=30] --> <string name="docking_sounds_title">Docking sounds</string> diff --git a/res/xml/other_sound_settings.xml b/res/xml/other_sound_settings.xml index 88c4130..57a302b 100644 --- a/res/xml/other_sound_settings.xml +++ b/res/xml/other_sound_settings.xml @@ -35,6 +35,14 @@ android:switchTextOn="" android:persistent="false" /> + <!-- Charging sounds --> + <SwitchPreference + android:key="charging_sounds" + android:title="@string/charging_sounds_title" + android:switchTextOff="" + android:switchTextOn="" + android:persistent="false" /> + <!-- Docking sounds --> <SwitchPreference android:key="docking_sounds" diff --git a/src/com/android/settings/AppHeader.java b/src/com/android/settings/AppHeader.java index 2f3678b..71c2255 100644 --- a/src/com/android/settings/AppHeader.java +++ b/src/com/android/settings/AppHeader.java @@ -28,18 +28,27 @@ import android.widget.TextView; public class AppHeader { - public static void createAppHeader(final Activity activity, Drawable icon, CharSequence label, - final Intent settingsIntent) { - createAppHeader(activity, icon, label, settingsIntent, 0); + public static void createAppHeader(SettingsPreferenceFragment fragment, Drawable icon, + CharSequence label, final Intent settingsIntent) { + createAppHeader(fragment, icon, label, settingsIntent, 0); } - public static void createAppHeader(final Activity activity, Drawable icon, CharSequence label, - final Intent settingsIntent, int tintColorRes) { - final View content = activity.findViewById(R.id.main_content); - final ViewGroup contentParent = (ViewGroup) content.getParent(); + public static void createAppHeader(Activity activity, Drawable icon, CharSequence label, + final Intent settingsIntent, ViewGroup pinnedHeader) { final View bar = activity.getLayoutInflater().inflate(R.layout.app_header, - contentParent, false); + pinnedHeader, false); + setupHeaderView(activity, icon, label, settingsIntent, 0, bar); + pinnedHeader.addView(bar); + } + + public static void createAppHeader(SettingsPreferenceFragment fragment, Drawable icon, + CharSequence label, Intent settingsIntent, int tintColorRes) { + View bar = fragment.setPinnedHeaderView(R.layout.app_header); + setupHeaderView(fragment.getActivity(), icon, label, settingsIntent, tintColorRes, bar); + } + private static View setupHeaderView(final Activity activity, Drawable icon, CharSequence label, + final Intent settingsIntent, int tintColorRes, View bar) { final ImageView appIcon = (ImageView) bar.findViewById(R.id.app_icon); appIcon.setImageDrawable(icon); if (tintColorRes != 0) { @@ -61,7 +70,8 @@ public class AppHeader { } }); } - contentParent.addView(bar, 0); + + return bar; } } diff --git a/src/com/android/settings/DataUsageSummary.java b/src/com/android/settings/DataUsageSummary.java index 27a486c..7eec3df 100644 --- a/src/com/android/settings/DataUsageSummary.java +++ b/src/com/android/settings/DataUsageSummary.java @@ -112,6 +112,7 @@ import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.BaseAdapter; import android.widget.Button; +import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.ListView; @@ -120,12 +121,12 @@ import android.widget.ProgressBar; import android.widget.Spinner; import android.widget.Switch; import android.widget.TabHost; -import android.widget.Toast; import android.widget.TabHost.OnTabChangeListener; import android.widget.TabHost.TabContentFactory; import android.widget.TabHost.TabSpec; import android.widget.TabWidget; import android.widget.TextView; +import android.widget.Toast; import com.android.internal.logging.MetricsLogger; import com.android.internal.telephony.PhoneConstants; @@ -464,12 +465,12 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable mListView.setOnItemClickListener(mListListener); mListView.setAdapter(mAdapter); - showRequestedAppIfNeeded(); + showRequestedAppIfNeeded(view); return view; } - private void showRequestedAppIfNeeded() { + private void showRequestedAppIfNeeded(View rootView) { if (mShowAppImmediatePkg == null) { return; } @@ -482,7 +483,8 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable final UidDetail detail = mUidDetailProvider.getUidDetail(app.key, true); // When we are going straight to an app then we are coming from App Info and want // a header at the top. - AppHeader.createAppHeader(getActivity(), detail.icon, detail.label, null); + FrameLayout pinnedHeader = (FrameLayout) rootView.findViewById(R.id.pinned_header); + AppHeader.createAppHeader(getActivity(), detail.icon, detail.label, null, pinnedHeader); AppDetailsFragment.show(DataUsageSummary.this, app, detail.label, false); } catch (NameNotFoundException e) { Log.w(TAG, "Could not find " + mShowAppImmediatePkg, e); diff --git a/src/com/android/settings/applications/AppInfoBase.java b/src/com/android/settings/applications/AppInfoBase.java index 2d402e5..e42f246 100644 --- a/src/com/android/settings/applications/AppInfoBase.java +++ b/src/com/android/settings/applications/AppInfoBase.java @@ -37,12 +37,13 @@ import android.util.Log; import com.android.settings.InstrumentedPreferenceFragment; import com.android.settings.SettingsActivity; +import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; import com.android.settings.applications.ApplicationsState.AppEntry; import java.util.ArrayList; -public abstract class AppInfoBase extends InstrumentedPreferenceFragment +public abstract class AppInfoBase extends SettingsPreferenceFragment implements ApplicationsState.Callbacks { public static final String ARG_PACKAGE_NAME = "package"; diff --git a/src/com/android/settings/applications/AppInfoWithHeader.java b/src/com/android/settings/applications/AppInfoWithHeader.java index f7546f2..f8feaf1 100644 --- a/src/com/android/settings/applications/AppInfoWithHeader.java +++ b/src/com/android/settings/applications/AppInfoWithHeader.java @@ -34,7 +34,7 @@ public abstract class AppInfoWithHeader extends AppInfoBase { } mCreated = true; if (mPackageInfo == null) return; - AppHeader.createAppHeader(getActivity(), mPackageInfo.applicationInfo.loadIcon(mPm), - mPackageInfo.applicationInfo.loadLabel(mPm), null); + AppHeader.createAppHeader(this, mPackageInfo.applicationInfo.loadIcon(mPm), + mPackageInfo.applicationInfo.loadLabel(mPm), null, 0); } } diff --git a/src/com/android/settings/applications/ManageApplications.java b/src/com/android/settings/applications/ManageApplications.java index b55cc44..3107efd 100644 --- a/src/com/android/settings/applications/ManageApplications.java +++ b/src/com/android/settings/applications/ManageApplications.java @@ -45,6 +45,7 @@ import android.widget.ArrayAdapter; import android.widget.BaseAdapter; import android.widget.Filter; import android.widget.Filterable; +import android.widget.FrameLayout; import android.widget.ListView; import android.widget.Spinner; @@ -298,15 +299,14 @@ public class ManageApplications extends InstrumentedFragment private void createHeader() { Activity activity = getActivity(); - View content = activity.findViewById(R.id.main_content); - ViewGroup contentParent = (ViewGroup) content.getParent(); + FrameLayout pinnedHeader = (FrameLayout) mRootView.findViewById(R.id.pinned_header); mSpinnerHeader = (ViewGroup) activity.getLayoutInflater() - .inflate(R.layout.apps_filter_spinner, contentParent, false); + .inflate(R.layout.apps_filter_spinner, pinnedHeader, false); mFilterSpinner = (Spinner) mSpinnerHeader.findViewById(R.id.filter_spinner); mFilterAdapter = new FilterSpinnerAdapter(this); mFilterSpinner.setAdapter(mFilterAdapter); mFilterSpinner.setOnItemSelectedListener(this); - contentParent.addView(mSpinnerHeader, 0); + pinnedHeader.addView(mSpinnerHeader, 0); mFilterAdapter.enableFilter(getDefaultFilter()); if (mListType == LIST_TYPE_MAIN || mListType == LIST_TYPE_NOTIFICATION) { @@ -333,7 +333,8 @@ public class ManageApplications extends InstrumentedFragment public void onViewCreated(View view, Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); if (mListType == LIST_TYPE_STORAGE) { - AppHeader.createAppHeader(getActivity(), null, mVolumeName, null); + FrameLayout pinnedHeader = (FrameLayout) mRootView.findViewById(R.id.pinned_header); + AppHeader.createAppHeader(getActivity(), null, mVolumeName, null, pinnedHeader); } } diff --git a/src/com/android/settings/applications/ProcessStatsDetail.java b/src/com/android/settings/applications/ProcessStatsDetail.java index 191e7e9..55538bc 100644 --- a/src/com/android/settings/applications/ProcessStatsDetail.java +++ b/src/com/android/settings/applications/ProcessStatsDetail.java @@ -112,7 +112,7 @@ public class ProcessStatsDetail extends SettingsPreferenceFragment public void onViewCreated(View view, Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); - AppHeader.createAppHeader(getActivity(), + AppHeader.createAppHeader(this, mApp.mUiTargetApp != null ? mApp.mUiTargetApp.loadIcon(mPm) : new ColorDrawable(0), mApp.mUiLabel, null); } diff --git a/src/com/android/settings/fuelgauge/PowerUsageDetail.java b/src/com/android/settings/fuelgauge/PowerUsageDetail.java index 4aa935a..bac8202 100644 --- a/src/com/android/settings/fuelgauge/PowerUsageDetail.java +++ b/src/com/android/settings/fuelgauge/PowerUsageDetail.java @@ -464,7 +464,7 @@ public class PowerUsageDetail extends PowerUsageBase implements Button.OnClickLi appIcon = getActivity().getPackageManager().getDefaultActivityIcon(); } - AppHeader.createAppHeader(getActivity(), appIcon, title, null, + AppHeader.createAppHeader(this, appIcon, title, null, mDrainType != DrainType.APP ? android.R.color.white : 0); } diff --git a/src/com/android/settings/notification/AppNotificationSettings.java b/src/com/android/settings/notification/AppNotificationSettings.java index 883975a..28245c8 100644 --- a/src/com/android/settings/notification/AppNotificationSettings.java +++ b/src/com/android/settings/notification/AppNotificationSettings.java @@ -84,7 +84,7 @@ public class AppNotificationSettings extends SettingsPreferenceFragment { } mCreated = true; if (mAppRow == null) return; - AppHeader.createAppHeader(getActivity(), mAppRow.icon, mAppRow.label, + AppHeader.createAppHeader(this, mAppRow.icon, mAppRow.label, mAppRow.settingsIntent); } diff --git a/src/com/android/settings/notification/OtherSoundSettings.java b/src/com/android/settings/notification/OtherSoundSettings.java index c226906..969ec90 100644 --- a/src/com/android/settings/notification/OtherSoundSettings.java +++ b/src/com/android/settings/notification/OtherSoundSettings.java @@ -60,6 +60,7 @@ public class OtherSoundSettings extends SettingsPreferenceFragment implements In private static final String KEY_DIAL_PAD_TONES = "dial_pad_tones"; private static final String KEY_SCREEN_LOCKING_SOUNDS = "screen_locking_sounds"; + private static final String KEY_CHARGING_SOUNDS = "charging_sounds"; private static final String KEY_DOCKING_SOUNDS = "docking_sounds"; private static final String KEY_TOUCH_SOUNDS = "touch_sounds"; private static final String KEY_VIBRATE_ON_TOUCH = "vibrate_on_touch"; @@ -77,6 +78,9 @@ public class OtherSoundSettings extends SettingsPreferenceFragment implements In private static final SettingPref PREF_SCREEN_LOCKING_SOUNDS = new SettingPref( TYPE_SYSTEM, KEY_SCREEN_LOCKING_SOUNDS, System.LOCKSCREEN_SOUNDS_ENABLED, DEFAULT_ON); + private static final SettingPref PREF_CHARGING_SOUNDS = new SettingPref( + TYPE_GLOBAL, KEY_CHARGING_SOUNDS, Global.CHARGING_SOUNDS_ENABLED, DEFAULT_ON); + private static final SettingPref PREF_DOCKING_SOUNDS = new SettingPref( TYPE_GLOBAL, KEY_DOCKING_SOUNDS, Global.DOCK_SOUNDS_ENABLED, DEFAULT_ON) { @Override @@ -155,6 +159,7 @@ public class OtherSoundSettings extends SettingsPreferenceFragment implements In private static final SettingPref[] PREFS = { PREF_DIAL_PAD_TONES, PREF_SCREEN_LOCKING_SOUNDS, + PREF_CHARGING_SOUNDS, PREF_DOCKING_SOUNDS, PREF_TOUCH_SOUNDS, PREF_VIBRATE_ON_TOUCH, |