Преглед на файлове

[Android] fixed keyboard hiding on Android 3.0+; [Android] fixed input of numbers

git-svn-id: http://zengl.googlecode.com/svn/branches/0.3.x@1900 6573c10b-8653-0410-9706-d32479e959fb
dr.andru преди 13 години
родител
ревизия
6446a00b06
променени са 23 файла, в които са добавени 61 реда и са изтрити 13 реда
  1. 3 0
      demos/Android/01 - Initialization/src/zengl/android/ZenGL.java
  2. 3 0
      demos/Android/02 - Resources/src/zengl/android/ZenGL.java
  3. 2 4
      demos/Android/03 - Input/jni/demo03.lpr
  4. 3 0
      demos/Android/03 - Input/src/zengl/android/ZenGL.java
  5. 3 0
      demos/Android/04 - Screen Settings/src/zengl/android/ZenGL.java
  6. 3 0
      demos/Android/05 - Primitives/src/zengl/android/ZenGL.java
  7. 3 0
      demos/Android/06 - Text/src/zengl/android/ZenGL.java
  8. 3 0
      demos/Android/07 - Sprites/src/zengl/android/ZenGL.java
  9. 3 0
      demos/Android/08 - Sprite Engine/src/zengl/android/ZenGL.java
  10. 3 0
      demos/Android/09 - Sprite Engine(Classes)/src/zengl/android/ZenGL.java
  11. 3 0
      demos/Android/10 - Tiles/src/zengl/android/ZenGL.java
  12. 3 0
      demos/Android/11 - Grid/src/zengl/android/ZenGL.java
  13. 3 0
      demos/Android/12 - Render into Texture/src/zengl/android/ZenGL.java
  14. 3 0
      demos/Android/13 - Particles/src/zengl/android/ZenGL.java
  15. 3 0
      demos/Android/14 - Sound/src/zengl/android/ZenGL.java
  16. 3 0
      demos/Android/15 - Video/src/zengl/android/ZenGL.java
  17. 3 0
      demos/Android/16 - Physics/src/zengl/android/ZenGL.java
  18. 2 4
      demos/iOS/03_Input/demo03/demo03.pas
  19. 3 0
      headers/android/zengl/android/ZenGL.java
  20. 2 2
      headers/zglHeader.h
  21. 2 2
      headers/zglHeader.pas
  22. 2 1
      src/Lazarus/ZenGL-win.lpi
  23. BIN
      src/ZenGL.res

+ 3 - 0
demos/Android/01 - Initialization/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/02 - Resources/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 2 - 4
demos/Android/03 - Input/jni/demo03.lpr

@@ -51,12 +51,10 @@ procedure Draw;
   var
     w : Single;
 begin
-  text_Draw( fntMain, 0, 0, 'Escape - Exit' );
-
   // RU: Координаты "пальцев" можно получить при помощи функций touch_X и touch_Y.
   // EN: "Finger" coordinates can be got using functions touch_X and touch_Y.
-  text_Draw( fntMain, 0, 16, 'First finger X, Y: ' + u_IntToStr( touch_X( 0 ) ) + '; ' + u_IntToStr( touch_Y( 0 ) ) );
-  text_Draw( fntMain, 0, 32, 'Second finger X, Y: ' + u_IntToStr( touch_X( 1 ) ) + '; ' + u_IntToStr( touch_Y( 1 ) ) );
+  text_Draw( fntMain, 0, 0, 'First finger X, Y: ' + u_IntToStr( touch_X( 0 ) ) + '; ' + u_IntToStr( touch_Y( 0 ) ) );
+  text_Draw( fntMain, 0, 16, 'Second finger X, Y: ' + u_IntToStr( touch_X( 1 ) ) + '; ' + u_IntToStr( touch_Y( 1 ) ) );
 
   // RU: Выводим введённый пользователем текст.
   // EN: Show the inputted text.

+ 3 - 0
demos/Android/03 - Input/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/04 - Screen Settings/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/05 - Primitives/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/06 - Text/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/07 - Sprites/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/08 - Sprite Engine/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/09 - Sprite Engine(Classes)/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/10 - Tiles/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/11 - Grid/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/12 - Render into Texture/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/13 - Particles/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/14 - Sound/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/15 - Video/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 3 - 0
demos/Android/16 - Physics/src/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 2 - 4
demos/iOS/03_Input/demo03/demo03.pas

@@ -45,12 +45,10 @@ procedure Draw;
   var
     w : Single;
 begin
-  text_Draw( fntMain, 0, 0, 'Escape - Exit' );
-
   // RU: Координаты "пальцев" можно получить при помощи функций touch_X и touch_Y.
   // EN: "Finger" coordinates can be got using functions touch_X and touch_Y.
-  text_Draw( fntMain, 0, 16, 'First finger X, Y: ' + u_IntToStr( touch_X( 0 ) ) + '; ' + u_IntToStr( touch_Y( 0 ) ) );
-  text_Draw( fntMain, 0, 32, 'Second finger X, Y: ' + u_IntToStr( touch_X( 1 ) ) + '; ' + u_IntToStr( touch_Y( 1 ) ) );
+  text_Draw( fntMain, 0, 0, 'First finger X, Y: ' + u_IntToStr( touch_X( 0 ) ) + '; ' + u_IntToStr( touch_Y( 0 ) ) );
+  text_Draw( fntMain, 0, 16, 'Second finger X, Y: ' + u_IntToStr( touch_X( 1 ) ) + '; ' + u_IntToStr( touch_Y( 1 ) ) );
 
   // RU: Выводим введённый пользователем текст.
   // EN: Show the inputted text.

+ 3 - 0
headers/android/zengl/android/ZenGL.java

@@ -71,6 +71,7 @@ public class ZenGL extends GLSurfaceView
 
 		InputManager = (InputMethodManager)context.getSystemService( Context.INPUT_METHOD_SERVICE );
 		setFocusableInTouchMode( true );
+		((Activity)context).getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN );
 
 		zglNativeInit( SourceDir, DataDir );
 		Main();
@@ -203,6 +204,8 @@ public class ZenGL extends GLSurfaceView
 			HideKeyboard();
 		else if ( keyCode == KeyEvent.KEYCODE_DEL )
 			zglNativeBackspace();
+		else if ( keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9 )
+			zglNativeInputText( ((Integer)(keyCode - 7)).toString() );
 
 		return super.onKeyDown( keyCode, event );
 	}

+ 2 - 2
headers/zglHeader.h

@@ -2,8 +2,8 @@
 /*-----------= ZenGL =------------*/
 /*--------------------------------*/
 /*                                */
-/* version:  0.3.1                */
-/* date:     2012.08.26           */
+/* version:  0.3.2                */
+/* date:     2012.08.30           */
 /* license:  GNU LGPL version 3   */
 /* homepage: http://zengl.org     */
 /*                                */

+ 2 - 2
headers/zglHeader.pas

@@ -2,8 +2,8 @@
 {-----------= ZenGL =------------}
 {--------------------------------}
 {                                }
-{ version:  0.3.1                }
-{ date:     2012.08.26           }
+{ version:  0.3.2                }
+{ date:     2012.08.30           }
 { license:  GNU LGPL version 3   }
 { homepage: http://zengl.org     }
 {                                }

+ 2 - 1
src/Lazarus/ZenGL-win.lpi

@@ -16,8 +16,9 @@
     <VersionInfo>
       <UseVersionInfo Value="True"/>
       <MinorVersionNr Value="3"/>
+      <RevisionNr Value="2"/>
       <CharSet Value="04B0"/>
-      <StringTable CompanyName="Kemka Andrey aka Andru" FileDescription="Cross-platform game development library" InternalName="ZenGL" LegalCopyright="Kemka Andrey aka Andru" OriginalFilename="ZenGL" ProductName="ZenGL" ProductVersion="0.3.1"/>
+      <StringTable CompanyName="Kemka Andrey aka Andru" FileDescription="Cross-platform game development library" InternalName="ZenGL" LegalCopyright="Kemka Andrey aka Andru" OriginalFilename="ZenGL" ProductName="ZenGL" ProductVersion="0.3.2"/>
     </VersionInfo>
     <BuildModes Count="4">
       <Item1 Name="Release" Default="True"/>

BIN
src/ZenGL.res