summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Beattie <mike@ethernal.org>2013-03-08 19:41:32 +1300
committerMike Beattie <mike@ethernal.org>2013-03-08 19:41:32 +1300
commiteba7b2ef8ef23bdb61b0390e47be6f27ffde31dc (patch)
tree47b02922d2f4ddbf4e9ed968ad50b333783b76b7
parente0d9128b7219b4c8ee68245a44b3428e796ca2f1 (diff)
altosdroid: fix side-to-side scrolling in map tab
Signed-off-by: Mike Beattie <mike@ethernal.org>
-rw-r--r--altosdroid/res/layout/altosdroid.xml2
-rw-r--r--altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java4
-rw-r--r--altosdroid/src/org/altusmetrum/AltosDroid/AltosViewPager.java43
3 files changed, 46 insertions, 3 deletions
diff --git a/altosdroid/res/layout/altosdroid.xml b/altosdroid/res/layout/altosdroid.xml
index ce812414..364f6ba6 100644
--- a/altosdroid/res/layout/altosdroid.xml
+++ b/altosdroid/res/layout/altosdroid.xml
@@ -176,7 +176,7 @@
android:layout_height="0dp"
android:layout_weight="0" />
- <android.support.v4.view.ViewPager
+ <org.altusmetrum.AltosDroid.AltosViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="0dp"
diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java
index 63043abd..c9ce46a0 100644
--- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java
+++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java
@@ -80,7 +80,7 @@ public class AltosDroid extends FragmentActivity {
// Tabs
TabHost mTabHost;
- ViewPager mViewPager;
+ AltosViewPager mViewPager;
TabsAdapter mTabsAdapter;
ArrayList<AltosDroidTab> mTabs = new ArrayList<AltosDroidTab>();
@@ -272,7 +272,7 @@ public class AltosDroid extends FragmentActivity {
mTabHost = (TabHost)findViewById(android.R.id.tabhost);
mTabHost.setup();
- mViewPager = (ViewPager)findViewById(R.id.pager);
+ mViewPager = (AltosViewPager)findViewById(R.id.pager);
mViewPager.setOffscreenPageLimit(4);
mTabsAdapter = new TabsAdapter(this, mTabHost, mViewPager);
diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosViewPager.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosViewPager.java
new file mode 100644
index 00000000..ebddc266
--- /dev/null
+++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosViewPager.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright © 2013 Mike Beattie <mike@ethernal.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+ */
+
+package org.altusmetrum.AltosDroid;
+
+import android.content.Context;
+import android.support.v4.view.ViewPager;
+import android.util.AttributeSet;
+import android.view.View;
+
+public class AltosViewPager extends ViewPager {
+
+ public AltosViewPager(Context context) {
+ super(context);
+ }
+
+ public AltosViewPager(Context context, AttributeSet attrs) {
+ super(context, attrs);
+ }
+
+ @Override
+ protected boolean canScroll(View v, boolean checkV, int dx, int x, int y) {
+ if(v.getClass().getPackage().getName().startsWith("maps.")){
+ return true;
+ }
+ return super.canScroll(v, checkV, dx, x, y);
+ }
+
+} \ No newline at end of file