Commit Graph

64 Commits

Author SHA1 Message Date
Hajime Hoshi
4106fb15fe internal/gamepaddb: implement the mappings for Android
Updates #1557
2022-01-09 03:29:19 +09:00
Hajime Hoshi
f51d691d87 mobile/ebitenmobileview: refactoring 2022-01-07 17:50:49 +09:00
Hajime Hoshi
7e08333dd9 mobile/ebitenmobileview: bug fix: gamepads didn't work on Android
Closes #1934
2022-01-07 17:16:37 +09:00
Hajime Hoshi
a70be6e2f8 internal/uidriver/mobile: Refactoring
Updates #1105
2021-10-16 23:46:14 +09:00
Hajime Hoshi
2d9349824f internal/uidriver/mobile: Separate UpdateInput into UpdateInput and UpdateGamepads 2021-10-16 20:37:01 +09:00
Hajime Hoshi
ad3115b347 mobile/ebitenmobileview: Avoid creating slices every frame 2021-10-16 18:39:47 +09:00
Hajime Hoshi
12350e2fee Fix build tags for Go 1.17 2021-08-17 12:27:19 +09:00
Hajime Hoshi
1706d9436a ebiten: Add FPSModeType, FPSMode, SetFPSMode, and ScheduleFrame
This change adds these APIs:

  * type FPSModeType
  * func FPSMode
  * func SetFPSMode
  * func ScheduleFrame

and deprecates these APIs:

  * func SetVsyncEnabled
  * func IsVsyncEnabled

Closes #1556
2021-07-24 16:09:13 +09:00
Hajime Hoshi
aa694be6f6 ebiten: Add the standard gamepad layout
This change introduces the standard gamepad layout. This changes adds
these APIs:

  * func HasGamepadStandardLayoutMapping
  * func IsGamepadStandardButtonPressed
  * func GamepadStandardAxisValue
  * type StandardGamepadButton
  * type StandardGamepadAxis

The standard gamepad layout is based on the web standard. See
https://www.w3.org/TR/gamepad/#remapping.

On desktops, the SDL's gamecontrllerdb.txt is used. If the gamepad is
listed in the text file, the mapping works. GLFW's mapping featrue is
not used.

On browsers, the property of a gamepad 'mapping' is used. When the
mapping value is 'standard', the gamepad is recognized to have the
standard mapping.

On mobiles, the implementation is still WIP.

Updates #1557
2021-07-20 01:32:28 +09:00
Hajime Hoshi
fcfdf9b2ba Update URLs 2021-07-19 23:09:27 +09:00
Hajime Hoshi
58843b68f9 internal/hooks: Enable to return error at suspend/resume audio 2021-05-04 23:09:01 +09:00
Hajime Hoshi
4398a5e227 ebiten: Change the key name convention to follow the Web standard
Closes #1394
2021-04-14 22:49:07 +09:00
Hajime Hoshi
2e6e1ed39d mobile/ebitenmobileview: Add DeviceScale and use it at EbitenView
Closes #1482
2021-04-11 02:30:39 +09:00
Hajime Hoshi
9b335ae6dd mobile/ebitenmobileview: Performance improvement at updateInput 2021-03-14 22:24:45 +09:00
Hajime Hoshi
5ee3fdf628 ebiten: Add KeySuper
Fixes #1382
2020-10-11 18:40:40 +09:00
Hajime Hoshi
b1c67c7661 ebiten: Introduce type TouchID
Fixes #604
2020-10-10 03:57:47 +09:00
Hajime Hoshi
809b7a3afa ebiten: Introduce type GamepadID
Updates #604
2020-10-08 01:57:08 +09:00
Hajime Hoshi
dd4c8be988 mobile: Remove deprecated functions
Updates #1127
2020-10-04 15:47:06 +09:00
Hajime Hoshi
bf515bb594 Update version to v2.0.0-alpha 2020-10-04 04:30:40 +09:00
Hajime Hoshi
91aa6a0f3a mobile/ebitenmobileview: Remove mutex usages 2020-08-29 00:18:42 +09:00
Hajime Hoshi
71e65fa1b7 cmd/ebitenmobile: Use an explict way to detect context lost on Android
Fixes #1176
2020-08-15 01:39:08 +09:00
Hajime Hoshi
f350b03232 cmd/ebitenmobileview: Bug fix: Crash when removing a gamepad
Fixes #1185
2020-06-09 23:42:32 +09:00
Hajime Hoshi
bc3d1393a6 mobile/ebitenmobileview: Implement gamepads' SDLID on Android
Fixes #1083
2020-03-25 02:28:30 +09:00
Hajime Hoshi
4ec49dd4cf mobile/ebitenmobileview: Implement Android gamepad axes
Updates #1083
2020-03-25 01:15:43 +09:00
Hajime Hoshi
8fcee54849 mobile/ebitenmobileview: Implement Android gamepad buttons
This is still work in progress.

Updates #1083
2020-03-23 01:30:17 +09:00
Hajime Hoshi
3af869732c uidriver/mobile: Implement InputChars for gomobile-build
This change also fixes InputChars to return only printable Unicode
chars on Android.

Updates #237
2020-02-23 01:01:40 +09:00
Hajime Hoshi
de52eb75e4 mobile/ebitenmobileview: Implement InputChars on Android / ebitenmobile
Updates #237
2020-02-23 00:51:49 +09:00
Hajime Hoshi
0ea5e65c92 mobile/ebitenmobileview: Bug fix: compile error 2020-02-23 00:36:40 +09:00
Hajime Hoshi
1dd0c22510 mobile/ebitenmobileview: Bug fix: Wrong key names 2020-02-22 13:45:01 +09:00
Hajime Hoshi
cd4cb435f2 keys: Refactoring: Rename and reverse a map (androidKeyToDriverKeyName) 2020-02-22 03:28:59 +09:00
Hajime Hoshi
5b7151595b mobile/ebitenmobileview: Handle keyboard keys on Android (ebitenmobile)
Updates #237
2020-02-20 01:53:51 +09:00
Hajime Hoshi
db2c4dc260 mobile/ebitenmobile: Rename functions
This is a preparation for other input devices.

Updates #237
2020-02-19 01:51:05 +09:00
Hajime Hoshi
e20cbac8d8 mobile/ebitenmobileview: Rename files 2020-02-19 00:48:57 +09:00
Hajime Hoshi
d59aea1db1 driver: Remove the return value from RunWithoutMainLoop 2020-02-11 23:56:53 +09:00
Hajime Hoshi
aef4b4ba53 uidriver/mobile: Refactoring: Give a default outside size 2020-02-11 23:29:52 +09:00
Hajime Hoshi
d0fce2a2db mobile/ebitenmobileview: Refactoring 2020-02-11 22:43:00 +09:00
Hajime Hoshi
c927d33457 mobile/ebitenmobileview: Use the common uiContext for layouting
This means that the whole offscreen is cleared correctly.

This change is a little breaking change: SetScreenSize or other
functions no longer works on ebitenmobile. Use Layout instead.

Fixes #1019
2020-02-11 19:40:47 +09:00
Hajime Hoshi
1b4c9f4e4d uidriver/mobile: Remove impl.go 2020-02-11 14:50:55 +09:00
Hajime Hoshi
a303487328 uidriver/mobile: Add comments 2020-02-11 14:45:50 +09:00
Hajime Hoshi
802693fa20 uidriver/mobile: Implement IsForeground
This adds hooks on resuming/suspending the application, and
switches the foreground state there. This change also updates
the logic to suspend the game loop to be clearer.

Fixes #1037
2020-01-23 02:08:31 +09:00
Hajime Hoshi
4fd39f258a mobile: Remove game definition and use ebiten.Game 2020-01-13 17:04:06 +09:00
Hajime Hoshi
bda11b0e17 driver: Add UI.SetWindowSize and UIContext.Layout
This is a preparation to introduce RunGame function.

Updates # 943 (Fix this line before committing)
2019-12-15 02:29:43 +09:00
Hajime Hoshi
8f08565488 mobile/ebitenmobileview: Use uidriver.mobile's functions
This is a preparation to deprecate SetScreenSize and
SetScreenScale.
2019-11-24 23:52:41 +09:00
Hajime Hoshi
c6cc298e0d mobile: Exclude non-mobile environments to build 2019-11-18 02:05:51 +09:00
Hajime Hoshi
725cc22200 uidriver/mobile: Rename Render -> Update 2019-11-17 21:52:06 +09:00
Hajime Hoshi
bf07ead6ae mobile/ebitenmobileview: Bug fix: Use Math.floor to shrink the size a little bit
Fixes #956
2019-10-17 12:21:06 +09:00
Hajime Hoshi
d488fd7fcb mobile/ebitenmobileview: Refactoring: touches 2019-10-11 23:12:05 +09:00
Hajime Hoshi
5973833274 mobile/ebitenmobileview: Refactoring 2019-10-11 22:49:28 +09:00
Hajime Hoshi
12d0f273ec mobile/ebitenmobileview: Allow to call update before start
This fixes an issue that Update on another thread returns error
when SetGame is not called. As SetGame is permitted to be called
later, Update should not return error.
2019-10-11 22:14:19 +09:00
Hajime Hoshi
01cb6e67b8 mobile/ebitenmobileview: Bug fix: Compile error on Android 2019-10-09 23:03:22 +09:00