| @@ -4,6 +4,7 @@ import android.app.Activity; | |||
| import android.app.AlertDialog; | |||
| import android.app.Dialog; | |||
| import android.content.Context; | |||
| import android.content.Intent; | |||
| import android.os.Bundle; | |||
| @@ -18,6 +19,8 @@ import android.view.View; | |||
| import android.view.View.OnClickListener; | |||
| import android.view.View.OnTouchListener; | |||
| import android.view.inputmethod.InputMethodManager; | |||
| import android.widget.AdapterView; | |||
| import android.widget.AdapterView.OnItemSelectedListener; | |||
| @@ -153,7 +156,25 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi | |||
| @Override | |||
| protected void onRestoreInstanceState(final Bundle savedInstanceState) { | |||
| super.onRestoreInstanceState(savedInstanceState); | |||
| this.viewFlipper.setDisplayedChild(savedInstanceState.getInt("ViewFlipper.SelectedView", 0)); | |||
| int selView = savedInstanceState.getInt("ViewFlipper.SelectedView", 0); | |||
| this.viewFlipper.setDisplayedChild(selView); | |||
| deactivateAllXTextView(); | |||
| switch (selView) { | |||
| case 0: | |||
| xTextViewUp(this.txtViewParams); | |||
| break; | |||
| case 1: | |||
| xTextViewUp(this.txtViewResults); | |||
| break; | |||
| case 2: | |||
| xTextViewUp(this.txtViewSight); | |||
| break; | |||
| default: | |||
| break; | |||
| } | |||
| } | |||
| @Override | |||
| @@ -390,9 +411,7 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi | |||
| switch (event.getAction()) { | |||
| case MotionEvent.ACTION_DOWN: { | |||
| deactivateXTextView(RBSMainActivity.this.txtViewParams); | |||
| deactivateXTextView(RBSMainActivity.this.txtViewResults); | |||
| deactivateXTextView(RBSMainActivity.this.txtViewSight); | |||
| deactivateAllXTextView(); | |||
| xTextViewDown((XTextView) v); | |||
| return true; | |||
| } | |||
| @@ -565,9 +584,7 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi | |||
| this.viewFlipper.showPrevious(); | |||
| } | |||
| deactivateXTextView(RBSMainActivity.this.txtViewParams); | |||
| deactivateXTextView(RBSMainActivity.this.txtViewResults); | |||
| deactivateXTextView(RBSMainActivity.this.txtViewSight); | |||
| deactivateAllXTextView(); | |||
| switch (this.viewFlipper.getDisplayedChild()) { | |||
| case 0: | |||
| @@ -606,6 +623,12 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi | |||
| } | |||
| private void deactivateAllXTextView() { | |||
| deactivateXTextView(this.txtViewParams); | |||
| deactivateXTextView(this.txtViewResults); | |||
| deactivateXTextView(this.txtViewSight); | |||
| } | |||
| @Override | |||
| protected Dialog onCreateDialog(final int id) { | |||
| return DialogFactory.createDialog(id, this); | |||
| @@ -683,6 +706,9 @@ public class RBSMainActivity extends Activity implements ChooseArcherySetupDlgDi | |||
| if (allParamFieldsValid()) { | |||
| InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); | |||
| imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0); | |||
| CalculationTask calcTask = new CalculationTask(); | |||
| TrajectoryCalculator calculator = new TrajectoryCalculator(Double.valueOf(this.arrowDiameterTxtFld.getText().toString().trim()) * MILLI, // | |||
| Double.valueOf(this.arrowCwTxtFld.getText().toString().trim()), // | |||