aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
authorSamuel Tardieu <sam@rfc1149.net>2013-09-13 21:08:04 +0200
committerSamuel Tardieu <sam@rfc1149.net>2013-09-13 21:08:04 +0200
commit64e944c4fb12d1f1a3f6bc8484357cd593f63275 (patch)
tree4e589934e9b6ccfe09c08b424768162a6772ede9 /main
parent2a75d3d1cd6bae2c2d74a73ac4b8e82ad364f640 (diff)
downloadcgeo-64e944c4fb12d1f1a3f6bc8484357cd593f63275.zip
cgeo-64e944c4fb12d1f1a3f6bc8484357cd593f63275.tar.gz
cgeo-64e944c4fb12d1f1a3f6bc8484357cd593f63275.tar.bz2
Enable in-band registration for opencaching.de
The strings still refer to the PIN code. That will be changed when opencaching.pl, which shares the same interface, gets migrated as well to the callback mechanism.
Diffstat (limited to 'main')
-rw-r--r--main/AndroidManifest.xml14
-rw-r--r--main/src/cgeo/geocaching/connector/oc/IOCAuthParams.java7
-rw-r--r--main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java2
-rw-r--r--main/src/cgeo/geocaching/connector/oc/OCDEAuthParams.java5
-rw-r--r--main/src/cgeo/geocaching/connector/oc/OCPLAuthParams.java5
5 files changed, 31 insertions, 2 deletions
diff --git a/main/AndroidManifest.xml b/main/AndroidManifest.xml
index 39ef9d8..99afa67 100644
--- a/main/AndroidManifest.xml
+++ b/main/AndroidManifest.xml
@@ -387,7 +387,19 @@
android:name=".connector.oc.OCDEAuthorizationActivity"
android:configChanges="keyboardHidden|orientation"
android:label="@string/app_name"
- android:windowSoftInputMode="stateHidden" >
+ android:windowSoftInputMode="stateHidden"
+ android:launchMode="singleTask">
+ <intent-filter>
+ <action android:name="android.intent.action.VIEW" />
+
+ <category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.BROWSABLE" />
+
+ <data
+ android:host="www.cgeo.org"
+ android:pathPrefix="/opencaching.de/"
+ android:scheme="callback" />
+ </intent-filter>
</activity>
<activity
android:name=".connector.oc.OCPLAuthorizationActivity"
diff --git a/main/src/cgeo/geocaching/connector/oc/IOCAuthParams.java b/main/src/cgeo/geocaching/connector/oc/IOCAuthParams.java
index 5a140a1..414ec80 100644
--- a/main/src/cgeo/geocaching/connector/oc/IOCAuthParams.java
+++ b/main/src/cgeo/geocaching/connector/oc/IOCAuthParams.java
@@ -57,4 +57,11 @@ public interface IOCAuthParams {
* @return
*/
int getTempTokenSecretPrefKey();
+
+ /**
+ * The URI to use as a callback (OAuth)
+ *
+ * @return
+ */
+ String getCallbackUri();
}
diff --git a/main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java b/main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java
index 45a4475..bae5c1b 100644
--- a/main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java
+++ b/main/src/cgeo/geocaching/connector/oc/OCAuthorizationActivity.java
@@ -20,7 +20,7 @@ public class OCAuthorizationActivity extends OAuthAuthorizationActivity {
false,
CgeoApplication.getInstance().getResources().getString(authParams.getCKResId()),
CgeoApplication.getInstance().getResources().getString(authParams.getCSResId()),
- null);
+ authParams.getCallbackUri());
this.authParams = authParams;
}
diff --git a/main/src/cgeo/geocaching/connector/oc/OCDEAuthParams.java b/main/src/cgeo/geocaching/connector/oc/OCDEAuthParams.java
index 734b383..fff840b 100644
--- a/main/src/cgeo/geocaching/connector/oc/OCDEAuthParams.java
+++ b/main/src/cgeo/geocaching/connector/oc/OCDEAuthParams.java
@@ -43,4 +43,9 @@ public class OCDEAuthParams implements IOCAuthParams {
public int getTempTokenSecretPrefKey() {
return R.string.pref_temp_ocde_token_secret;
}
+
+ @Override
+ public String getCallbackUri() {
+ return "callback://www.cgeo.org/opencaching.de/";
+ }
}
diff --git a/main/src/cgeo/geocaching/connector/oc/OCPLAuthParams.java b/main/src/cgeo/geocaching/connector/oc/OCPLAuthParams.java
index 117e990..c1e0ea3 100644
--- a/main/src/cgeo/geocaching/connector/oc/OCPLAuthParams.java
+++ b/main/src/cgeo/geocaching/connector/oc/OCPLAuthParams.java
@@ -43,4 +43,9 @@ public class OCPLAuthParams implements IOCAuthParams {
public int getTempTokenSecretPrefKey() {
return R.string.pref_temp_ocpl_token_secret;
}
+
+ @Override
+ public String getCallbackUri() {
+ return null;
+ }
}