Switch to new "cpu running" state for showing wake time in chart.
Change-Id: I69b27c506e057353d9ee32f5d80e3077c7eba207
This commit is contained in:
@@ -117,7 +117,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
final Paint mScreenOnPaint = new Paint();
|
final Paint mScreenOnPaint = new Paint();
|
||||||
final Paint mGpsOnPaint = new Paint();
|
final Paint mGpsOnPaint = new Paint();
|
||||||
final Paint mWifiRunningPaint = new Paint();
|
final Paint mWifiRunningPaint = new Paint();
|
||||||
final Paint mWakeLockPaint = new Paint();
|
final Paint mCpuRunningPaint = new Paint();
|
||||||
final ChartData mPhoneSignalChart = new ChartData();
|
final ChartData mPhoneSignalChart = new ChartData();
|
||||||
final TextPaint mTextPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG);
|
final TextPaint mTextPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG);
|
||||||
|
|
||||||
@@ -129,7 +129,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
final Path mScreenOnPath = new Path();
|
final Path mScreenOnPath = new Path();
|
||||||
final Path mGpsOnPath = new Path();
|
final Path mGpsOnPath = new Path();
|
||||||
final Path mWifiRunningPath = new Path();
|
final Path mWifiRunningPath = new Path();
|
||||||
final Path mWakeLockPath = new Path();
|
final Path mCpuRunningPath = new Path();
|
||||||
|
|
||||||
int mFontSize;
|
int mFontSize;
|
||||||
|
|
||||||
@@ -141,7 +141,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
String mScreenOnLabel;
|
String mScreenOnLabel;
|
||||||
String mGpsOnLabel;
|
String mGpsOnLabel;
|
||||||
String mWifiRunningLabel;
|
String mWifiRunningLabel;
|
||||||
String mWakeLockLabel;
|
String mCpuRunningLabel;
|
||||||
String mPhoneSignalLabel;
|
String mPhoneSignalLabel;
|
||||||
|
|
||||||
int mTextAscent;
|
int mTextAscent;
|
||||||
@@ -157,7 +157,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
int mScreenOnOffset;
|
int mScreenOnOffset;
|
||||||
int mGpsOnOffset;
|
int mGpsOnOffset;
|
||||||
int mWifiRunningOffset;
|
int mWifiRunningOffset;
|
||||||
int mWakeLockOffset;
|
int mCpuRunningOffset;
|
||||||
int mPhoneSignalOffset;
|
int mPhoneSignalOffset;
|
||||||
int mLevelOffset;
|
int mLevelOffset;
|
||||||
int mLevelTop;
|
int mLevelTop;
|
||||||
@@ -191,7 +191,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
mScreenOnPaint.setStyle(Paint.Style.STROKE);
|
mScreenOnPaint.setStyle(Paint.Style.STROKE);
|
||||||
mGpsOnPaint.setStyle(Paint.Style.STROKE);
|
mGpsOnPaint.setStyle(Paint.Style.STROKE);
|
||||||
mWifiRunningPaint.setStyle(Paint.Style.STROKE);
|
mWifiRunningPaint.setStyle(Paint.Style.STROKE);
|
||||||
mWakeLockPaint.setStyle(Paint.Style.STROKE);
|
mCpuRunningPaint.setStyle(Paint.Style.STROKE);
|
||||||
mPhoneSignalChart.setColors(new int[] {
|
mPhoneSignalChart.setColors(new int[] {
|
||||||
0x00000000, 0xffa00000, 0xffa07000, 0xffa0a000,
|
0x00000000, 0xffa00000, 0xffa07000, 0xffa0a000,
|
||||||
0xff80a000, 0xff409000, 0xff008000
|
0xff80a000, 0xff409000, 0xff008000
|
||||||
@@ -347,7 +347,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
mScreenOnLabel = getContext().getString(R.string.battery_stats_screen_on_label);
|
mScreenOnLabel = getContext().getString(R.string.battery_stats_screen_on_label);
|
||||||
mGpsOnLabel = getContext().getString(R.string.battery_stats_gps_on_label);
|
mGpsOnLabel = getContext().getString(R.string.battery_stats_gps_on_label);
|
||||||
mWifiRunningLabel = getContext().getString(R.string.battery_stats_wifi_running_label);
|
mWifiRunningLabel = getContext().getString(R.string.battery_stats_wifi_running_label);
|
||||||
mWakeLockLabel = getContext().getString(R.string.battery_stats_wake_lock_label);
|
mCpuRunningLabel = getContext().getString(R.string.battery_stats_wake_lock_label);
|
||||||
mPhoneSignalLabel = getContext().getString(R.string.battery_stats_phone_signal_label);
|
mPhoneSignalLabel = getContext().getString(R.string.battery_stats_phone_signal_label);
|
||||||
|
|
||||||
int pos = 0;
|
int pos = 0;
|
||||||
@@ -396,7 +396,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
|
|
||||||
void finishPaths(int w, int h, int levelh, int startX, int y, Path curLevelPath,
|
void finishPaths(int w, int h, int levelh, int startX, int y, Path curLevelPath,
|
||||||
int lastX, boolean lastCharging, boolean lastScreenOn, boolean lastGpsOn,
|
int lastX, boolean lastCharging, boolean lastScreenOn, boolean lastGpsOn,
|
||||||
boolean lastWifiRunning, boolean lastWakeLock, Path lastPath) {
|
boolean lastWifiRunning, boolean lastCpuRunning, Path lastPath) {
|
||||||
if (curLevelPath != null) {
|
if (curLevelPath != null) {
|
||||||
if (lastX >= 0 && lastX < w) {
|
if (lastX >= 0 && lastX < w) {
|
||||||
if (lastPath != null) {
|
if (lastPath != null) {
|
||||||
@@ -421,8 +421,8 @@ public class BatteryHistoryChart extends View {
|
|||||||
if (lastWifiRunning) {
|
if (lastWifiRunning) {
|
||||||
mWifiRunningPath.lineTo(w, h-mWifiRunningOffset);
|
mWifiRunningPath.lineTo(w, h-mWifiRunningOffset);
|
||||||
}
|
}
|
||||||
if (lastWakeLock) {
|
if (lastCpuRunning) {
|
||||||
mWakeLockPath.lineTo(w, h-mWakeLockOffset);
|
mCpuRunningPath.lineTo(w, h - mCpuRunningOffset);
|
||||||
}
|
}
|
||||||
if (mHavePhoneSignal) {
|
if (mHavePhoneSignal) {
|
||||||
mPhoneSignalChart.finish(w);
|
mPhoneSignalChart.finish(w);
|
||||||
@@ -449,7 +449,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
mScreenOnPaint.setARGB(255, 32, 64, 255);
|
mScreenOnPaint.setARGB(255, 32, 64, 255);
|
||||||
mGpsOnPaint.setARGB(255, 32, 64, 255);
|
mGpsOnPaint.setARGB(255, 32, 64, 255);
|
||||||
mWifiRunningPaint.setARGB(255, 32, 64, 255);
|
mWifiRunningPaint.setARGB(255, 32, 64, 255);
|
||||||
mWakeLockPaint.setARGB(255, 32, 64, 255);
|
mCpuRunningPaint.setARGB(255, 32, 64, 255);
|
||||||
} else {
|
} else {
|
||||||
mLargeMode = false;
|
mLargeMode = false;
|
||||||
mLineWidth = mThinLineWidth;
|
mLineWidth = mThinLineWidth;
|
||||||
@@ -457,7 +457,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
mScreenOnPaint.setARGB(255, 0, 0, 255);
|
mScreenOnPaint.setARGB(255, 0, 0, 255);
|
||||||
mGpsOnPaint.setARGB(255, 0, 0, 255);
|
mGpsOnPaint.setARGB(255, 0, 0, 255);
|
||||||
mWifiRunningPaint.setARGB(255, 0, 0, 255);
|
mWifiRunningPaint.setARGB(255, 0, 0, 255);
|
||||||
mWakeLockPaint.setARGB(255, 0, 0, 255);
|
mCpuRunningPaint.setARGB(255, 0, 0, 255);
|
||||||
}
|
}
|
||||||
if (mLineWidth <= 0) mLineWidth = 1;
|
if (mLineWidth <= 0) mLineWidth = 1;
|
||||||
mTextPaint.setStrokeWidth(mThinLineWidth);
|
mTextPaint.setStrokeWidth(mThinLineWidth);
|
||||||
@@ -468,14 +468,14 @@ public class BatteryHistoryChart extends View {
|
|||||||
mScreenOnPaint.setStrokeWidth(mLineWidth);
|
mScreenOnPaint.setStrokeWidth(mLineWidth);
|
||||||
mGpsOnPaint.setStrokeWidth(mLineWidth);
|
mGpsOnPaint.setStrokeWidth(mLineWidth);
|
||||||
mWifiRunningPaint.setStrokeWidth(mLineWidth);
|
mWifiRunningPaint.setStrokeWidth(mLineWidth);
|
||||||
mWakeLockPaint.setStrokeWidth(mLineWidth);
|
mCpuRunningPaint.setStrokeWidth(mLineWidth);
|
||||||
|
|
||||||
if (mLargeMode) {
|
if (mLargeMode) {
|
||||||
int barOffset = textHeight + mLineWidth;
|
int barOffset = textHeight + mLineWidth;
|
||||||
mChargingOffset = mLineWidth;
|
mChargingOffset = mLineWidth;
|
||||||
mScreenOnOffset = mChargingOffset + barOffset;
|
mScreenOnOffset = mChargingOffset + barOffset;
|
||||||
mWakeLockOffset = mScreenOnOffset + barOffset;
|
mCpuRunningOffset = mScreenOnOffset + barOffset;
|
||||||
mWifiRunningOffset = mWakeLockOffset + barOffset;
|
mWifiRunningOffset = mCpuRunningOffset + barOffset;
|
||||||
mGpsOnOffset = mWifiRunningOffset + (mHaveWifi ? barOffset : 0);
|
mGpsOnOffset = mWifiRunningOffset + (mHaveWifi ? barOffset : 0);
|
||||||
mPhoneSignalOffset = mGpsOnOffset + (mHaveGps ? barOffset : 0);
|
mPhoneSignalOffset = mGpsOnOffset + (mHaveGps ? barOffset : 0);
|
||||||
mLevelOffset = mPhoneSignalOffset + (mHavePhoneSignal ? barOffset : 0)
|
mLevelOffset = mPhoneSignalOffset + (mHavePhoneSignal ? barOffset : 0)
|
||||||
@@ -485,7 +485,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
mScreenOnOffset = mGpsOnOffset = mWifiRunningOffset
|
mScreenOnOffset = mGpsOnOffset = mWifiRunningOffset
|
||||||
= mWakeLockOffset = mLineWidth;
|
= mCpuRunningOffset = mLineWidth;
|
||||||
mChargingOffset = mLineWidth*2;
|
mChargingOffset = mLineWidth*2;
|
||||||
mPhoneSignalOffset = 0;
|
mPhoneSignalOffset = 0;
|
||||||
mLevelOffset = mLineWidth*3;
|
mLevelOffset = mLineWidth*3;
|
||||||
@@ -501,7 +501,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
mScreenOnPath.reset();
|
mScreenOnPath.reset();
|
||||||
mGpsOnPath.reset();
|
mGpsOnPath.reset();
|
||||||
mWifiRunningPath.reset();
|
mWifiRunningPath.reset();
|
||||||
mWakeLockPath.reset();
|
mCpuRunningPath.reset();
|
||||||
mChargingPath.reset();
|
mChargingPath.reset();
|
||||||
|
|
||||||
final long timeStart = mHistStart;
|
final long timeStart = mHistStart;
|
||||||
@@ -518,7 +518,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
Path curLevelPath = null;
|
Path curLevelPath = null;
|
||||||
Path lastLinePath = null;
|
Path lastLinePath = null;
|
||||||
boolean lastCharging = false, lastScreenOn = false, lastGpsOn = false;
|
boolean lastCharging = false, lastScreenOn = false, lastGpsOn = false;
|
||||||
boolean lastWifiRunning = false, lastWakeLock = false;
|
boolean lastWifiRunning = false, lastCpuRunning = false;
|
||||||
final int N = mNumHist;
|
final int N = mNumHist;
|
||||||
if (mStats.startIteratingHistoryLocked()) {
|
if (mStats.startIteratingHistoryLocked()) {
|
||||||
final HistoryItem rec = new HistoryItem();
|
final HistoryItem rec = new HistoryItem();
|
||||||
@@ -603,15 +603,15 @@ public class BatteryHistoryChart extends View {
|
|||||||
lastWifiRunning = wifiRunning;
|
lastWifiRunning = wifiRunning;
|
||||||
}
|
}
|
||||||
|
|
||||||
final boolean wakeLock =
|
final boolean cpuRunning =
|
||||||
(rec.states&HistoryItem.STATE_WAKE_LOCK_FLAG) != 0;
|
(rec.states&HistoryItem.STATE_CPU_RUNNING_FLAG) != 0;
|
||||||
if (wakeLock != lastWakeLock) {
|
if (cpuRunning != lastCpuRunning) {
|
||||||
if (wakeLock) {
|
if (cpuRunning) {
|
||||||
mWakeLockPath.moveTo(x, h-mWakeLockOffset);
|
mCpuRunningPath.moveTo(x, h - mCpuRunningOffset);
|
||||||
} else {
|
} else {
|
||||||
mWakeLockPath.lineTo(x, h-mWakeLockOffset);
|
mCpuRunningPath.lineTo(x, h - mCpuRunningOffset);
|
||||||
}
|
}
|
||||||
lastWakeLock = wakeLock;
|
lastCpuRunning = cpuRunning;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mLargeMode && mHavePhoneSignal) {
|
if (mLargeMode && mHavePhoneSignal) {
|
||||||
@@ -634,11 +634,11 @@ public class BatteryHistoryChart extends View {
|
|||||||
if (curLevelPath != null) {
|
if (curLevelPath != null) {
|
||||||
finishPaths(x+1, h, levelh, startX, lastY, curLevelPath, lastX,
|
finishPaths(x+1, h, levelh, startX, lastY, curLevelPath, lastX,
|
||||||
lastCharging, lastScreenOn, lastGpsOn, lastWifiRunning,
|
lastCharging, lastScreenOn, lastGpsOn, lastWifiRunning,
|
||||||
lastWakeLock, lastLinePath);
|
lastCpuRunning, lastLinePath);
|
||||||
lastX = lastY = -1;
|
lastX = lastY = -1;
|
||||||
curLevelPath = null;
|
curLevelPath = null;
|
||||||
lastLinePath = null;
|
lastLinePath = null;
|
||||||
lastCharging = lastScreenOn = lastGpsOn = lastWakeLock = false;
|
lastCharging = lastScreenOn = lastGpsOn = lastCpuRunning = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -648,7 +648,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
|
|
||||||
finishPaths(w, h, levelh, startX, lastY, curLevelPath, lastX,
|
finishPaths(w, h, levelh, startX, lastY, curLevelPath, lastX,
|
||||||
lastCharging, lastScreenOn, lastGpsOn, lastWifiRunning,
|
lastCharging, lastScreenOn, lastGpsOn, lastWifiRunning,
|
||||||
lastWakeLock, lastLinePath);
|
lastCpuRunning, lastLinePath);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -704,8 +704,8 @@ public class BatteryHistoryChart extends View {
|
|||||||
canvas.drawPath(mWifiRunningPath, mWifiRunningPaint);
|
canvas.drawPath(mWifiRunningPath, mWifiRunningPaint);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!mWakeLockPath.isEmpty()) {
|
if (!mCpuRunningPath.isEmpty()) {
|
||||||
canvas.drawPath(mWakeLockPath, mWakeLockPaint);
|
canvas.drawPath(mCpuRunningPath, mCpuRunningPaint);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mLargeMode) {
|
if (mLargeMode) {
|
||||||
@@ -721,8 +721,8 @@ public class BatteryHistoryChart extends View {
|
|||||||
canvas.drawText(mWifiRunningLabel, textStartX,
|
canvas.drawText(mWifiRunningLabel, textStartX,
|
||||||
height - mWifiRunningOffset - mTextDescent, mTextPaint);
|
height - mWifiRunningOffset - mTextDescent, mTextPaint);
|
||||||
}
|
}
|
||||||
canvas.drawText(mWakeLockLabel, textStartX,
|
canvas.drawText(mCpuRunningLabel, textStartX,
|
||||||
height - mWakeLockOffset - mTextDescent, mTextPaint);
|
height - mCpuRunningOffset - mTextDescent, mTextPaint);
|
||||||
canvas.drawText(mChargingLabel, textStartX,
|
canvas.drawText(mChargingLabel, textStartX,
|
||||||
height - mChargingOffset - mTextDescent, mTextPaint);
|
height - mChargingOffset - mTextDescent, mTextPaint);
|
||||||
canvas.drawText(mScreenOnLabel, textStartX,
|
canvas.drawText(mScreenOnLabel, textStartX,
|
||||||
|
Reference in New Issue
Block a user