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);
         }
     }