Merge branch 'sdl_android' of github.com:pelya/commandergenius into sdl_android

Conflicts:
	project/jni/application/commandergenius/commandergenius
This commit is contained in:
Gerhard Stein
2013-04-29 19:30:00 +02:00
12 changed files with 176 additions and 119 deletions

View File

@@ -485,7 +485,7 @@ if [ -n "$var" ] ; then
fi fi
fi fi
FirstStartMenuOptionsDefault='(AppUsesMouse \&\& \! ForceRelativeMouseMode ? new Settings.DisplaySizeConfig(true) : new Settings.DummyMenu()), new Settings.OptionalDownloadConfig(true), new Settings.GyroscopeCalibration()' FirstStartMenuOptionsDefault='new Settings.ShowReadme(), (AppUsesMouse \&\& \! ForceRelativeMouseMode ? new Settings.DisplaySizeConfig(true) : new Settings.DummyMenu()), new Settings.OptionalDownloadConfig(true), new Settings.GyroscopeCalibration()'
if [ -z "$AUTO" ]; then if [ -z "$AUTO" ]; then
echo echo
echo "Menu items to show at startup - this is Java code snippet, leave empty for default" echo "Menu items to show at startup - this is Java code snippet, leave empty for default"
@@ -627,9 +627,13 @@ if [ -n "$var" ] ; then
fi fi
fi fi
if [ -z "$ReadmeText" -o -z "$AUTO" ]; then if [ -z "$AUTO" ]; then
echo
echo "Here you may type readme text, which will be shown during startup. Format is:"
echo "Text in English, use \\n to separate lines"
echo "de:Text in Deutsch"
echo "ru:Text in Russian, and so on"
echo echo
echo "Here you may type some short readme text - it is currently not used anywhere"
echo "Current text:" echo "Current text:"
echo echo
echo "`echo $ReadmeText | tr '^' '\\n'`" echo "`echo $ReadmeText | tr '^' '\\n'`"

View File

@@ -105,7 +105,7 @@ class Globals
public static int RemapHwKeycode[] = new int[SDL_Keys.JAVA_KEYCODE_LAST]; public static int RemapHwKeycode[] = new int[SDL_Keys.JAVA_KEYCODE_LAST];
public static int RemapScreenKbKeycode[] = new int[6]; public static int RemapScreenKbKeycode[] = new int[6];
public static boolean ScreenKbControlsShown[] = new boolean[8]; /* Also joystick and text input button added */ public static boolean ScreenKbControlsShown[] = new boolean[8]; /* Also joystick and text input button added */
public static int ScreenKbControlsLayout[][] = new int[8][4]; public static int ScreenKbControlsLayout[][] = new int[][] { { 0, 303, 177, 480 }, { 0, 0, 48, 48 }, { 712, 392, 800, 480 }, { 624, 392, 712, 480 }, { 712, 304, 800, 392 }, { 624, 304, 712, 392 }, { 712, 216, 800, 304 }, { 624, 216, 712, 304 } }; // Values for 800x480 resolution
public static int RemapMultitouchGestureKeycode[] = new int[4]; public static int RemapMultitouchGestureKeycode[] = new int[4];
public static boolean MultitouchGesturesUsed[] = new boolean[4]; public static boolean MultitouchGesturesUsed[] = new boolean[4];
public static int MultitouchGestureSensitivity = 1; public static int MultitouchGestureSensitivity = 1;

View File

@@ -218,6 +218,22 @@ class Settings
} }
for( int i = 0; i < Globals.MultitouchGesturesUsed.length; i++ ) for( int i = 0; i < Globals.MultitouchGesturesUsed.length; i++ )
Globals.MultitouchGesturesUsed[i] = true; Globals.MultitouchGesturesUsed[i] = true;
// Adjust coordinates of on-screen buttons from 800x480
int displayX = 800;
int displayY = 480;
try {
DisplayMetrics dm = new DisplayMetrics();
p.getWindowManager().getDefaultDisplay().getMetrics(dm);
displayX = dm.widthPixels;
displayY = dm.heightPixels;
} catch (Exception eeeee) {}
for( int i = 0; i < Globals.ScreenKbControlsLayout.length; i++ )
{
Globals.ScreenKbControlsLayout[i][0] *= (float)displayX / 800.0f;
Globals.ScreenKbControlsLayout[i][2] *= (float)displayX / 800.0f;
Globals.ScreenKbControlsLayout[i][1] *= (float)displayY / 480.0f;
Globals.ScreenKbControlsLayout[i][3] *= (float)displayY / 480.0f;
}
System.out.println("android.os.Build.MODEL: " + android.os.Build.MODEL); System.out.println("android.os.Build.MODEL: " + android.os.Build.MODEL);
if( (android.os.Build.MODEL.equals("GT-N7000") || android.os.Build.MODEL.equals("SGH-I717")) if( (android.os.Build.MODEL.equals("GT-N7000") || android.os.Build.MODEL.equals("SGH-I717"))
@@ -2033,6 +2049,8 @@ class Settings
R.drawable.b5, R.drawable.b5,
R.drawable.b6 R.drawable.b6
}; };
int oldX = 0, oldY = 0;
boolean resizing = false;
public CustomizeScreenKbLayoutTool(MainActivity _p) public CustomizeScreenKbLayoutTool(MainActivity _p)
{ {
@@ -2045,10 +2063,10 @@ class Settings
boundaryBmp = BitmapFactory.decodeResource( p.getResources(), R.drawable.rectangle ); boundaryBmp = BitmapFactory.decodeResource( p.getResources(), R.drawable.rectangle );
boundary.setImageBitmap(boundaryBmp); boundary.setImageBitmap(boundaryBmp);
layout.addView(boundary); layout.addView(boundary);
currentButton = 0; currentButton = -1;
if( Globals.TouchscreenKeyboardTheme == 2 ) if( Globals.TouchscreenKeyboardTheme == 2 )
{ {
int buttons2[] = { buttons = new int[] {
R.drawable.sun_dpad, R.drawable.sun_dpad,
R.drawable.sun_keyboard, R.drawable.sun_keyboard,
R.drawable.sun_b1, R.drawable.sun_b1,
@@ -2058,11 +2076,50 @@ class Settings
R.drawable.sun_b5, R.drawable.sun_b5,
R.drawable.sun_b6 R.drawable.sun_b6
}; };
buttons = buttons2;
} }
int displayX = 800;
int displayY = 480;
try {
DisplayMetrics dm = new DisplayMetrics();
p.getWindowManager().getDefaultDisplay().getMetrics(dm);
displayX = dm.widthPixels;
displayY = dm.heightPixels;
} catch (Exception eeeee) {}
for( int i = 0; i < Globals.ScreenKbControlsLayout.length; i++ ) for( int i = 0; i < Globals.ScreenKbControlsLayout.length; i++ )
{ {
if( ! Globals.ScreenKbControlsShown[i] )
continue;
if( currentButton == -1 )
currentButton = i;
// Check if the button is off screen edge or shrunk to zero
if( Globals.ScreenKbControlsLayout[i][0] > Globals.ScreenKbControlsLayout[i][2] - displayX/15 )
Globals.ScreenKbControlsLayout[i][0] = Globals.ScreenKbControlsLayout[i][2] - displayX/15;
if( Globals.ScreenKbControlsLayout[i][1] > Globals.ScreenKbControlsLayout[i][3] - displayY/15 )
Globals.ScreenKbControlsLayout[i][1] = Globals.ScreenKbControlsLayout[i][3] - displayY/15;
if( Globals.ScreenKbControlsLayout[i][0] < 0 )
{
Globals.ScreenKbControlsLayout[i][2] = -Globals.ScreenKbControlsLayout[i][0];
Globals.ScreenKbControlsLayout[i][0] = 0;
}
if( Globals.ScreenKbControlsLayout[i][2] > displayX )
{
Globals.ScreenKbControlsLayout[i][0] = Globals.ScreenKbControlsLayout[i][2] - displayX;
Globals.ScreenKbControlsLayout[i][2] = displayX;
}
if( Globals.ScreenKbControlsLayout[i][1] < 0 )
{
Globals.ScreenKbControlsLayout[i][3] = -Globals.ScreenKbControlsLayout[i][0];
Globals.ScreenKbControlsLayout[i][1] = 0;
}
if( Globals.ScreenKbControlsLayout[i][3] > displayY )
{
Globals.ScreenKbControlsLayout[i][1] = Globals.ScreenKbControlsLayout[i][2] - displayY;
Globals.ScreenKbControlsLayout[i][3] = displayY;
}
imgs[i] = new ImageView(p); imgs[i] = new ImageView(p);
imgs[i].setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT)); imgs[i].setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT));
imgs[i].setScaleType(ImageView.ScaleType.MATRIX); imgs[i].setScaleType(ImageView.ScaleType.MATRIX);
@@ -2078,109 +2135,101 @@ class Settings
imgs[i].setImageMatrix(m); imgs[i].setImageMatrix(m);
} }
boundary.bringToFront(); boundary.bringToFront();
if( currentButton == -1 )
setupButton(true); onKeyEvent( KeyEvent.KEYCODE_BACK ); // All buttons disabled - do not show anything
else
setupButton(currentButton);
} }
void setupButton(boolean undo) void setupButton(int i)
{ {
do {
currentButton += (undo ? -1 : 1);
if(currentButton >= Globals.ScreenKbControlsLayout.length)
{
p.getVideoLayout().removeView(layout);
layout = null;
p.touchListener = null;
p.keyListener = null;
goBack(p);
return;
}
if(currentButton < 0)
{
currentButton = 0;
undo = false;
}
} while( ! Globals.ScreenKbControlsShown[currentButton] );
if( Globals.ScreenKbControlsLayout[currentButton][0] == Globals.ScreenKbControlsLayout[currentButton][2] ||
Globals.ScreenKbControlsLayout[currentButton][1] == Globals.ScreenKbControlsLayout[currentButton][3] )
{
int displayX = 800;
int displayY = 480;
try {
DisplayMetrics dm = new DisplayMetrics();
p.getWindowManager().getDefaultDisplay().getMetrics(dm);
displayX = dm.widthPixels;
displayY = dm.heightPixels;
} catch (Exception eeeee) {}
Globals.ScreenKbControlsLayout[currentButton][0] = displayX / 2 - displayX / 6;
Globals.ScreenKbControlsLayout[currentButton][2] = displayX / 2 + displayX / 6;
Globals.ScreenKbControlsLayout[currentButton][1] = displayY / 2 - displayY / 4;
Globals.ScreenKbControlsLayout[currentButton][3] = displayY / 2 + displayY / 4;
}
Matrix m = new Matrix(); Matrix m = new Matrix();
RectF src = new RectF(0, 0, bmps[currentButton].getWidth(), bmps[currentButton].getHeight()); RectF src = new RectF(0, 0, bmps[i].getWidth(), bmps[i].getHeight());
RectF dst = new RectF(Globals.ScreenKbControlsLayout[currentButton][0], Globals.ScreenKbControlsLayout[currentButton][1], RectF dst = new RectF(Globals.ScreenKbControlsLayout[i][0], Globals.ScreenKbControlsLayout[i][1],
Globals.ScreenKbControlsLayout[currentButton][2], Globals.ScreenKbControlsLayout[currentButton][3]); Globals.ScreenKbControlsLayout[i][2], Globals.ScreenKbControlsLayout[i][3]);
m.setRectToRect(src, dst, Matrix.ScaleToFit.FILL); m.setRectToRect(src, dst, Matrix.ScaleToFit.FILL);
imgs[currentButton].setImageMatrix(m); imgs[i].setImageMatrix(m);
m = new Matrix(); m = new Matrix();
src = new RectF(0, 0, boundaryBmp.getWidth(), boundaryBmp.getHeight()); src = new RectF(0, 0, boundaryBmp.getWidth(), boundaryBmp.getHeight());
m.setRectToRect(src, dst, Matrix.ScaleToFit.FILL); m.setRectToRect(src, dst, Matrix.ScaleToFit.FILL);
boundary.setImageMatrix(m); boundary.setImageMatrix(m);
String buttonText = (currentButton == 0 ? "DPAD" : ( currentButton == 1 ? "Text input" : "" )); String buttonText = (i == 0 ? "Joystick" : ( i == 1 ? "Text input" : "" ));
if ( currentButton >= 2 && currentButton - 2 < Globals.AppTouchscreenKeyboardKeysNames.length ) if ( i >= 2 && i - 2 < Globals.AppTouchscreenKeyboardKeysNames.length )
buttonText = Globals.AppTouchscreenKeyboardKeysNames[currentButton - 2]; buttonText = Globals.AppTouchscreenKeyboardKeysNames[i - 2];
p.setText(p.getResources().getString(R.string.screenkb_custom_layout_help) + "\n" + buttonText.replace("_", " ")); p.setText(p.getResources().getString(R.string.screenkb_custom_layout_help) + "\n" + buttonText.replace("_", " "));
} }
public void onTouchEvent(final MotionEvent ev) public void onTouchEvent(final MotionEvent ev)
{ {
if(currentButton >= Globals.ScreenKbControlsLayout.length)
{
setupButton(false);
return;
}
if( ev.getAction() == MotionEvent.ACTION_DOWN ) if( ev.getAction() == MotionEvent.ACTION_DOWN )
{ {
Globals.ScreenKbControlsLayout[currentButton][0] = (int)ev.getX(); oldX = (int)ev.getX();
Globals.ScreenKbControlsLayout[currentButton][1] = (int)ev.getY(); oldY = (int)ev.getY();
Globals.ScreenKbControlsLayout[currentButton][2] = (int)ev.getX(); resizing = true;
Globals.ScreenKbControlsLayout[currentButton][3] = (int)ev.getY(); for( int i = 0; i < Globals.ScreenKbControlsLayout.length; i++ )
{
if( ! Globals.ScreenKbControlsShown[i] )
continue;
if( Globals.ScreenKbControlsLayout[i][0] <= oldX &&
Globals.ScreenKbControlsLayout[i][2] >= oldX &&
Globals.ScreenKbControlsLayout[i][1] <= oldY &&
Globals.ScreenKbControlsLayout[i][3] >= oldY )
{
currentButton = i;
setupButton(currentButton);
resizing = false;
break;
}
}
} }
if( ev.getAction() == MotionEvent.ACTION_MOVE ) if( ev.getAction() == MotionEvent.ACTION_MOVE )
{ {
if( Globals.ScreenKbControlsLayout[currentButton][0] > (int)ev.getX() ) int dx = (int)ev.getX() - oldX;
Globals.ScreenKbControlsLayout[currentButton][0] = (int)ev.getX(); int dy = (int)ev.getY() - oldY;
if( Globals.ScreenKbControlsLayout[currentButton][1] > (int)ev.getY() ) if( resizing )
Globals.ScreenKbControlsLayout[currentButton][1] = (int)ev.getY(); {
if( Globals.ScreenKbControlsLayout[currentButton][2] < (int)ev.getX() ) // Resize slowly, with 1/3 of movement speed
Globals.ScreenKbControlsLayout[currentButton][2] = (int)ev.getX(); dx /= 6;
if( Globals.ScreenKbControlsLayout[currentButton][3] < (int)ev.getY() ) dy /= 6;
Globals.ScreenKbControlsLayout[currentButton][3] = (int)ev.getY(); Globals.ScreenKbControlsLayout[currentButton][0] -= dx;
Globals.ScreenKbControlsLayout[currentButton][2] += dx;
Globals.ScreenKbControlsLayout[currentButton][1] += dy;
Globals.ScreenKbControlsLayout[currentButton][3] -= dy;
dx *= 6;
dy *= 6;
}
else
{
Globals.ScreenKbControlsLayout[currentButton][0] += dx;
Globals.ScreenKbControlsLayout[currentButton][2] += dx;
Globals.ScreenKbControlsLayout[currentButton][1] += dy;
Globals.ScreenKbControlsLayout[currentButton][3] += dy;
}
oldX += dx;
oldY += dy;
Matrix m = new Matrix();
RectF src = new RectF(0, 0, bmps[currentButton].getWidth(), bmps[currentButton].getHeight());
RectF dst = new RectF(Globals.ScreenKbControlsLayout[currentButton][0], Globals.ScreenKbControlsLayout[currentButton][1],
Globals.ScreenKbControlsLayout[currentButton][2], Globals.ScreenKbControlsLayout[currentButton][3]);
m.setRectToRect(src, dst, Matrix.ScaleToFit.FILL);
imgs[currentButton].setImageMatrix(m);
m = new Matrix();
src = new RectF(0, 0, boundaryBmp.getWidth(), boundaryBmp.getHeight());
m.setRectToRect(src, dst, Matrix.ScaleToFit.FILL);
boundary.setImageMatrix(m);
} }
Matrix m = new Matrix();
RectF src = new RectF(0, 0, bmps[currentButton].getWidth(), bmps[currentButton].getHeight());
RectF dst = new RectF(Globals.ScreenKbControlsLayout[currentButton][0], Globals.ScreenKbControlsLayout[currentButton][1],
Globals.ScreenKbControlsLayout[currentButton][2], Globals.ScreenKbControlsLayout[currentButton][3]);
m.setRectToRect(src, dst, Matrix.ScaleToFit.FILL);
imgs[currentButton].setImageMatrix(m);
m = new Matrix();
src = new RectF(0, 0, boundaryBmp.getWidth(), boundaryBmp.getHeight());
m.setRectToRect(src, dst, Matrix.ScaleToFit.FILL);
boundary.setImageMatrix(m);
if( ev.getAction() == MotionEvent.ACTION_UP )
setupButton(false);
} }
public void onKeyEvent(final int keyCode) public void onKeyEvent(final int keyCode)
{ {
if( layout != null && imgs[currentButton] != null ) if( keyCode == KeyEvent.KEYCODE_BACK )
layout.removeView(imgs[currentButton]); {
imgs[currentButton] = null; p.getVideoLayout().removeView(layout);
setupButton(true); layout = null;
p.touchListener = null;
p.keyListener = null;
goBack(p);
}
} }
} }
} }
@@ -2286,6 +2335,12 @@ class Settings
if( r.startsWith(lang) ) if( r.startsWith(lang) )
readme = r.substring(lang.length()); readme = r.substring(lang.length());
} }
readme = readme.trim();
if( readme.length() <= 2 )
{
goBack(p);
return;
}
TextView text = new TextView(p); TextView text = new TextView(p);
text.setMaxLines(1000); text.setMaxLines(1000);
text.setText(readme); text.setText(readme);
@@ -2616,14 +2671,14 @@ class Settings
Globals.AppTouchscreenKeyboardKeysAmountAutoFire, Globals.AppTouchscreenKeyboardKeysAmountAutoFire,
Globals.TouchscreenKeyboardTransparency ); Globals.TouchscreenKeyboardTransparency );
SetupTouchscreenKeyboardGraphics(p); SetupTouchscreenKeyboardGraphics(p);
for( int i = 0; i < Globals.ScreenKbControlsShown.length; i++ )
nativeSetScreenKbKeyUsed(i, Globals.ScreenKbControlsShown[i] ? 1 : 0);
for( int i = 0; i < Globals.RemapScreenKbKeycode.length; i++ ) for( int i = 0; i < Globals.RemapScreenKbKeycode.length; i++ )
nativeSetKeymapKeyScreenKb(i, SDL_Keys.values[Globals.RemapScreenKbKeycode[i]]); nativeSetKeymapKeyScreenKb(i, SDL_Keys.values[Globals.RemapScreenKbKeycode[i]]);
for( int i = 0; i < Globals.ScreenKbControlsLayout.length; i++ ) for( int i = 0; i < Globals.ScreenKbControlsLayout.length; i++ )
if( Globals.ScreenKbControlsLayout[i][0] < Globals.ScreenKbControlsLayout[i][2] ) if( Globals.ScreenKbControlsLayout[i][0] < Globals.ScreenKbControlsLayout[i][2] )
nativeSetScreenKbKeyLayout( i, Globals.ScreenKbControlsLayout[i][0], Globals.ScreenKbControlsLayout[i][1], nativeSetScreenKbKeyLayout( i, Globals.ScreenKbControlsLayout[i][0], Globals.ScreenKbControlsLayout[i][1],
Globals.ScreenKbControlsLayout[i][2], Globals.ScreenKbControlsLayout[i][3]); Globals.ScreenKbControlsLayout[i][2], Globals.ScreenKbControlsLayout[i][3]);
for( int i = 0; i < Globals.ScreenKbControlsShown.length; i++ )
nativeSetScreenKbKeyUsed(i, Globals.ScreenKbControlsShown[i] ? 1 : 0);
} }
else else
Globals.UseTouchscreenKeyboard = false; Globals.UseTouchscreenKeyboard = false;

View File

@@ -137,7 +137,6 @@
<string name="remap_screenkb_button_rotateright">Geste de rotation à droite avec deux doigts</string> <string name="remap_screenkb_button_rotateright">Geste de rotation à droite avec deux doigts</string>
<string name="screenkb_custom_layout">Personnalisation de la présentation du clavier à l\'écran</string> <string name="screenkb_custom_layout">Personnalisation de la présentation du clavier à l\'écran</string>
<string name="screenkb_custom_layout_help">Faites glisser l\'écran pour ajouter le bouton, appuyez sur Retour/BACK pour annuler le dernier bouton</string>
<string name="calibrate_touchscreen">Calibrer l\'écran tactile</string> <string name="calibrate_touchscreen">Calibrer l\'écran tactile</string>
<string name="calibrate_touchscreen_touch">Touchez les bords de l\'écran, appuyez sur Retour/BACK lorsque vous avez terminé</string> <string name="calibrate_touchscreen_touch">Touchez les bords de l\'écran, appuyez sur Retour/BACK lorsque vous avez terminé</string>
@@ -158,9 +157,6 @@
<string name="show_more_options">Afficher plus d\'options</string> <string name="show_more_options">Afficher plus d\'options</string>
<string name="broken_libc_title">Erreur interne détectée (OS/LibC)</string>
<string name="broken_libc_text">Certaines librairies sont mal installées et cette application va probablement ne pas fonctionner. Merci de mettre à jour votre système, flash, ROM custom, ou bien de copier le fichier /system/lib/libc.so depuis un autre système (Attention, Experts uniquement !).</string>
<string name="hardware_mouse_detected">Hardware mouse detected, disabling mouse emulation</string> <string name="hardware_mouse_detected">Hardware mouse detected, disabling mouse emulation</string>
<string name="not_enough_ram">Not enough RAM</string> <string name="not_enough_ram">Not enough RAM</string>
<string name="not_enough_ram_size">This app needs %1$d Mb RAM, your device has %2$d Mb</string> <string name="not_enough_ram_size">This app needs %1$d Mb RAM, your device has %2$d Mb</string>
@@ -175,4 +171,5 @@
<string name="cancel_download_resume">You can resume it later, the data will not be downloaded twice.</string> <string name="cancel_download_resume">You can resume it later, the data will not be downloaded twice.</string>
<string name="yes">Yes</string> <string name="yes">Yes</string>
<string name="no">No</string> <string name="no">No</string>
<string name="screenkb_custom_layout_help">Press BACK when done. Resize buttons by sliding on empty space.</string>
</resources> </resources>

View File

@@ -99,7 +99,7 @@
<string name="calibrate_touchscreen">Калибровка сенсорного экрана</string> <string name="calibrate_touchscreen">Калибровка сенсорного экрана</string>
<string name="calibrate_touchscreen_touch">Дотроньтесь до всех краев экрана, потом нажмите Назад/BACK</string> <string name="calibrate_touchscreen_touch">Дотроньтесь до всех краев экрана, потом нажмите Назад/BACK</string>
<string name="screenkb_custom_layout">Настройка расположения кнопок</string> <string name="screenkb_custom_layout">Настройка расположения кнопок</string>
<string name="screenkb_custom_layout_help">Проведите по экрану, чтобы добавить кнопку, нажмите клавишу Назад/BACK, чтобы отменить последнюю кнопку</string> <string name="screenkb_custom_layout_help">Нажмите клавишу Назад/BACK для завершения. Проведите по пустому месту, чтобы изменить размер кнопки</string>
<string name="rightclick_key">Физическая кнопка</string> <string name="rightclick_key">Физическая кнопка</string>
<string name="pointandclick_showcreenunderfinger2">Наэкранная лупа</string> <string name="pointandclick_showcreenunderfinger2">Наэкранная лупа</string>
<string name="video">Настройки видео</string> <string name="video">Настройки видео</string>
@@ -126,8 +126,6 @@
<string name="display_size_small">Маленький (телефон)</string> <string name="display_size_small">Маленький (телефон)</string>
<string name="display_size_tiny">Крохотный</string> <string name="display_size_tiny">Крохотный</string>
<string name="show_more_options">Показать больше параметров</string> <string name="show_more_options">Показать больше параметров</string>
<string name="broken_libc_title">Обнаружена бракованная прошивка</string>
<string name="broken_libc_text">Ваше устройство содержит дефективные системные библиотеки, данное приложение скорее всего не будет работать. Пожалуйста, установите обновление, либо установите неофициальную прошивку, либо скопируйте /system/lib/libc.so с другого устройства (только для специалистов!)</string>
<string name="controls_screenkb_drawsize">Размер изображения кнопок</string> <string name="controls_screenkb_drawsize">Размер изображения кнопок</string>
<string name="display_size_small_touchpad">Маленький, режим тачпада</string> <string name="display_size_small_touchpad">Маленький, режим тачпада</string>
<string name="display_size_tiny_touchpad">Крохотный, режим тачпада</string> <string name="display_size_tiny_touchpad">Крохотный, режим тачпада</string>

View File

@@ -99,7 +99,7 @@
<string name="calibrate_touchscreen">Калібрування сенсорного екрану</string> <string name="calibrate_touchscreen">Калібрування сенсорного екрану</string>
<string name="calibrate_touchscreen_touch">Доторкнiться до всіх країв екрану, потiм натисніть Назад/BACK</string> <string name="calibrate_touchscreen_touch">Доторкнiться до всіх країв екрану, потiм натисніть Назад/BACK</string>
<string name="screenkb_custom_layout">Налаштування положення кнопок</string> <string name="screenkb_custom_layout">Налаштування положення кнопок</string>
<string name="screenkb_custom_layout_help">Проведiть по екрану, щоб додати кнопку, натисніть Назад/BACK, щоб скасувати останню кнопку</string> <string name="screenkb_custom_layout_help">Натисніть Назад/BACK для завершення. Проведiть по екрану, щоб змінити розмір кнопки</string>
<string name="rightclick_key">Фізична кнопка</string> <string name="rightclick_key">Фізична кнопка</string>
<string name="pointandclick_showcreenunderfinger2">Наекранна лупа</string> <string name="pointandclick_showcreenunderfinger2">Наекранна лупа</string>
<string name="video">Налаштування відео</string> <string name="video">Налаштування відео</string>
@@ -131,19 +131,17 @@
<string name="display_size_tiny_touchpad">Крихiтний, режим тачпаду</string> <string name="display_size_tiny_touchpad">Крихiтний, режим тачпаду</string>
<string name="hardware_mouse_detected">Виявлена зовнiшня миша, емуляція миші вимкнена</string> <string name="hardware_mouse_detected">Виявлена зовнiшня миша, емуляція миші вимкнена</string>
<string name="broken_libc_title">Broken OS detected</string> <string name="not_enough_ram">Недостатньо пам’яті</string>
<string name="broken_libc_text">Your device has broken system libraries, this application will most probably crash. Please install a system update, or flash a custom ROM, or copy file /system/lib/libc.so from another device (experts only!)</string> <string name="not_enough_ram_size">Потрібно %1$d Mb пам’яті, доступно лише %2$d Mb</string>
<string name="not_enough_ram">Not enough RAM</string> <string name="ignore">Ігнорувати</string>
<string name="not_enough_ram_size">This app needs %1$d Mb RAM, your device has %2$d Mb</string> <string name="calibrate_gyroscope">Калібрувати гіроскоп</string>
<string name="ignore">Ignore</string> <string name="calibrate_gyroscope_text">Покладіть телефон на рівну поверхню</string>
<string name="calibrate_gyroscope">Calibrate gyroscope</string> <string name="reset_config">Скинути всі налаштування</string>
<string name="calibrate_gyroscope_text">Put your phone on a flat surface</string> <string name="cancel">Відмінити</string>
<string name="reset_config">Reset config to defaults</string> <string name="calibrate_gyroscope_not_supported">Гіроскоп відсутній</string>
<string name="cancel">Cancel</string> <string name="reset_config_ask">Скинути всі налаштування у значення за замовчуванням?</string>
<string name="calibrate_gyroscope_not_supported">Your device does not have gyroscope</string> <string name="cancel_download">Припинити завантаження?</string>
<string name="reset_config_ask">Reset all options to default values?</string> <string name="cancel_download_resume">Завантаження може бути відновлено пізніше.</string>
<string name="cancel_download">Cancel data downloading?</string> <string name="yes">Так</string>
<string name="cancel_download_resume">You can resume it later, the data will not be downloaded twice.</string> <string name="no">Ні</string>
<string name="yes">Yes</string>
<string name="no">No</string>
</resources> </resources>

View File

@@ -136,7 +136,7 @@
<string name="remap_screenkb_button_rotateright">Rotate right two-finger gesture</string> <string name="remap_screenkb_button_rotateright">Rotate right two-finger gesture</string>
<string name="screenkb_custom_layout">Customize on-screen keyboard layout</string> <string name="screenkb_custom_layout">Customize on-screen keyboard layout</string>
<string name="screenkb_custom_layout_help">Slide screen to add button, press BACK to undo last button</string> <string name="screenkb_custom_layout_help">Press BACK when done. Resize buttons by sliding on empty space.</string>
<string name="calibrate_touchscreen">Calibrate touchscreen</string> <string name="calibrate_touchscreen">Calibrate touchscreen</string>
<string name="calibrate_touchscreen_touch">Touch all edges of the screen, press BACK when done</string> <string name="calibrate_touchscreen_touch">Touch all edges of the screen, press BACK when done</string>
@@ -157,9 +157,6 @@
<string name="show_more_options">Show more options</string> <string name="show_more_options">Show more options</string>
<string name="broken_libc_title">Broken OS detected</string>
<string name="broken_libc_text">Your device has broken system libraries, this application will most probably crash. Please install a system update, or flash a custom ROM, or copy file /system/lib/libc.so from another device (experts only!)</string>
<string name="hardware_mouse_detected">Hardware mouse detected, disabling mouse emulation</string> <string name="hardware_mouse_detected">Hardware mouse detected, disabling mouse emulation</string>
<string name="not_enough_ram">Not enough RAM</string> <string name="not_enough_ram">Not enough RAM</string>

View File

@@ -34,7 +34,7 @@ AppUsesMultitouch=y
AppRecordsAudio=n AppRecordsAudio=n
NonBlockingSwapBuffers=n NonBlockingSwapBuffers=n
RedefinedKeys="SPACE RETURN NO_REMAP NO_REMAP SPACE ESCAPE" RedefinedKeys="SPACE RETURN NO_REMAP NO_REMAP SPACE ESCAPE"
AppTouchscreenKeyboardKeysAmount=6 AppTouchscreenKeyboardKeysAmount=1
AppTouchscreenKeyboardKeysAmountAutoFire=0 AppTouchscreenKeyboardKeysAmountAutoFire=0
RedefinedKeysScreenKb="0 1 2 3 4 5 6 7 8 9" RedefinedKeysScreenKb="0 1 2 3 4 5 6 7 8 9"
RedefinedKeysScreenKbNames="0 1 2 3 4 5 6 7 8 9" RedefinedKeysScreenKbNames="0 1 2 3 4 5 6 7 8 9"

View File

@@ -555,6 +555,14 @@ int main(int argc, char* argv[])
__android_log_print(ANDROID_LOG_INFO, "Ballfield", "sizeof(int) %d long %d long long %d size_t %d", sizeof(int), sizeof(long), sizeof(long long), sizeof(size_t)); __android_log_print(ANDROID_LOG_INFO, "Ballfield", "sizeof(int) %d long %d long long %d size_t %d", sizeof(int), sizeof(long), sizeof(long long), sizeof(size_t));
__android_log_print(ANDROID_LOG_VERBOSE, "Ballfield", "On-screen buttons:");
for(i = 0; i < SDL_ANDROID_SCREENKEYBOARD_BUTTON_NUM; i++)
{
SDL_Rect r;
SDL_ANDROID_GetScreenKeyboardButtonPos(i, &r);
__android_log_print(ANDROID_LOG_VERBOSE, "Ballfield", "{ %d, %d, %d, %d },", r.x, r.y, r.x+r.h, r.y+r.w);
}
while(1) while(1)
{ {
SDL_Rect r; SDL_Rect r;

View File

@@ -34,7 +34,7 @@ AppUsesMultitouch=y
AppRecordsAudio=y AppRecordsAudio=y
NonBlockingSwapBuffers=n NonBlockingSwapBuffers=n
RedefinedKeys="SPACE SPACE NO_REMAP NO_REMAP RETURN ESCAPE LCTRL" RedefinedKeys="SPACE SPACE NO_REMAP NO_REMAP RETURN ESCAPE LCTRL"
AppTouchscreenKeyboardKeysAmount=5 AppTouchscreenKeyboardKeysAmount=6
AppTouchscreenKeyboardKeysAmountAutoFire=0 AppTouchscreenKeyboardKeysAmountAutoFire=0
RedefinedKeysScreenKb="SLASH BACKSPACE TAB END LCTRL SPACE UNKNOWN UNKNOWN UNKNOWN UNKNOWN" RedefinedKeysScreenKb="SLASH BACKSPACE TAB END LCTRL SPACE UNKNOWN UNKNOWN UNKNOWN UNKNOWN"
RedefinedKeysScreenKbNames="Change_weapon Sniper_view Show_scores Center_view Fire Jump" RedefinedKeysScreenKbNames="Change_weapon Sniper_view Show_scores Center_view Fire Jump"