aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBananeweizen <Bananeweizen@gmx.de>2011-09-09 22:17:26 -0700
committerBananeweizen <Bananeweizen@gmx.de>2011-09-09 22:17:26 -0700
commita0a49e4a2ea62f816cce8c2a798b4f42494e0bf4 (patch)
tree379af878f4234afb588cf84156d9e2860fb48cf5
parent94238848005250e01f351ebca33025c4850be346 (diff)
parent15b1dff09a9c91aade7a147b5a967b6bb1c71755 (diff)
downloadcgeo-a0a49e4a2ea62f816cce8c2a798b4f42494e0bf4.zip
cgeo-a0a49e4a2ea62f816cce8c2a798b4f42494e0bf4.tar.gz
cgeo-a0a49e4a2ea62f816cce8c2a798b4f42494e0bf4.tar.bz2
Merge pull request #383 from cachapa/ui_tweaks
Increase target area for clicking the icons in the main grid.
-rw-r--r--res/layout/main.xml18
-rw-r--r--src/cgeo/geocaching/cgeo.java105
2 files changed, 72 insertions, 51 deletions
diff --git a/res/layout/main.xml b/res/layout/main.xml
index a5fec4c..e9e49af 100644
--- a/res/layout/main.xml
+++ b/res/layout/main.xml
@@ -34,7 +34,8 @@
android:layout_width="74dip"
android:layout_height="wrap_content"
android:layout_margin="4dip"
- android:orientation="vertical" >
+ android:orientation="vertical"
+ android:onClick="cgeoFindOnMap" >
<View
android:id="@+id/map"
style="@style/icon_mainscreen"
@@ -47,7 +48,8 @@
android:layout_width="74dip"
android:layout_height="wrap_content"
android:layout_margin="4dip"
- android:orientation="vertical" >
+ android:orientation="vertical"
+ android:onClick="cgeoFindNearest" >
<View
android:id="@+id/nearest"
style="@style/icon_mainscreen"
@@ -59,7 +61,8 @@
<RelativeLayout
android:layout_width="74dip"
android:layout_height="wrap_content"
- android:layout_margin="4dip" >
+ android:layout_margin="4dip"
+ android:onClick="cgeoFindByOffline" >
<TextView android:id="@+id/offline_count"
style="@style/icon_mainscreen_count" />
<LinearLayout
@@ -87,7 +90,8 @@
android:layout_width="74dip"
android:layout_height="wrap_content"
android:layout_margin="4dip"
- android:orientation="vertical" >
+ android:orientation="vertical"
+ android:onClick="cgeoSearch" >
<View
android:id="@+id/advanced_button"
style="@style/icon_mainscreen"
@@ -100,7 +104,8 @@
android:layout_width="74dip"
android:layout_height="wrap_content"
android:layout_margin="4dip"
- android:orientation="vertical" >
+ android:orientation="vertical"
+ android:onClick="cgeoPoint" >
<View
android:id="@+id/any_button"
style="@style/icon_mainscreen"
@@ -113,7 +118,8 @@
android:layout_width="74dip"
android:layout_height="wrap_content"
android:layout_margin="4dip"
- android:orientation="vertical" >
+ android:orientation="vertical"
+ android:onClick="cgeoFilter" >
<View
android:id="@+id/filter_button"
style="@style/icon_mainscreen"
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 {