Merge "[Rlog48b] Better visual indicator for logging state"
commit
82b4374c75
|
@ -130,4 +130,8 @@ public class Replayer {
|
||||||
handler.postAtTime(callback, presentDoneTime + 1);
|
handler.postAtTime(callback, presentDoneTime + 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isReplaying() {
|
||||||
|
return mIsReplaying;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -819,7 +819,8 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isAllowedToLog() {
|
private boolean isAllowedToLog() {
|
||||||
return !mIsPasswordView && !mIsLoggingSuspended && sIsLogging && !mInFeedbackDialog;
|
return !mIsPasswordView && !mIsLoggingSuspended && sIsLogging && !mInFeedbackDialog
|
||||||
|
&& !isReplaying();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void requestIndicatorRedraw() {
|
public void requestIndicatorRedraw() {
|
||||||
|
@ -832,15 +833,30 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
|
||||||
mMainKeyboardView.invalidateAllKeys();
|
mMainKeyboardView.invalidateAllKeys();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private boolean isReplaying() {
|
||||||
|
return mReplayer.isReplaying();
|
||||||
|
}
|
||||||
|
|
||||||
|
private int getIndicatorColor() {
|
||||||
|
if (isMakingUserRecording()) {
|
||||||
|
return Color.YELLOW;
|
||||||
|
}
|
||||||
|
if (isReplaying()) {
|
||||||
|
return Color.GREEN;
|
||||||
|
}
|
||||||
|
return Color.RED;
|
||||||
|
}
|
||||||
|
|
||||||
public void paintIndicator(KeyboardView view, Paint paint, Canvas canvas, int width,
|
public void paintIndicator(KeyboardView view, Paint paint, Canvas canvas, int width,
|
||||||
int height) {
|
int height) {
|
||||||
// TODO: Reimplement using a keyboard background image specific to the ResearchLogger
|
// TODO: Reimplement using a keyboard background image specific to the ResearchLogger
|
||||||
// and remove this method.
|
// and remove this method.
|
||||||
// The check for MainKeyboardView ensures that the indicator only decorates the main
|
// The check for MainKeyboardView ensures that the indicator only decorates the main
|
||||||
// keyboard, not every keyboard.
|
// keyboard, not every keyboard.
|
||||||
if (IS_SHOWING_INDICATOR && isAllowedToLog() && view instanceof MainKeyboardView) {
|
if (IS_SHOWING_INDICATOR && (isAllowedToLog() || isReplaying())
|
||||||
|
&& view instanceof MainKeyboardView) {
|
||||||
final int savedColor = paint.getColor();
|
final int savedColor = paint.getColor();
|
||||||
paint.setColor(isMakingUserRecording() ? Color.YELLOW : Color.RED);
|
paint.setColor(getIndicatorColor());
|
||||||
final Style savedStyle = paint.getStyle();
|
final Style savedStyle = paint.getStyle();
|
||||||
paint.setStyle(Style.STROKE);
|
paint.setStyle(Style.STROKE);
|
||||||
final float savedStrokeWidth = paint.getStrokeWidth();
|
final float savedStrokeWidth = paint.getStrokeWidth();
|
||||||
|
|
Loading…
Reference in New Issue