summaryrefslogtreecommitdiffstats
path: root/res
diff options
context:
space:
mode:
authorHans Boehm <hboehm@google.com>2015-04-27 18:07:47 -0700
committerHans Boehm <hboehm@google.com>2015-04-29 13:11:05 -0700
commitfbcef7005de4436682072927f83000b502928d25 (patch)
tree6eeb66694be681860c2719b5b5a22fc71090cb07 /res
parent08e8f322b0d93e06aaa2a15acc869dfd70791461 (diff)
downloadandroid_packages_apps_ExactCalculator-fbcef7005de4436682072927f83000b502928d25.tar.gz
android_packages_apps_ExactCalculator-fbcef7005de4436682072927f83000b502928d25.tar.bz2
android_packages_apps_ExactCalculator-fbcef7005de4436682072927f83000b502928d25.zip
Fix strings, stability bug, easy UI & correctness issues
Bug: 20625562 Bug: 20649711 Bug: 20561890 Bug: 20561528 Bug: 20442590 Bug: 15473140 Bug: 20503008 Bug: 20503007 - Improve timeout text. - Recalculate when Calculator is rotated, e.g. in error state, thus reproducing message. It's unclear this is good enough, but it's better. - Fix square root parsing. - Fix concatenation of numbers when pasting by adding explicit multiplication. - Display divide by zero error differently from other domain errors. - Improved advanced keypad layout of portrait-mode tablet calculator. - Improved overflow menu order. (More to be done.) - Report zero division as zero division when we can recognize it. - Switch to floating menus for copy/paste. Change-Id: I3875414f293e62a59b0e41f0de822f29bd5ac6a6
Diffstat (limited to 'res')
-rw-r--r--res/layout/activity_calculator_tablet_port.xml2
-rw-r--r--res/layout/pad_advanced_tablet_port.xml136
-rw-r--r--res/menu/overflow.xml12
-rw-r--r--res/values/strings.xml17
4 files changed, 152 insertions, 15 deletions
diff --git a/res/layout/activity_calculator_tablet_port.xml b/res/layout/activity_calculator_tablet_port.xml
index cf4b146..b56450e 100644
--- a/res/layout/activity_calculator_tablet_port.xml
+++ b/res/layout/activity_calculator_tablet_port.xml
@@ -26,7 +26,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content" />
- <include layout="@layout/pad_advanced" />
+ <include layout="@layout/pad_advanced_tablet_port" />
<LinearLayout style="@style/PadLinearLayoutStyle">
diff --git a/res/layout/pad_advanced_tablet_port.xml b/res/layout/pad_advanced_tablet_port.xml
new file mode 100644
index 0000000..6b9b03f
--- /dev/null
+++ b/res/layout/pad_advanced_tablet_port.xml
@@ -0,0 +1,136 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (C) 2014 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.
+ -->
+
+<com.android.calculator2.CalculatorPadLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/pad_advanced"
+ style="@style/PadLayoutStyle.Advanced"
+ android:background="@color/pad_advanced_background_color">
+
+ <Button
+ android:id="@+id/fun_sin"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_fun_sin"
+ android:onClick="onButtonClick"
+ android:text="@string/fun_sin" />
+
+ <Button
+ android:id="@+id/fun_cos"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_fun_cos"
+ android:onClick="onButtonClick"
+ android:text="@string/fun_cos" />
+
+ <Button
+ android:id="@+id/fun_tan"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_fun_tan"
+ android:onClick="onButtonClick"
+ android:text="@string/fun_tan" />
+
+ <Button
+ android:id="@+id/fun_ln"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_fun_ln"
+ android:onClick="onButtonClick"
+ android:text="@string/fun_ln" />
+
+ <Button
+ android:id="@+id/fun_log"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_fun_log"
+ android:onClick="onButtonClick"
+ android:text="@string/fun_log" />
+
+ <Button
+ android:id="@+id/op_fact"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_op_fact"
+ android:onClick="onButtonClick"
+ android:text="@string/op_fact" />
+
+ <Button
+ android:id="@+id/fun_arcsin"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_fun_arcsin"
+ android:onClick="onButtonClick"
+ android:text="@string/fun_arcsin" />
+
+ <Button
+ android:id="@+id/fun_arccos"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_fun_arccos"
+ android:onClick="onButtonClick"
+ android:text="@string/fun_arccos" />
+
+ <Button
+ android:id="@+id/fun_arctan"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_fun_arctan"
+ android:onClick="onButtonClick"
+ android:text="@string/fun_arctan" />
+
+ <Button
+ android:id="@+id/const_pi"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_const_pi"
+ android:onClick="onButtonClick"
+ android:text="@string/const_pi" />
+
+ <Button
+ android:id="@+id/const_e"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_const_e"
+ android:onClick="onButtonClick"
+ android:text="@string/const_e" />
+
+ <Button
+ android:id="@+id/op_pow"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_op_pow"
+ android:onClick="onButtonClick"
+ android:text="@string/op_pow" />
+
+ <Button
+ android:id="@+id/lparen"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_lparen"
+ android:onClick="onButtonClick"
+ android:text="@string/lparen" />
+
+ <Button
+ android:id="@+id/rparen"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_rparen"
+ android:onClick="onButtonClick"
+ android:text="@string/rparen" />
+
+ <Button
+ android:id="@+id/op_sqrt"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_op_sqrt"
+ android:onClick="onButtonClick"
+ android:text="@string/op_sqrt" />
+
+ <Button
+ android:id="@+id/mode_deg_rad"
+ style="@style/PadButtonStyle.Advanced"
+ android:contentDescription="@string/desc_mode_rad"
+ android:onClick="onButtonClick"
+ android:textAllCaps="true" />
+
+</com.android.calculator2.CalculatorPadLayout>
diff --git a/res/menu/overflow.xml b/res/menu/overflow.xml
index af5c7cb..d35832d 100644
--- a/res/menu/overflow.xml
+++ b/res/menu/overflow.xml
@@ -19,16 +19,16 @@
<menu xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:id="@+id/menu_help"
- android:title="@string/help"/>
-
- <item android:id="@+id/menu_about"
- android:title="@string/about"/>
-
<item android:id="@+id/menu_leading"
android:title="@string/leading"/>
<item android:id="@+id/menu_fraction"
android:title="@string/fraction"/>
+ <item android:id="@+id/menu_help"
+ android:title="@string/help"/>
+
+ <item android:id="@+id/menu_about"
+ android:title="@string/about"/>
+
</menu>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 3d10202..2c58db5 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -22,12 +22,14 @@
<!-- Error displayed when expression evaluates a function at undefined point. [CHAR_LIMIT=14] -->
<string name="error_nan">Not a number</string>
- <!-- Error displayed when expression contains a syntax error. [CHAR_LIMIT=14] -->
- <string name="error_syntax">Malformed expression</string>
- <!-- Error displayed when evaluation is manually aborted. [CHAR_LIMIT=14] -->
+ <!-- Error displayed when expression contains a syntax error. [CHAR_LIMIT=16] -->
+ <string name="error_syntax">Bad expression</string>
+ <!-- Error displayed when evaluation is manually aborted. [CHAR_LIMIT=16] -->
<string name="error_aborted">Aborted</string>
- <!-- Error displayed when excessive precision is required. [CHAR_LIMIT=14] -->
+ <!-- Error displayed when excessive precision is required. [CHAR_LIMIT=16] -->
<string name="error_overflow">Infinite?</string>
+ <!-- Error displayed when we diagnose a division by zero. [CHAR_LIMIT=16] -->
+ <string name="error_zero_divide">Division by 0</string>
<!-- Decimal separator (e.g. "1.23"). [CHAR_LIMIT=1] -->
<string name="dec_point">.</string>
@@ -142,7 +144,6 @@
<!-- Toast shown when text is copied to the clipboard. -->
<string name="text_copied_toast">Text copied.</string>
- <!-- TODO: Revisit everything below here -->
<!-- Displayed briefly to indicate not-yet-computed digit. -->
<string name="guessed_digit">"?"</string>
<!-- Dialog message when a computation is cancelled by the user. -->
@@ -150,17 +151,17 @@
<!-- Button label to dismiss informative text message. -->
<string name="dismiss">Dismiss</string>
<!-- Dialog message when a computation times out. -->
- <string name="timeout">Timed out trying to compute an infinite or huge number</string>
+ <string name="timeout">That\'s too hard! Undefined or infinite value?</string>
<!-- Button label for "remove timeout" button. -->
<string name="ok_remove_timeout">OK, but longer timeouts, please!</string>
<!-- Help menu entry for context menu. -->
- <string name="help">Help!</string>
+ <string name="help">Help</string>
<!-- Content description for overflow menu button. -->
<string name="overflow_menu_description">overflow menu</string>
<!-- The help message that's displayed in response to pushing the above button. -->
<string name="help_message">Use the keys to enter a standard arithmetic expression. It\'s fine to omit multiplication symbols and trailing parentheses. Long press delete key to clear. Drag the display to see more digits.\n\nComputations involving infinite values may take forever. Wait for the timeout or touch a button to terminate computation.</string>
<!-- Help message addendum for pager. -->
- <string name="help_pager">\n\nSwipe the keyboard to the left to see additional functions.</string>
+ <string name="help_pager">\n\nSwipe the operator pad to the left to see additional functions.</string>
<!-- About menu entry; leads mostly to (English language!) copyright notice. -->
<string name="about">About &amp; Copyright</string>
<!-- Overflow menu entry to display result including leading digits. -->