aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorcachapa <cachapa@gmail.com>2011-09-06 11:11:56 +0200
committercachapa <cachapa@gmail.com>2011-09-06 11:11:56 +0200
commit15b1dff09a9c91aade7a147b5a967b6bb1c71755 (patch)
tree6050cd5c2a81dc23f785080cd4479aa3ab676742 /src
parent001a5a404dc586c3708a1c5bafe73f070f2c897d (diff)
downloadcgeo-15b1dff09a9c91aade7a147b5a967b6bb1c71755.zip
cgeo-15b1dff09a9c91aade7a147b5a967b6bb1c71755.tar.gz
cgeo-15b1dff09a9c91aade7a147b5a967b6bb1c71755.tar.bz2
Increase target area for clicking the icons in the main grid.
Even if the tap falls outside of the button, it is still caught by the surrounding layout and redirected to the button.
Diffstat (limited to 'src')
-rw-r--r--src/cgeo/geocaching/cgeo.java105
1 files changed, 60 insertions, 45 deletions
diff --git a/src/cgeo/geocaching/cgeo.java b/src/cgeo/geocaching/cgeo.java
index ceaf3b9..d4defc7 100644
--- a/src/cgeo/geocaching/cgeo.java
+++ b/src/cgeo/geocaching/cgeo.java
@@ -27,6 +27,7 @@ import android.view.ContextMenu;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
+import android.view.View.OnClickListener;
import android.widget.RelativeLayout;
import android.widget.TextView;
import cgeo.geocaching.activity.AbstractActivity;
@@ -452,32 +453,47 @@ public class cgeo extends AbstractActivity {
final View findOnMap = findViewById(R.id.map);
findOnMap.setClickable(true);
- findOnMap.setOnClickListener(new cgeoFindOnMapListener());
+ findOnMap.setOnClickListener(new OnClickListener() {
+ public void onClick(View v) {
+ cgeoFindOnMap(v);
+ }
+ });
final View findByOffline = findViewById(R.id.search_offline);
findByOffline.setClickable(true);
- findByOffline.setOnClickListener(new cgeoFindByOfflineListener());
+ findByOffline.setOnClickListener(new OnClickListener() {
+ public void onClick(View v) {
+ cgeoFindByOffline(v);
+ }
+ });
registerForContextMenu(findByOffline);
(new countBubbleUpdate()).start();
final View advanced = findViewById(R.id.advanced_button);
advanced.setClickable(true);
- advanced.setOnClickListener(new cgeoSearchListener());
+ advanced.setOnClickListener(new OnClickListener() {
+ public void onClick(View v) {
+ cgeoSearch(v);
+ }
+ });
final View any = findViewById(R.id.any_button);
any.setClickable(true);
- any.setOnClickListener(new cgeoPointListener());
+ any.setOnClickListener(new OnClickListener() {
+ public void onClick(View v) {
+ cgeoPoint(v);
+ }
+ });
final View filter = findViewById(R.id.filter_button);
+ filter.setClickable(true);
registerForContextMenu(filter);
filter.setOnClickListener(new View.OnClickListener() {
-
- public void onClick(View view) {
- openContextMenu(view);
+ public void onClick(View v) {
+ openContextMenu(v);
}
});
- filter.setClickable(true);
setFilterTitle();
}
@@ -501,7 +517,11 @@ public class cgeo extends AbstractActivity {
if (geo.latitudeNow != null && geo.longitudeNow != null) {
View findNearest = findViewById(R.id.nearest);
findNearest.setClickable(true);
- findNearest.setOnClickListener(new cgeoFindNearestListener());
+ findNearest.setOnClickListener(new OnClickListener() {
+ public void onClick(View v) {
+ cgeoFindNearest(v);
+ }
+ });
findNearest.setBackgroundResource(R.drawable.main_nearby);
String satellites = null;
@@ -569,50 +589,45 @@ public class cgeo extends AbstractActivity {
}
}
- private class cgeoFindNearestListener implements View.OnClickListener {
-
- public void onClick(View arg0) {
- if (geo == null) {
- return;
- }
-
- final Intent cachesIntent = new Intent(context, cgeocaches.class);
- cachesIntent.putExtra("type", "nearest");
- cachesIntent.putExtra("latitude", geo.latitudeNow);
- cachesIntent.putExtra("longitude", geo.longitudeNow);
- cachesIntent.putExtra("cachetype", settings.cacheType);
- context.startActivity(cachesIntent);
- }
+ public void cgeoFindOnMap(View v) {
+ findViewById(R.id.map).setPressed(true);
+ context.startActivity(new Intent(context, settings.getMapFactory().getMapClass()));
}
-
- private class cgeoFindOnMapListener implements View.OnClickListener {
-
- public void onClick(View arg0) {
- context.startActivity(new Intent(context, settings.getMapFactory().getMapClass()));
+
+ public void cgeoFindNearest(View v) {
+ if (geo == null) {
+ return;
}
- }
-
- private class cgeoFindByOfflineListener implements View.OnClickListener {
- public void onClick(View arg0) {
- final Intent cachesIntent = new Intent(context, cgeocaches.class);
- cachesIntent.putExtra("type", "offline");
- context.startActivity(cachesIntent);
- }
+ findViewById(R.id.nearest).setPressed(true);
+ final Intent cachesIntent = new Intent(context, cgeocaches.class);
+ cachesIntent.putExtra("type", "nearest");
+ cachesIntent.putExtra("latitude", geo.latitudeNow);
+ cachesIntent.putExtra("longitude", geo.longitudeNow);
+ cachesIntent.putExtra("cachetype", settings.cacheType);
+ context.startActivity(cachesIntent);
}
- private class cgeoSearchListener implements View.OnClickListener {
-
- public void onClick(View arg0) {
- context.startActivity(new Intent(context, cgeoadvsearch.class));
- }
+ public void cgeoFindByOffline(View v) {
+ findViewById(R.id.search_offline).setPressed(true);
+ final Intent cachesIntent = new Intent(context, cgeocaches.class);
+ cachesIntent.putExtra("type", "offline");
+ context.startActivity(cachesIntent);
}
- private class cgeoPointListener implements View.OnClickListener {
+ public void cgeoSearch(View v) {
+ findViewById(R.id.advanced_button).setPressed(true);
+ context.startActivity(new Intent(context, cgeoadvsearch.class));
+ }
- public void onClick(View arg0) {
- context.startActivity(new Intent(context, cgeopoint.class));
- }
+ public void cgeoPoint(View v) {
+ findViewById(R.id.any_button).setPressed(true);
+ context.startActivity(new Intent(context, cgeopoint.class));
+ }
+
+ public void cgeoFilter(View v) {
+ findViewById(R.id.filter_button).setPressed(true);
+ findViewById(R.id.filter_button).performClick();
}
private class countBubbleUpdate extends Thread {