diff --git a/project/java/translations/values/strings.xml b/project/java/translations/values/strings.xml
index 9c1340631..03ea4457c 100644
--- a/project/java/translations/values/strings.xml
+++ b/project/java/translations/values/strings.xml
@@ -70,7 +70,7 @@
Touch near mouse cursor
Touch screen with second finger
Touch screen with force
- Trackball click / select key
+ Trackball click / joystick center
Advanced features
Keep 4:3 screen aspect ratio
diff --git a/project/jni/application/fheroes2/AndroidAppSettings.cfg b/project/jni/application/fheroes2/AndroidAppSettings.cfg
index 6a05ab1e7..b6f2e3f30 100644
--- a/project/jni/application/fheroes2/AndroidAppSettings.cfg
+++ b/project/jni/application/fheroes2/AndroidAppSettings.cfg
@@ -21,8 +21,8 @@ RedefinedKeys="LCTRL m t h e"
AppTouchscreenKeyboardKeysAmount=0
AppTouchscreenKeyboardKeysAmountAutoFire=0
MultiABI=n
-AppVersionCode=208302
-AppVersionName="2083.02"
+AppVersionCode=208303
+AppVersionName="2083.03"
CompiledLibraries="sdl_net sdl_mixer sdl_image sdl_ttf png intl"
CustomBuildScript=n
AppCflags='-finline-functions -O2 -DWITH_ZLIB -DWITH_MIXER -DWITH_XML -DWITH_IMAGE -DWITH_TTF -DBUILD_RELEASE'
diff --git a/project/jni/sdl-1.3/src/video/android/SDL_androidinput.c b/project/jni/sdl-1.3/src/video/android/SDL_androidinput.c
index 2fa8e06ae..98fa3d504 100644
--- a/project/jni/sdl-1.3/src/video/android/SDL_androidinput.c
+++ b/project/jni/sdl-1.3/src/video/android/SDL_androidinput.c
@@ -1055,12 +1055,35 @@ extern void SDL_ANDROID_MainThreadPushKeyboardKey(int pressed, SDL_scancode key)
if( clickDoesNotMoveMouseX < 0 )
SDL_GetMouseState( &clickDoesNotMoveMouseX, &clickDoesNotMoveMouseY );
- if( key == SDL_KEY(LEFT) || key == SDL_KEY(RIGHT) )
- clickDoesNotMoveMouseXspeed += key == SDL_KEY(LEFT) ? -1 : 1;
+ if( key == SDL_KEY(LEFT) )
+ {
+ if( clickDoesNotMoveMouseXspeed > 0 )
+ clickDoesNotMoveMouseXspeed = 0;
+ clickDoesNotMoveMouseXspeed --;
+ }
+ else if( key == SDL_KEY(RIGHT) )
+ {
+ if( clickDoesNotMoveMouseXspeed < 0 )
+ clickDoesNotMoveMouseXspeed = 0;
+ clickDoesNotMoveMouseXspeed ++;
+ }
else
clickDoesNotMoveMouseXspeed = 0;
- if( key == SDL_KEY(UP) || key == SDL_KEY(DOWN) )
- clickDoesNotMoveMouseYspeed += key == SDL_KEY(UP) ? -1 : 1;
+
+ if( key == SDL_KEY(UP) )
+ {
+ if( clickDoesNotMoveMouseYspeed > 0 )
+ clickDoesNotMoveMouseYspeed = 0;
+ clickDoesNotMoveMouseYspeed --;
+ }
+ else if( key == SDL_KEY(DOWN) )
+ {
+ if( clickDoesNotMoveMouseYspeed < 0 )
+ clickDoesNotMoveMouseYspeed = 0;
+ clickDoesNotMoveMouseYspeed ++;
+ }
+ else
+ clickDoesNotMoveMouseYspeed = 0;
clickDoesNotMoveMouseX += clickDoesNotMoveMouseXspeed;
clickDoesNotMoveMouseY += clickDoesNotMoveMouseYspeed;