Fixed crash with ShowMouseCursor=y, immersive mode for KitKat

This commit is contained in:
pelya
2013-11-02 23:47:17 +02:00
parent fa67a2728e
commit 0366b60f1a
10 changed files with 25 additions and 21 deletions

View File

@@ -5,6 +5,7 @@ mkdir -p project/assets
rm -f project/assets/*
if [ -d "project/jni/application/src/AndroidData" ] ; then
cp project/jni/application/src/AndroidData/* project/assets/
exit 0
for F in project/assets/*; do
if [ `cat $F | wc -c` -gt 1000000 ] ; then
echo "The file $F is bigger than 1 megabyte - splitting it into smaller chunks"

View File

@@ -26,9 +26,10 @@
<!-- ==ADMOB== --> <activity android:name="com.google.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
</application>
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="15"/>
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="19"/>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<!-- ==EXTERNAL_STORAGE== --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<!-- ==EXTERNAL_STORAGE== --> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission>
<!-- ==RECORD_AUDIO== --> <uses-permission android:name="android.permission.RECORD_AUDIO"></uses-permission>
<!-- ==ADMOB== --> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<!-- <uses-permission android:name="android.permission.VIBRATE"></uses-permission> --> <!-- Vibrator not supported yet by SDL -->

View File

@@ -1152,15 +1152,13 @@ abstract class DimSystemStatusBar
{
private static final DimSystemStatusBarHoneycomb sInstance = new DimSystemStatusBarHoneycomb();
}
public void dim(final View view)
{
/*
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
// ICS has the same constant redefined with a different name.
hiddenStatusCode = android.view.View.SYSTEM_UI_FLAG_LOW_PROFILE;
}
*/
view.setSystemUiVisibility(android.view.View.STATUS_BAR_HIDDEN);
public void dim(final View view)
{
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT)
// Immersive mode, I already hear curses when system bar reappears mid-game from the slightest swipe at the bottom of the screen
view.setSystemUiVisibility(android.view.View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | android.view.View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
else
view.setSystemUiVisibility(android.view.View.STATUS_BAR_HIDDEN);
}
}
private static class DimSystemStatusBarDummy extends DimSystemStatusBar

View File

@@ -47,7 +47,7 @@ SwVideoMode=y
SdlVideoResize=y
# Application resizing will keep 4:3 aspect ratio, with black bars at sides (y)/(n)
SdlVideoResizeKeepAspect=y
SdlVideoResizeKeepAspect=n
# Application does not call SDL_Flip() or SDL_UpdateRects() appropriately, or draws from non-main thread -
# enabling the compatibility mode will force screen update every 100 milliseconds, which is laggy and inefficient (y) or (n)
@@ -82,7 +82,7 @@ AppUsesMouse=y
AppNeedsTwoButtonMouse=y
# Show SDL mouse cursor, for applications that do not draw cursor at all (y) or (n)
ShowMouseCursor=n
ShowMouseCursor=y
# Force relative (laptop) mouse movement mode, useful when both on-screen keyboard and mouse are needed (y) or (n)
ForceRelativeMouseMode=n

View File

@@ -24,7 +24,9 @@ InhibitSuspend=n
# these files are put inside .apk package by build system
# Also please avoid 'https://' URLs, many Android devices do not have trust certificates and will fail to connect to SF.net over HTTPS
# Downloads for OUYA, thay all are packed inside .apk
# Also, don't forget to set INIT_CONFIG_OPTION( resolutionFactor, 2 ) inside uqm.c
AppDataDownloadUrl="!English voice pack (150 Mb)|:addons/uqm-0.7.0-voice.uqm:uqm-hd-voice_0.2.uqm^Japanese voice pack (130 Mb)|:addons/uqm-0.7.0-voice.uqm:uqm-hd-voice-jp_0.2.uqm^Russian translation|:addons/lang/shadow-content/lang.zip:russian2.zip^Deutsch translation|:addons/lang/shadow-content/lang.zip:deutsch.zip^Spanish translation|:addons/lang/shadow-content/lang.zip:spanish.zip^Slovak translation|:addons/lang/shadow-content/lang.zip:slovak.zip^Finnish translation|:addons/lang/shadow-content/lang.zip:finnish.zip^!!Game data|data.zip^!!Game data|:packages/uqm-content.uqm:uqm-hd-content_0.2.uqm^!!640x480 graphics (160 Mb)|:packages/hires2x.uqm:uqm-hd-hires2x_0.2.uqm^!!1280x960 graphics (360 Mb)|:packages/hires4x.uqm:uqm-hd-hires4x_0.2.uqm^!!UQM music remix pack (240 Mb)|:addons/uqm-remix.uqm:uqm-remix.uqm"
@@ -153,7 +155,7 @@ TouchscreenKeysTheme=2
RedefinedKeysGamepad="RCTRL RSHIFT END ESCAPE RCTRL PAGEUP RSHIFT PAGEDOWN END W"
# How long to show startup menu button, in msec, 0 to disable startup menu
StartupMenuButtonTimeout=3000
StartupMenuButtonTimeout=0
# Menu items to hide from startup menu, available menu items:
# SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout
@@ -173,10 +175,10 @@ MultiABI=y
AppMinimumRAM=0
# Application version code (integer)
AppVersionCode=07002
AppVersionCode=07003
# Application user-visible version name (string)
AppVersionName="0.7.0.02"
AppVersionName="0.7.0.03"
# Reset SDL config when updating application to the new version (y) / (n)
ResetSdlConfigForThisVersion=n

View File

@@ -1069,7 +1069,9 @@ static void ANDROID_FlipHWSurfaceInternal(int numrects, SDL_Rect *rects)
y = y * SDL_ANDROID_sRealWindowHeight / SDL_ANDROID_sFakeWindowHeight;
SDL_ANDROID_DrawMouseCursor( x, y, 0, 1.0f );
}
if( SDL_ANDROID_ShowScreenUnderFinger != ZOOM_NONE )
if( SDL_ANDROID_ShowScreenUnderFinger != ZOOM_NONE &&
SDL_ANDROID_ShowScreenUnderFingerRectSrc.w > 0 &&
SDL_ANDROID_ShowScreenUnderFingerRectSrc.h > 0 )
{
int x, y;
SDL_GetMouseState(&x, &y);

View File

@@ -11,4 +11,4 @@
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
# Project target.
target=android-18
target=android-19