Hajime Hoshi
4c76356803
internal/gamepad: refactoring
2022-09-09 22:31:47 +09:00
Hajime Hoshi
47558d20c5
internal/gamepaddb: enable the database for Android
...
Before this fix, the button and axis IDs are from the OS. These
didn't match with the SDL game controller databaes unfortunately.
This fix changes the assignments of the buttons and the axes to match
with the database.
Closes #2312
2022-09-09 22:20:39 +09:00
Hajime Hoshi
d66c599938
cmd/ebitenmobile: remove counting buttons and use a constant instead
...
Updates #2309
2022-09-07 15:43:11 +09:00
Hajime Hoshi
db1255cdf8
internal/gamepad: rename ButtonNum -> ButtonCount
2022-09-07 15:40:52 +09:00
divVerent
34a500c305
internal/gamepad: ignore EPERM when opening gamepads ( #2308 )
...
This seems required for the Snap sandbox when probing a non-gamepad device node.
Closes #2307
2022-09-06 21:29:32 +09:00
divVerent
9bc571af5e
internal/gamepad: fix a typo that caused oddly cut off gamepad names. ( #2300 )
...
This change allows gamepad names up to 256 characters, which is usually
enough. Before, names were cut off after 7 characters, matching the string
"Unknown" that is used if querying the name fails.
Closes #2300
2022-09-03 20:44:03 +09:00
Hajime Hoshi
8081d0636a
internal/cbackend: rename to nintendosdk
...
Updates #2242
2022-08-12 17:19:37 +09:00
Hajime Hoshi
e7c0a121c4
all: remove the build tag 'ebitencbackend'
...
This also automatically enables 'egl' when 'nintendosdk' is specified.
Updates #2242
2022-08-12 13:15:39 +09:00
Hajime Hoshi
dac6548c0c
all: rename ebitenginecbackend to nintendosdk
...
Updates #2242
2022-08-12 02:05:29 +09:00
Hajime Hoshi
094726915b
ebiten: add IsStandardGamepadAxisAvailable and IsStandardGamepadButtonAvailable ( #2241 )
...
Closes #2040
2022-08-11 12:35:20 +09:00
Hajime Hoshi
72d5002e72
remove go2cpp support
...
Closes #2126
2022-08-07 22:17:53 +09:00
Hajime Hoshi
abcacc26d8
internal/glfwwin: update for GLFW v3.3.8
...
Closes #2214
2022-08-07 15:03:33 +09:00
mattn
2bacecca24
fix typos ( #2227 )
2022-08-03 22:40:39 +09:00
Hajime Hoshi
356c625601
internal/gamepad: improve resetting vibrations
2022-07-16 02:44:54 +09:00
Hajime Hoshi
9e1a2bcb30
internal/gamepad: reorder function implements
2022-07-15 21:52:26 +09:00
Hajime Hoshi
d6547f12c6
internal/gamepad: implement gamepad vibrations for Xbox
...
Updates #2084
2022-07-15 21:33:23 +09:00
Hajime Hoshi
d231a35d3b
internal/gamepad: bug fix: release IDirectInputDevice8W on disconnecting
...
Closes #2205
2022-07-15 15:44:40 +09:00
Hajime Hoshi
520a30f3c7
internal/gamepad: bug fix: memory leak on Xbox
...
Updates #2084
2022-07-15 15:12:56 +09:00
Hajime Hoshi
c14403f195
internal/gamepad: bug fix: Y axis values are opposite on Xbox
...
Updates #2084
2022-07-15 14:55:38 +09:00
Hajime Hoshi
428b1263d9
add ebitenginecbackend build tag besides ebitencbackend
...
Updates #2111
Updates #2190
2022-07-09 15:23:52 +09:00
Hajime Hoshi
ac5c48f575
internal/gamepad: support Xbox
...
Updates #2084
2022-07-02 01:02:24 +09:00
Hajime Hoshi
a6f6fdbfb7
internal/gamepad: update for Xbox
...
Updates #2084
2022-07-01 20:43:49 +09:00
Hajime Hoshi
97039ff714
internal/gamepad: implement gamepad detection callbacks for Xbox
...
Updates #2084
2022-07-01 17:15:11 +09:00
Hajime Hoshi
bf27f25e26
internal/gamepad: bug fix: build failures on FreeBSD
2022-06-25 01:36:13 +09:00
Hajime Hoshi
2d23168aca
iinternal/gamepad: start implementation for Xbox
...
Updates #2084
2022-06-25 00:02:12 +09:00
Hajime Hoshi
3fb3997160
internal/gamepad: separate the Xbox part
...
Updates #2084
2022-06-24 22:49:37 +09:00
Hajime Hoshi
847c4f067a
internal/gamepad: make nativeGamepad(s) interfaces
...
This is a preparation to switch the gamepad implementation for Xbox.
Updates #2084
2022-06-24 21:52:48 +09:00
Hajime Hoshi
0cd43bd081
internal/gamepad: stop embedding a member into a struct
...
This is a preparation to switch the gamepad implementation for Xbox.
Updates #2084
2022-06-24 19:01:50 +09:00
Hajime Hoshi
51fe48fb76
internal/gamepad: bug fix: wrong offset especially on 32bit Linux
...
Closes #2122
2022-06-05 12:48:47 +09:00
Hajime Hoshi
8e4e3d67c4
internal/gamepad: refactoring
2022-06-03 19:00:21 +09:00
Hajime Hoshi
2eb4ef1a94
internal/gamepad: give a window from another package instead of GetActiveWindow
...
GetActiveWindow doesn't work on Xbox.
Updates #2084
2022-06-03 18:42:54 +09:00
Hajime Hoshi
1580e92dfc
internal/gamepad: refactoring
2022-06-03 18:06:54 +09:00
Hajime Hoshi
90d26305e7
internal/gamepad: unify the naming convention for Win32API with other packages
2022-06-03 16:59:44 +09:00
Hajime Hoshi
124f233de0
internal/gamepad: cast returning values to uint32
2022-06-03 16:52:49 +09:00
Hajime Hoshi
4a684c4195
treat Windows error values as uint32 instead of windows.Handle
...
The error value are defined as windows.Handle (64bit) in
golang.org/x/sys/windows, but an actual type should be HRESULT (32bit).
This causes an issue that a returning value from a Windows API was
recognized as a non-zero error value though the value was not an error,
when the value's lower 32-bits are all zero.
See also https://github.com/golang/go/issues/48736#issuecomment-1143993096
Updates #2113
2022-06-02 12:10:21 +09:00
Hajime Hoshi
1202e66114
internal/gamepad: bug fix: out of range at hatState on Windows
...
Closes #2103
2022-05-25 11:44:46 +09:00
Hajime Hoshi
0577a28aed
all: add struct members for go-vet
...
Updates #1306
2022-05-22 22:05:40 +09:00
Hajime Hoshi
8d3de6207b
internal/gamepad: add a warning message when getGamepads is not available
...
Updates #2100
2022-05-21 23:25:56 +09:00
Hajime Hoshi
8d318fc4de
internal/gamepad: bug fix: getGamepads might not be available under a non-secure context
...
Closes #2100
2022-05-21 23:22:50 +09:00
Hajime Hoshi
3d00bb1fa2
internal/gamepad, internal/ui: type-cast returning values from Win32APIs just in case
2022-05-11 00:48:44 +09:00
Hajime Hoshi
07a7aca1b3
internal/gamepad: skip gamepads with more than 32 buttons
...
This change was removed at ef45058037
accidentally.
Updates #1173
Updates #2039
2022-04-01 02:24:15 +09:00
divVerent
1de1bfef55
internal/gamepad: fix uint16 underflow handling in gamepads. ( #2030 )
...
Fixes crash where Ebiten considers a keyboard a gamepad with way too many buttons.
Updates #2027
2022-03-26 15:41:59 +09:00
Hajime Hoshi
e4d0050452
internal/gamepad: bug fix: compile error
...
Updates #2027
2022-03-25 14:35:03 +09:00
Hajime Hoshi
b985689010
internal/gamepad: bug fix: crash when a too big button code is reported on Linux
...
Updates #2027
2022-03-25 14:28:09 +09:00
divVerent
476f4e3f9a
internal/gamepad: fix SetWindowLongPtrW crash on 32-bit Windows ( #1999 )
...
Closes #1998
2022-02-23 23:18:20 +09:00
Hajime Hoshi
bf33658e64
internal/gamepad: respect original names more
2022-02-15 04:07:11 +09:00
Hajime Hoshi
5f59807284
internal/gamepad: refactoring
2022-02-12 03:49:09 +09:00
Hajime Hoshi
19bfc97a5e
mobile/ebitenmobileview: bug fix: compile error
2022-02-05 23:26:44 +09:00
Hajime Hoshi
67663795fd
internal/gamepaddb: move driver.StandardGamepadButton to gamepaddb.StandardButton
2022-02-05 23:11:09 +09:00
Hajime Hoshi
627509e974
internal/gamepad: move driver.GamepadButton to gamepad.Button
2022-02-05 23:03:30 +09:00