Merge "Fix crash in WifiSettings." into lmp-dev
diff --git a/res/drawable-hdpi/ic_wifi_emptystate.png b/res/drawable-hdpi/ic_wifi_emptystate.png
new file mode 100644
index 0000000..0192537
--- /dev/null
+++ b/res/drawable-hdpi/ic_wifi_emptystate.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_wifi_emptystate.png b/res/drawable-mdpi/ic_wifi_emptystate.png
new file mode 100644
index 0000000..15f8df8
--- /dev/null
+++ b/res/drawable-mdpi/ic_wifi_emptystate.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_wifi_emptystate.png b/res/drawable-xhdpi/ic_wifi_emptystate.png
new file mode 100644
index 0000000..7853cb0
--- /dev/null
+++ b/res/drawable-xhdpi/ic_wifi_emptystate.png
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_wifi_emptystate.png b/res/drawable-xxhdpi/ic_wifi_emptystate.png
new file mode 100644
index 0000000..6f47efb
--- /dev/null
+++ b/res/drawable-xxhdpi/ic_wifi_emptystate.png
Binary files differ
diff --git a/res/drawable-xxxhdpi/ic_wifi_emptystate.png b/res/drawable-xxxhdpi/ic_wifi_emptystate.png
new file mode 100644
index 0000000..9975f68
--- /dev/null
+++ b/res/drawable-xxxhdpi/ic_wifi_emptystate.png
Binary files differ
diff --git a/res/layout/manage_applications_item.xml b/res/layout/manage_applications_item.xml
index bf93840..e749859 100755
--- a/res/layout/manage_applications_item.xml
+++ b/res/layout/manage_applications_item.xml
@@ -44,7 +44,7 @@
android:layout_marginTop="2dip"
android:singleLine="true"
android:ellipsize="marquee"
- android:textAppearance="?android:attr/textAppearanceMedium"
+ android:textAppearance="@android:style/TextAppearance.Material.Subhead"
android:textAlignment="viewStart" />
<CheckBox android:id="@+id/app_on_sdcard"
@@ -59,13 +59,15 @@
android:id="@+id/app_size"
android:layout_width="0dip"
android:layout_gravity="fill_horizontal|top"
- android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary"
android:textAlignment="viewStart" />
<TextView
android:id="@+id/app_disabled"
android:layout_marginStart="8dip"
android:layout_gravity="top"
- android:textAppearance="?android:attr/textAppearanceSmall" />
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary" />
</GridLayout>
diff --git a/res/layout/running_processes_header.xml b/res/layout/running_processes_header.xml
index a5a2bc7..38ff614 100644
--- a/res/layout/running_processes_header.xml
+++ b/res/layout/running_processes_header.xml
@@ -27,152 +27,168 @@
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginTop="8dp"
+ android:layout_height="48sp"
android:singleLine="true"
android:ellipsize="marquee"
- android:textAppearance="?android:attr/textAppearanceMedium"
+ android:textAppearance="@android:style/TextAppearance.Material.Body2"
+ android:textColor="?android:attr/colorAccent"
android:textAlignment="viewStart"
+ android:gravity="left|center_vertical"
android:text="@string/running_processes_header_title" />
<view class="com.android.settings.applications.LinearColorBar"
android:id="@+id/color_bar"
android:layout_width="match_parent"
- android:layout_height="18sp"
- android:layout_marginTop="8dp"
+ android:layout_height="16sp"
android:orientation="horizontal" />
<LinearLayout
android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="8dp"
- android:orientation="horizontal"
- android:baselineAligned="true">
+ android:layout_height="32sp"
+ android:layout_marginTop="8sp"
+ android:orientation="horizontal">
<ImageView
android:layout_width="16sp"
android:layout_height="16sp"
+ android:layout_gravity="center"
android:scaleType="centerInside"
- android:baselineAlignBottom="true"
android:src="@color/running_processes_system_ram"
android:contentDescription="@null" />
- <TextView
- android:id="@+id/systemSizePrefix"
- android:text="@string/running_processes_header_system_prefix"
- android:textAppearance="?android:attr/textAppearanceMedium"
+ <LinearLayout
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:layout_marginLeft="16dp"
- android:maxLines="1" />
- <ImageView
- android:src="@drawable/dotted_line_480px"
- android:layout_width="0dip"
- android:layout_weight="1"
- android:layout_height="1px"
- android:layout_marginStart="1dip"
- android:layout_marginEnd="1dip"
- android:baselineAlignBottom="true"
- android:scaleType="center"
- android:contentDescription="@null" />
- <TextView
- android:id="@+id/systemSize"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:maxLines="1" />
+ android:layout_gravity="center"
+ android:orientation="horizontal">
+ <TextView
+ android:id="@+id/systemSizePrefix"
+ android:text="@string/running_processes_header_system_prefix"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_height="wrap_content"
+ android:layout_width="wrap_content"
+ android:layout_marginLeft="16dp"
+ android:maxLines="1" />
+ <ImageView
+ android:src="@drawable/dotted_line_480px"
+ android:layout_width="0dip"
+ android:layout_weight="1"
+ android:layout_height="1px"
+ android:layout_marginStart="1dip"
+ android:layout_marginEnd="1dip"
+ android:baselineAlignBottom="true"
+ android:scaleType="center"
+ android:contentDescription="@null" />
+ <TextView
+ android:id="@+id/systemSize"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_height="wrap_content"
+ android:layout_width="wrap_content"
+ android:maxLines="1" />
+ </LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="4dp"
- android:orientation="horizontal"
- android:baselineAligned="true">
+ android:layout_height="32sp"
+ android:orientation="horizontal">
<ImageView
android:layout_width="16sp"
android:layout_height="16sp"
- android:baselineAlignBottom="true"
+ android:layout_gravity="center"
android:scaleType="centerInside"
android:src="@color/running_processes_apps_ram"
android:contentDescription="@null" />
- <TextView
- android:id="@+id/appsSizePrefix"
- android:text="@string/running_processes_header_apps_prefix"
- android:textAppearance="?android:attr/textAppearanceMedium"
+ <LinearLayout
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:layout_marginLeft="16dp"
- android:maxLines="1"
- android:paddingTop="6dip" />
- <ImageView
- android:src="@drawable/dotted_line_480px"
- android:layout_width="0dip"
- android:layout_weight="1"
- android:layout_height="1px"
- android:baselineAlignBottom="true"
- android:layout_marginStart="1dip"
- android:layout_marginEnd="1dip"
- android:scaleType="center"
- android:contentDescription="@null" />
- <TextView
- android:id="@+id/appsSize"
- android:paddingTop="6dip"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:maxLines="1" />
+ android:layout_gravity="center"
+ android:orientation="horizontal">
+ <TextView
+ android:id="@+id/appsSizePrefix"
+ android:text="@string/running_processes_header_apps_prefix"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_height="wrap_content"
+ android:layout_width="wrap_content"
+ android:layout_marginLeft="16dp"
+ android:maxLines="1" />
+ <ImageView
+ android:src="@drawable/dotted_line_480px"
+ android:layout_width="0dip"
+ android:layout_weight="1"
+ android:layout_height="1px"
+ android:baselineAlignBottom="true"
+ android:layout_marginStart="1dip"
+ android:layout_marginEnd="1dip"
+ android:scaleType="center"
+ android:contentDescription="@null" />
+ <TextView
+ android:id="@+id/appsSize"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_height="wrap_content"
+ android:layout_width="wrap_content"
+ android:maxLines="1" />
+ </LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="4dp"
- android:orientation="horizontal"
- android:baselineAligned="true">
+ android:layout_height="32sp"
+ android:orientation="horizontal">
<ImageView
android:layout_width="16sp"
android:layout_height="16sp"
- android:baselineAlignBottom="true"
+ android:layout_gravity="center"
android:scaleType="centerInside"
android:src="@color/running_processes_free_ram"
android:contentDescription="@null" />
- <TextView
- android:id="@+id/freeSizePrefix"
- android:text="@string/running_processes_header_free_prefix"
- android:textAppearance="?android:attr/textAppearanceMedium"
+ <LinearLayout
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:layout_marginLeft="16dp"
- android:maxLines="1"
- android:paddingTop="6dip" />
- <ImageView
- android:src="@drawable/dotted_line_480px"
- android:layout_width="0dip"
- android:layout_weight="1"
- android:layout_height="1px"
- android:baselineAlignBottom="true"
- android:layout_marginStart="1dip"
- android:layout_marginEnd="1dip"
- android:scaleType="center"
- android:contentDescription="@null" />
- <TextView
- android:id="@+id/freeSize"
- android:paddingTop="6dip"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:maxLines="1" />
+ android:layout_gravity="center"
+ android:orientation="horizontal">
+ <TextView
+ android:id="@+id/freeSizePrefix"
+ android:text="@string/running_processes_header_free_prefix"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_height="wrap_content"
+ android:layout_width="wrap_content"
+ android:layout_marginLeft="16dp"
+ android:maxLines="1" />
+ <ImageView
+ android:src="@drawable/dotted_line_480px"
+ android:layout_width="0dip"
+ android:layout_weight="1"
+ android:layout_height="1px"
+ android:baselineAlignBottom="true"
+ android:layout_marginStart="1dip"
+ android:layout_marginEnd="1dip"
+ android:scaleType="center"
+ android:contentDescription="@null" />
+ <TextView
+ android:id="@+id/freeSize"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_height="wrap_content"
+ android:layout_width="wrap_content"
+ android:maxLines="1" />
+ </LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/listHeader"
android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginTop="16dp"
- android:layout_marginBottom="16dp"
+ android:layout_height="48dp"
+ android:layout_marginTop="8sp"
android:singleLine="true"
android:ellipsize="marquee"
- android:textAppearance="?android:attr/textAppearanceMedium"
+ android:textAppearance="@android:style/TextAppearance.Material.Body2"
+ android:textColor="?android:attr/colorAccent"
android:textAlignment="viewStart"
+ android:gravity="left|center_vertical"
android:text="@string/running_processes_header_footer" />
</LinearLayout>
diff --git a/res/layout/running_processes_item.xml b/res/layout/running_processes_item.xml
index 52cecf6..036a90e 100644
--- a/res/layout/running_processes_item.xml
+++ b/res/layout/running_processes_item.xml
@@ -48,7 +48,7 @@
android:layout_weight="1"
android:singleLine="true"
android:ellipsize="marquee"
- android:textAppearance="?android:attr/textAppearanceMedium"
+ android:textAppearance="@android:style/TextAppearance.Material.Subhead"
android:textAlignment="viewStart" />
<TextView
@@ -56,7 +56,8 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dip"
- android:textAppearance="?android:attr/textAppearanceSmall" />
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary" />
</LinearLayout>
@@ -69,7 +70,8 @@
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
- android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary"
android:textAlignment="viewStart" />
<TextView
@@ -77,7 +79,8 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dip"
- android:textAppearance="?android:attr/textAppearanceSmall" />
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary" />
</LinearLayout>
diff --git a/res/values-mcc001-mnc01/config.xml b/res/values-mcc001-mnc01/config.xml
new file mode 100755
index 0000000..76127d4
--- /dev/null
+++ b/res/values-mcc001-mnc01/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2007 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+
+ <!-- Carrier_enabled editable -->
+ <bool name="config_allow_edit_carrier_enabled" translatable="false">true</bool>
+</resources>
diff --git a/res/values-mcc001-mnc010/config.xml b/res/values-mcc001-mnc010/config.xml
new file mode 100755
index 0000000..76127d4
--- /dev/null
+++ b/res/values-mcc001-mnc010/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2007 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+
+ <!-- Carrier_enabled editable -->
+ <bool name="config_allow_edit_carrier_enabled" translatable="false">true</bool>
+</resources>
diff --git a/res/values-mcc246-mnc081/config.xml b/res/values-mcc246-mnc081/config.xml
new file mode 100755
index 0000000..76127d4
--- /dev/null
+++ b/res/values-mcc246-mnc081/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2007 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+
+ <!-- Carrier_enabled editable -->
+ <bool name="config_allow_edit_carrier_enabled" translatable="false">true</bool>
+</resources>
diff --git a/res/values-mcc310-mnc028/config.xml b/res/values-mcc310-mnc028/config.xml
new file mode 100755
index 0000000..76127d4
--- /dev/null
+++ b/res/values-mcc310-mnc028/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2007 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+
+ <!-- Carrier_enabled editable -->
+ <bool name="config_allow_edit_carrier_enabled" translatable="false">true</bool>
+</resources>
diff --git a/res/values-mcc311-mnc390/config.xml b/res/values-mcc311-mnc390/config.xml
new file mode 100755
index 0000000..76127d4
--- /dev/null
+++ b/res/values-mcc311-mnc390/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2007 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+
+ <!-- Carrier_enabled editable -->
+ <bool name="config_allow_edit_carrier_enabled" translatable="false">true</bool>
+</resources>
diff --git a/res/values/config.xml b/res/values/config.xml
index 86d47fe..a6fd34e 100755
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -32,4 +32,6 @@
<!-- Dashboard number of columns -->
<integer name="dashboard_num_columns">1</integer>
+ <!-- Carrier_enabled editable -->
+ <bool name="config_allow_edit_carrier_enabled" translatable="false">false</bool>
</resources>
diff --git a/src/com/android/settings/ApnEditor.java b/src/com/android/settings/ApnEditor.java
index 738d433..8cfee92 100644
--- a/src/com/android/settings/ApnEditor.java
+++ b/src/com/android/settings/ApnEditor.java
@@ -327,6 +327,13 @@
mMvnoType.setSummary(
checkNull(mvnoDescription(mMvnoType.getValue())));
mMvnoMatchData.setSummary(checkNull(mMvnoMatchData.getText()));
+ // allow user to edit carrier_enabled for some APN
+ boolean ceEditable = getResources().getBoolean(R.bool.config_allow_edit_carrier_enabled);
+ if (ceEditable) {
+ mCarrierEnabled.setEnabled(true);
+ } else {
+ mCarrierEnabled.setEnabled(false);
+ }
}
/**
@@ -571,6 +578,7 @@
values.put(Telephony.Carriers.MVNO_TYPE, checkNotSet(mMvnoType.getValue()));
values.put(Telephony.Carriers.MVNO_MATCH_DATA, checkNotSet(mMvnoMatchData.getText()));
+ values.put(Telephony.Carriers.CARRIER_ENABLED, mCarrierEnabled.isChecked() ? 1 : 0);
getContentResolver().update(mUri, values, null, null);
return true;
@@ -664,6 +672,8 @@
if (pref != null) {
if (pref.equals(mPassword)){
pref.setSummary(starify(sharedPreferences.getString(key, "")));
+ } else if (pref.equals(mCarrierEnabled)) {
+ // do nothing
} else {
pref.setSummary(checkNull(sharedPreferences.getString(key, "")));
}
diff --git a/src/com/android/settings/DateTimeSettings.java b/src/com/android/settings/DateTimeSettings.java
index 77561bd..8eb9c52 100644
--- a/src/com/android/settings/DateTimeSettings.java
+++ b/src/com/android/settings/DateTimeSettings.java
@@ -16,6 +16,7 @@
package com.android.settings;
+import android.app.admin.DevicePolicyManager;
import android.app.Activity;
import android.app.AlarmManager;
import android.app.DatePickerDialog;
@@ -89,12 +90,23 @@
boolean autoTimeEnabled = getAutoState(Settings.Global.AUTO_TIME);
boolean autoTimeZoneEnabled = getAutoState(Settings.Global.AUTO_TIME_ZONE);
+ mAutoTimePref = (CheckBoxPreference) findPreference(KEY_AUTO_TIME);
+
+ DevicePolicyManager dpm = (DevicePolicyManager) getSystemService(Context
+ .DEVICE_POLICY_SERVICE);
+ if (dpm.getAutoTimeRequired()) {
+ mAutoTimePref.setEnabled(false);
+
+ // If Settings.Global.AUTO_TIME is false it will be set to true
+ // by the device policy manager very soon.
+ // Note that this app listens to that change.
+ }
+
Intent intent = getActivity().getIntent();
boolean isFirstRun = intent.getBooleanExtra(EXTRA_IS_FIRST_RUN, false);
mDummyDate = Calendar.getInstance();
- mAutoTimePref = (CheckBoxPreference) findPreference(KEY_AUTO_TIME);
mAutoTimePref.setChecked(autoTimeEnabled);
mAutoTimeZonePref = (CheckBoxPreference) findPreference(KEY_AUTO_TIME_ZONE);
// Override auto-timezone if it's a wifi-only device or if we're still in setup wizard.
diff --git a/src/com/android/settings/bluetooth/BluetoothPairingRequest.java b/src/com/android/settings/bluetooth/BluetoothPairingRequest.java
index ea36fee..44198d3 100644
--- a/src/com/android/settings/bluetooth/BluetoothPairingRequest.java
+++ b/src/com/android/settings/bluetooth/BluetoothPairingRequest.java
@@ -90,7 +90,9 @@
.setContentText(res.getString(R.string.bluetooth_notif_message, name))
.setContentIntent(pending)
.setAutoCancel(true)
- .setDefaults(Notification.DEFAULT_SOUND);
+ .setDefaults(Notification.DEFAULT_SOUND)
+ .setColor(res.getColor(
+ com.android.internal.R.color.system_notification_accent_color));
NotificationManager manager = (NotificationManager)
context.getSystemService(Context.NOTIFICATION_SERVICE);
diff --git a/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java b/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java
index c3b93be..1ede05b 100644
--- a/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java
+++ b/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java
@@ -122,17 +122,20 @@
break;
}
Notification notification = new Notification.Builder(context)
- .setContentTitle(title)
- .setTicker(message)
- .setContentText(message)
- .setSmallIcon(android.R.drawable.stat_sys_data_bluetooth)
- .setAutoCancel(true)
- .setPriority(Notification.PRIORITY_MAX)
- .setOnlyAlertOnce(false)
- .setDefaults(Notification.DEFAULT_ALL)
- .setContentIntent(PendingIntent.getActivity(context, 0, connectionAccessIntent, 0))
- .setDeleteIntent(PendingIntent.getBroadcast(context, 0, deleteIntent, 0))
- .build();
+ .setContentTitle(title)
+ .setTicker(message)
+ .setContentText(message)
+ .setSmallIcon(android.R.drawable.stat_sys_data_bluetooth)
+ .setAutoCancel(true)
+ .setPriority(Notification.PRIORITY_MAX)
+ .setOnlyAlertOnce(false)
+ .setDefaults(Notification.DEFAULT_ALL)
+ .setContentIntent(PendingIntent.getActivity(context, 0,
+ connectionAccessIntent, 0))
+ .setDeleteIntent(PendingIntent.getBroadcast(context, 0, deleteIntent, 0))
+ .setColor(context.getResources().getColor(
+ com.android.internal.R.color.system_notification_accent_color))
+ .build();
notification.flags |= Notification.FLAG_NO_CLEAR; /* cannot be set with the builder */
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
index b26ba65..5325ed3 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
@@ -113,6 +113,12 @@
}
@Override
+ public void onStart() {
+ super.onStart();
+ mStatsHelper.clearStats();
+ }
+
+ @Override
public void onResume() {
super.onResume();
BatteryStatsHelper.dropFile(getActivity(), BATTERY_HISTORY_FILE);
@@ -250,7 +256,8 @@
mAppListGroup.addPreference(mHistPref);
boolean addedSome = false;
- PowerProfile powerProfile = mStatsHelper.getPowerProfile();
+ final PowerProfile powerProfile = mStatsHelper.getPowerProfile();
+ final BatteryStats stats = mStatsHelper.getStats();
final double averagePower = powerProfile.getAveragePower(PowerProfile.POWER_SCREEN_FULL);
if (averagePower >= MIN_AVERAGE_POWER_THRESHOLD_MILLI_AMP) {
final List<UserHandle> profiles = mUm.getUserProfiles();
@@ -259,7 +266,7 @@
final List<BatterySipper> usageList = mStatsHelper.getUsageList();
- final int dischargeAmount = mStatsHelper.getStats().getDischargeAmount(mStatsType);
+ final int dischargeAmount = stats != null ? stats.getDischargeAmount(mStatsType) : 0;
final int numSippers = usageList.size();
for (int i = 0; i < numSippers; i++) {
final BatterySipper sipper = usageList.get(i);