summaryrefslogtreecommitdiff
path: root/build
diff options
context:
space:
mode:
Diffstat (limited to 'build')
-rw-r--r--build/android/Makefile14
-rw-r--r--build/android/src/org/minetest/minetest/MinetestAssetCopy.java56
2 files changed, 66 insertions, 4 deletions
diff --git a/build/android/Makefile b/build/android/Makefile
index a8a0a6016..d770462e1 100644
--- a/build/android/Makefile
+++ b/build/android/Makefile
@@ -20,6 +20,8 @@ PATHCFGFILE = path.cfg
ROOT = $(shell pwd)
+GAMES_TO_COPY = minetest_game
+
################################################################################
# Android Version code
# Increase for each build!
@@ -631,15 +633,23 @@ assets : $(ASSETS_TIMESTAMP)
cp -r ${ROOT}/../../client ${ROOT}/assets/Minetest; \
cp -r ${ROOT}/../../doc ${ROOT}/assets/Minetest; \
cp -r ${ROOT}/../../fonts ${ROOT}/assets/Minetest; \
- cp -r ${ROOT}/../../games ${ROOT}/assets/Minetest; \
+ mkdir ${ROOT}/assets/Minetest/games; \
+ for game in ${GAMES_TO_COPY}; \
+ do \
+ cp -r ${ROOT}/../../games/$$game ${ROOT}/assets/Minetest/games/; \
+ done; \
cp -r ${ROOT}/../../mods ${ROOT}/assets/Minetest; \
cp -r ${ROOT}/../../po ${ROOT}/assets/Minetest; \
cp -r ${ROOT}/../../textures ${ROOT}/assets/Minetest; \
mkdir -p ${ROOT}/assets/Minetest/media; \
cp -r ${IRRLICHT_DIR}/media/Shaders ${ROOT}/assets/Minetest/media; \
- cd ${ROOT}/assets; \
+ cd ${ROOT}/assets || exit 1; \
find . -name "timestamp" -exec rm {} \; ; \
find . -name "*.blend" -exec rm {} \; ; \
+ find . -name "*~" -exec rm {} \; ; \
+ find . -type d -path "*.git" -exec rm -rf {} \; ; \
+ find . -type d -path "*.svn" -exec rm -rf {} \; ; \
+ find . -type f -path "*.gitignore" -exec rm -rf {} \; ; \
ls -R | grep ":$$" | sed -e 's/:$$//' -e 's/\.//' -e 's/^\///' > "index.txt"; \
find Minetest >"filelist.txt"; \
cp ${ROOT}/${ASSETS_TIMESTAMP} ${ROOT}/${ASSETS_TIMESTAMP}.old; \
diff --git a/build/android/src/org/minetest/minetest/MinetestAssetCopy.java b/build/android/src/org/minetest/minetest/MinetestAssetCopy.java
index f6b2e8013..62f61ad62 100644
--- a/build/android/src/org/minetest/minetest/MinetestAssetCopy.java
+++ b/build/android/src/org/minetest/minetest/MinetestAssetCopy.java
@@ -9,6 +9,7 @@ import java.io.InputStreamReader;
import java.io.OutputStream;
import java.util.Vector;
import java.util.Iterator;
+import java.lang.Object;
import android.app.Activity;
import android.content.res.AssetFileDescriptor;
@@ -20,6 +21,9 @@ import android.util.Log;
import android.view.Display;
import android.widget.ProgressBar;
import android.widget.TextView;
+import android.graphics.Rect;
+import android.graphics.Paint;
+import android.text.TextPaint;
public class MinetestAssetCopy extends Activity
{
@@ -244,14 +248,62 @@ public class MinetestAssetCopy extends Activity
*/
protected void onProgressUpdate(Integer... progress)
{
+
if (m_copy_started)
{
+ boolean shortened = false;
+ String todisplay = m_tocopy.get(progress[0]);
m_ProgressBar.setProgress(progress[0]);
- m_Filename.setText(m_tocopy.get(progress[0]));
+
+ // make sure our text doesn't exceed our layout width
+ Rect bounds = new Rect();
+ Paint textPaint = m_Filename.getPaint();
+ textPaint.getTextBounds(todisplay, 0, todisplay.length(), bounds);
+
+ while (bounds.width() > getResources().getDisplayMetrics().widthPixels * 0.7) {
+ Log.e("MinetestAssetCopy", todisplay + ": " +
+ bounds.width() + " > " + (getResources().getDisplayMetrics().widthPixels * 0.7));
+ if (todisplay.length() < 2) {
+ break;
+ }
+ todisplay = todisplay.substring(1);
+ textPaint.getTextBounds(todisplay, 0, todisplay.length(), bounds);
+ shortened = true;
+ }
+
+ if (! shortened) {
+ m_Filename.setText(todisplay);
+ }
+ else {
+ m_Filename.setText(".." + todisplay);
+ }
}
else
{
- m_Filename.setText("scanning " + m_Foldername + " ...");
+ boolean shortened = false;
+ String todisplay = m_Foldername;
+ String full_text = "scanning " + todisplay + " ...";
+ // make sure our text doesn't exceed our layout width
+ Rect bounds = new Rect();
+ Paint textPaint = m_Filename.getPaint();
+ textPaint.getTextBounds(full_text, 0, full_text.length(), bounds);
+
+ while (bounds.width() > getResources().getDisplayMetrics().widthPixels * 0.7) {
+ if (todisplay.length() < 2) {
+ break;
+ }
+ todisplay = todisplay.substring(1);
+ full_text = "scanning " + todisplay + " ...";
+ textPaint.getTextBounds(full_text, 0, full_text.length(), bounds);
+ shortened = true;
+ }
+
+ if (! shortened) {
+ m_Filename.setText(full_text);
+ }
+ else {
+ m_Filename.setText("scanning .." + todisplay + " ...");
+ }
}
}