diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 2701406a..1da4a3cb 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -73,8 +73,9 @@
-
+
-
+
+
diff --git a/res/layout/activity_launcher.xml b/res/layout/activity_launcher.xml
index 7f218354..22d7c0e1 100644
--- a/res/layout/activity_launcher.xml
+++ b/res/layout/activity_launcher.xml
@@ -64,6 +64,12 @@
android:text="@string/about_button"
android:id="@+id/button"
android:onClick="aboutXash" />
+
+ android:onClick="saveShortcut"
+ android:layout_below="@+id/shortcut_gamedir"/>
@@ -46,7 +46,7 @@
SDLash3D не связан с Valve или с любыми из их партнеров. Все авторские права принадлежат их соотвественным обладателям.
Настройки
Ярлык Xash3D (тест)
+ Создать ярлык
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 50402def..e36b6655 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -3,7 +3,7 @@
Xash3D
Xash3D
- Xash3D_test
+ Xash3D (test)
- None
- Shoot
@@ -38,4 +38,5 @@ Special thanks to:\n
• Beloko Games for touch controls support\n
• libSDL2 developers.\n
About Xash3D Android
+ Create mod shortcut
diff --git a/src/in/celest/xash3d/LauncherActivity.java b/src/in/celest/xash3d/LauncherActivity.java
index b12b60a5..2c8fe2fc 100644
--- a/src/in/celest/xash3d/LauncherActivity.java
+++ b/src/in/celest/xash3d/LauncherActivity.java
@@ -75,6 +75,12 @@ public class LauncherActivity extends Activity {
}
});
}
+
+ public void createShortcut(View view)
+ {
+ Intent intent = new Intent(this, ShortcutActivity.class);
+ startActivity(intent);
+ }
@Override
public boolean onCreateOptionsMenu(Menu menu) {
diff --git a/src/in/celest/xash3d/ShortcutActivity.java b/src/in/celest/xash3d/ShortcutActivity.java
index 2de22967..573f22b6 100644
--- a/src/in/celest/xash3d/ShortcutActivity.java
+++ b/src/in/celest/xash3d/ShortcutActivity.java
@@ -5,6 +5,7 @@ import android.view.View;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
+import android.widget.Toast;
import in.celest.xash3d.hl.R;
import android.widget.EditText;
import java.io.File;
@@ -66,7 +67,21 @@ public class ShortcutActivity extends Activity
icon = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
}
wrapIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON, icon);
- setResult(RESULT_OK, wrapIntent);
- finish();
+ if(getIntent().getAction() == "android.intent.action.CREATE_SHORTCUT" ) // Called from launcher
+ {
+ setResult(RESULT_OK, wrapIntent);
+ finish();
+ }
+ else try
+ {
+ wrapIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
+ getApplicationContext().sendBroadcast(wrapIntent);
+ Toast.makeText(getApplicationContext(), "Shortcut created!", Toast.LENGTH_SHORT).show();
+ }
+ catch(Exception e)
+ {
+ Toast.makeText(getApplicationContext(), "Problem creating shortcut: " + e.toString() +
+ "\nTry create it manually from laucnher", Toast.LENGTH_LONG).show();
+ }
}
}
diff --git a/test/AndroidManifest.xml b/test/AndroidManifest.xml
index dc85c463..5cc8fecc 100644
--- a/test/AndroidManifest.xml
+++ b/test/AndroidManifest.xml
@@ -73,8 +73,9 @@
-
+
+