Show toolbar when DEG/RAD mode matters
Bug: 27926287
Bug: 28086262
Continue to show the toolbar when entering a formula containing trig
function calls.
This also changes the toolbar hiding logic a bit to make physical
keyboard input more like button presses.
No longer makes the tool bar visible on a long press, reserving
that for COPY or PASTE.
Change-Id: I30cb3d747e45b8fe24e35b20805a1d04bdf7b8c9
diff --git a/src/com/android/calculator2/CalculatorDisplay.java b/src/com/android/calculator2/CalculatorDisplay.java
index 8d704cf..ddec110 100644
--- a/src/com/android/calculator2/CalculatorDisplay.java
+++ b/src/com/android/calculator2/CalculatorDisplay.java
@@ -89,7 +89,7 @@
@Override
public boolean onSingleTapConfirmed(MotionEvent e) {
if (mToolbar.getVisibility() != View.VISIBLE) {
- showToolbar();
+ showToolbar(true);
} else {
hideToolbar();
}
@@ -97,7 +97,6 @@
return true;
}
});
- mTapDetector.setIsLongpressEnabled(false);
}
@Override
@@ -125,7 +124,7 @@
@Override
public void onAccessibilityStateChanged(boolean enabled) {
// Always show the toolbar whenever accessibility is enabled.
- showToolbar();
+ showToolbar(true);
}
@Override
@@ -152,14 +151,17 @@
* @param forceToolbarVisible {@code true} to keep the toolbar visible
*/
public void setForceToolbarVisible(boolean forceToolbarVisible) {
- mForceToolbarVisible = forceToolbarVisible;
- showToolbar();
+ if (mForceToolbarVisible != forceToolbarVisible) {
+ mForceToolbarVisible = forceToolbarVisible;
+ showToolbar(!forceToolbarVisible);
+ }
}
/**
* Shows the toolbar.
+ * @param autoHide Automatically ide toolbar again after delay
*/
- public void showToolbar() {
+ public void showToolbar(boolean autoHide) {
// Only animate if we have been laid out at least once.
if (isLaidOut()) {
TransitionManager.beginDelayedTransition(this, mTransition);
@@ -170,7 +172,7 @@
removeCallbacks(mHideToolbarRunnable);
// Auto hide the toolbar after 3 seconds.
- if (!getForceToolbarVisible()) {
+ if (autoHide && !getForceToolbarVisible()) {
postDelayed(mHideToolbarRunnable, AUTO_HIDE_DELAY_MILLIS);
}
}