diff --git a/DroidFish/AndroidManifest.xml b/DroidFish/AndroidManifest.xml
index 8d004d3..69e9a2f 100644
--- a/DroidFish/AndroidManifest.xml
+++ b/DroidFish/AndroidManifest.xml
@@ -32,6 +32,11 @@
+
+
+
+
+
diff --git a/DroidFish/src/org/petero/droidfish/DroidFish.java b/DroidFish/src/org/petero/droidfish/DroidFish.java
index 67865ab..c349a4f 100644
--- a/DroidFish/src/org/petero/droidfish/DroidFish.java
+++ b/DroidFish/src/org/petero/droidfish/DroidFish.java
@@ -347,8 +347,8 @@ public class DroidFish extends Activity implements GUIInterface {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- Pair pair = getPgnIntent();
- String intentPgn = pair.first;
+ Pair pair = getPgnOrFenIntent();
+ String intentPgnOrFen = pair.first;
String intentFilename = pair.second;
createDirectories();
@@ -401,9 +401,9 @@ public class DroidFish extends Activity implements GUIInterface {
ctrl.setGuiPaused(true);
ctrl.setGuiPaused(false);
ctrl.startGame();
- if (intentPgn != null) {
+ if (intentPgnOrFen != null) {
try {
- ctrl.setFENOrPGN(intentPgn);
+ ctrl.setFENOrPGN(intentPgnOrFen);
setBoardFlip(true);
} catch (ChessParseError e) {
}
@@ -439,19 +439,20 @@ public class DroidFish extends Activity implements GUIInterface {
}
/**
- * Return PGN data or filename from the Intent. Both can not be non-null.
- * @return Pair of pgndata and filename.
+ * Return PGN/FEN data or filename from the Intent. Both can not be non-null.
+ * @return Pair of PGN/FEN data and filename.
*/
- private final Pair getPgnIntent() {
- String pgn = null;
+ private final Pair getPgnOrFenIntent() {
+ String pgnOrFen = null;
String filename = null;
try {
Intent intent = getIntent();
Uri data = intent.getData();
if (data == null) {
if (Intent.ACTION_SEND.equals(intent.getAction()) &&
- "application/x-chess-pgn".equals(intent.getType()))
- pgn = intent.getStringExtra(Intent.EXTRA_TEXT);
+ ("application/x-chess-pgn".equals(intent.getType()) ||
+ "application/x-chess-fen".equals(intent.getType())))
+ pgnOrFen = intent.getStringExtra(Intent.EXTRA_TEXT);
} else {
String scheme = intent.getScheme();
if ("file".equals(scheme)) {
@@ -472,14 +473,14 @@ public class DroidFish extends Activity implements GUIInterface {
break;
sb.append(new String(buffer, 0, len));
}
- pgn = sb.toString();
+ pgnOrFen = sb.toString();
}
}
} catch (IOException e) {
Toast.makeText(getApplicationContext(), R.string.failed_to_read_pgn_data,
Toast.LENGTH_SHORT).show();
}
- return new Pair(pgn,filename);
+ return new Pair(pgnOrFen,filename);
}
private final byte[] strToByteArr(String str) {