summaryrefslogtreecommitdiff
path: root/navit/android
diff options
context:
space:
mode:
authorrikky <rikky@ffa7fe5e-494d-0410-b361-a75ebd5db220>2012-08-17 22:12:30 +0000
committerrikky <rikky@ffa7fe5e-494d-0410-b361-a75ebd5db220>2012-08-17 22:12:30 +0000
commit5778258ecd20391637ef73b34939325eecf0f4ee (patch)
treed21ef71cce4a416b795485bb743f545ed4a2b43a /navit/android
parent54d4d74bce6d03fc8eaff04d67b49b944816a29f (diff)
downloadnavit-svn-5778258ecd20391637ef73b34939325eecf0f4ee.tar.gz
Fix:Android:Fix crash on search intent, when no previous search dialog has been shown
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@5206 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/android')
-rw-r--r--navit/android/src/org/navitproject/navit/NavitAddressSearchActivity.java41
1 files changed, 23 insertions, 18 deletions
diff --git a/navit/android/src/org/navitproject/navit/NavitAddressSearchActivity.java b/navit/android/src/org/navitproject/navit/NavitAddressSearchActivity.java
index a2602284..0644f4b0 100644
--- a/navit/android/src/org/navitproject/navit/NavitAddressSearchActivity.java
+++ b/navit/android/src/org/navitproject/navit/NavitAddressSearchActivity.java
@@ -71,11 +71,11 @@ public class NavitAddressSearchActivity extends Activity {
private static final String TAG = "NavitAddress";
private static final int ADDRESS_RESULT_PROGRESS_MAX = 10;
-
+
private List<NavitAddress> Addresses_found = null;
private List<NavitAddress> addresses_shown = null;
- private EditText address_string;
- private CheckBox pm_checkbox;
+ private String mAddressString = "";
+ private boolean mPartialSearch = false;
private String mCountry;
private ImageButton mCountryButton;
ProgressDialog search_results_wait = null;
@@ -111,13 +111,16 @@ public class NavitAddressSearchActivity extends Activity {
{
String search_string = extras.getString("search_string");
if (search_string != null) {
- pm_checkbox.setChecked(true);
- address_string.setText(search_string);
+ mPartialSearch = true;
+ mAddressString = search_string;
executeSearch();
return;
}
}
+ mPartialSearch = last_address_partial_match;
+ mAddressString = last_address_search_string;
+
getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
LinearLayout panel = new LinearLayout(this);
panel.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
@@ -153,10 +156,14 @@ public class NavitAddressSearchActivity extends Activity {
addr_view.setPadding(4, 4, 4, 4);
// partial match checkbox
- pm_checkbox = new CheckBox(this);
- pm_checkbox.setText(Navit.get_text("partial match")); // TRANS
- pm_checkbox.setChecked(last_address_partial_match);
- pm_checkbox.setGravity(Gravity.CENTER);
+ final CheckBox checkboxPartialMatch = new CheckBox(this);
+ checkboxPartialMatch.setText(Navit.get_text("partial match")); // TRANS
+ checkboxPartialMatch.setChecked(last_address_partial_match);
+ checkboxPartialMatch.setGravity(Gravity.CENTER);
+
+ final EditText address_string = new EditText(this);
+ address_string.setText(last_address_search_string);
+ address_string.setSelectAllOnFocus(true);
// search button
final Button btnSearch = new Button(this);
@@ -165,8 +172,10 @@ public class NavitAddressSearchActivity extends Activity {
btnSearch.setGravity(Gravity.CENTER);
btnSearch.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
- last_address_partial_match = pm_checkbox.isChecked();
- last_address_search_string = address_string.getText().toString();
+ mPartialSearch = checkboxPartialMatch.isChecked();
+ mAddressString = address_string.getText().toString();
+ last_address_partial_match = mPartialSearch;
+ last_address_search_string = mAddressString;
executeSearch();
}
});
@@ -204,15 +213,11 @@ public class NavitAddressSearchActivity extends Activity {
if (title != null && title.length() > 0)
this.setTitle(title);
- address_string = new EditText(this);
- address_string.setText(last_address_search_string);
- address_string.setSelectAllOnFocus(true);
-
LinearLayout searchSettingsLayout = new LinearLayout(this);
searchSettingsLayout.setOrientation(LinearLayout.HORIZONTAL);
searchSettingsLayout.addView(mCountryButton);
- searchSettingsLayout.addView(pm_checkbox);
+ searchSettingsLayout.addView(checkboxPartialMatch);
panel.addView(addr_view);
panel.addView(address_string);
panel.addView(searchSettingsLayout);
@@ -285,7 +290,7 @@ public class NavitAddressSearchActivity extends Activity {
public void finishAddressSearch() {
if (Addresses_found.isEmpty()) {
- Toast.makeText( getApplicationContext(),getString(R.string.address_search_not_found) + "\n" + address_string.getText().toString(), Toast.LENGTH_LONG).show(); //TRANS
+ Toast.makeText( getApplicationContext(),getString(R.string.address_search_not_found) + "\n" + mAddressString, Toast.LENGTH_LONG).show(); //TRANS
setResult(Activity.RESULT_CANCELED);
finish();
}
@@ -340,7 +345,7 @@ public class NavitAddressSearchActivity extends Activity {
search_results_streets = 0;
search_results_streets_hn = 0;
- search_handle = CallbackStartAddressSearch(pm_checkbox.isChecked() ? 1 : 0, mCountry, address_string.getText().toString());
+ search_handle = CallbackStartAddressSearch(mPartialSearch ? 1 : 0, mCountry, mAddressString);
search_results_wait.setOnCancelListener(new DialogInterface.OnCancelListener() {
@Override