Commit Graph

41 Commits

Author SHA1 Message Date
Hajime Hoshi
dd7e125d9c ebiten: add KeyName for desktops and browsers
Updates #1904
2022-12-25 03:37:29 +09:00
Hajime Hoshi
d1b9a0a9a1 internal/ui: freeze the input state for each frame
After this change, the input APIs will return more consistent results
for one frame.

Closes #2496
2022-12-18 23:54:43 +09:00
Hajime Hoshi
3152d88477 internal/ui: remove old Edge browser support
Closes #1059
2022-12-16 22:56:36 +09:00
Hajime Hoshi
3386908902 ebiten: swap the definition MouseButtonMiddle and MouseButtonRight
This follows the Web standard.

Closes #2468
2022-11-27 13:51:09 +09:00
Hajime Hoshi
9e9cec249a ebiten: make some MouseButton definitions explicit
This change redefines named mouse button consts like MouseButtonLeft
to use MouseButton0, so that users can know which enums are the same
and different.

Updates #2445
2022-11-23 04:41:11 +09:00
Kacper Drobny
6e12fd13e4
ebiten: add additional MouseButtons (#2467)
Closes #2445
2022-11-23 04:28:34 +09:00
Hajime Hoshi
b5ddee3e4a internal/ui: bug fix: reentering updateImpl caused double unlocking
updateImpl can be invoked in multiple ways. This should have been
protected by a mutex, or this caused unexpected reentrance.

Closes #2339
2022-09-20 13:19:43 +09:00
Hajime Hoshi
e505098e55 internal/ui: handle error at forceUpdateOnMinimumFPSMode
Updates #2287
2022-09-09 22:49:34 +09:00
Hajime Hoshi
72d5002e72 remove go2cpp support
Closes #2126
2022-08-07 22:17:53 +09:00
Hajime Hoshi
2203c3c448 internal/ui: remove the keypress event and the charCode preperty usages
These APIs are deprecated.

Closes #2199
2022-07-12 23:36:58 +09:00
Hajime Hoshi
be1836339b internal/ui: define the common struct UserInterface for all the environments
The existing UserInterface structs became userInterfaceImpl structs.
2022-03-21 23:10:27 +09:00
Hajime Hoshi
9b2f0b6c56 internal/ui: rename ResetForFrame -> ResetForTick
Resetting happens every tick, not every frame.
2022-02-13 19:54:40 +09:00
Hajime Hoshi
b282b1805b internal/ui: refactoring: add ui.SetError
This is a preparation to move uiContext to the package internal/ui.
2022-02-13 17:17:08 +09:00
Hajime Hoshi
80c03792cb internal/driver: move the key definitions to internal/ui
Updates #1983
2022-02-06 19:14:18 +09:00
Hajime Hoshi
2fbfa5444b internal/driver: remove Input 2022-02-06 18:34:31 +09:00
Hajime Hoshi
6f72b15912 internal/driver: move some definitions to internal/ui
Updates #1983
2022-02-06 18:13:45 +09:00
Hajime Hoshi
149736c3cf internal/uidriver/*: integrate the packages into internal/ui
Updates #1983
2022-02-06 17:23:04 +09:00
Hajime Hoshi
4de2dc0240 Add input package 2018-04-01 23:20:45 +09:00
Hajime Hoshi
37ca48dc38 ui: Rename functions from Safari to Edge 2017-11-10 00:35:46 +09:00
Hajime Hoshi
600baf2cc7 ui: Add IsGamepadPresent
Fixes #447
2017-10-26 02:59:33 +09:00
Jake
0d703ca3d4 InputChars (#403)
This implements #400
2017-08-15 04:11:51 +09:00
Hajime Hoshi
4e22bd770f ui: Remove Input interface and remove locks on browsers to improve performance (#346) 2017-04-28 23:45:01 +09:00
Hajime Hoshi
0dafbfe99d ui: Speed optimization for browser keyboard inputs 2017-04-27 11:40:32 +09:00
Hajime Hoshi
0cd692d26a ui: Use code instead of keyCode on browsers but Safari 2017-04-14 03:02:38 +09:00
Hajime Hoshi
88cfdf8878 ui: Remove println 2017-04-11 12:00:40 +09:00
Hajime Hoshi
187a93d80a ui: Bug fix: IsKeyPressed might return a wrong value when only one of Shift/Ctrl/Alt keys is pressed 2017-04-11 11:56:05 +09:00
Hajime Hoshi
aa1e7e9cd6 Revert "ui: Use code instead of keyCode on browsers (#339)"
This reverts commit d7ea02d8c1.
2017-04-10 20:38:23 +09:00
Hajime Hoshi
d7ea02d8c1 ui: Use code instead of keyCode on browsers (#339) 2017-04-10 20:30:28 +09:00
Hajime Hoshi
bdaff72af9 input: Implement Touches function (WIP) (#101) 2016-05-27 01:31:30 +09:00
Hajime Hoshi
c36dd3df52 ui: Change Input to be an interface 2016-05-20 00:15:05 +09:00
Hajime Hoshi
6ac6b8e7c0 input: Make functions goroutine-safe (#192) 2016-03-24 23:51:20 +09:00
Hajime Hoshi
23b3f1afce Move some files of internal/ui to the root 2015-01-27 01:10:17 +09:00
Hajime Hoshi
5b41374ac7 Support touch events (esp. for mobile browsers) (#76) 2015-01-21 02:58:29 +09:00
Hajime Hoshi
02dbeef1b9 Add docs for gamepad API (I checked it worked on Chrome) 2015-01-12 14:59:12 +09:00
Hajime Hoshi
8987f7a645 Implement Gamepad API for JavaScript (working on Firefox so far) 2015-01-12 14:36:13 +09:00
Hajime Hoshi
a6b7eab71b Add Gamepad API 2015-01-12 02:29:56 +09:00
Hajime Hoshi
6bdc875596 Bug fix: Ignore unknown keys 2015-01-07 23:02:58 +09:00
Hajime Hoshi
a9f1b4f0e9 Add keys_glfw.go and keys_js.go 2015-01-07 00:05:46 +09:00
Hajime Hoshi
0ab90197a3 Implement IsMouseButtonPressed / CursorPosition in JS (#53) 2015-01-06 23:41:03 +09:00
Hajime Hoshi
47227139db Implement keyboard events for js 2015-01-03 00:52:49 +09:00
Hajime Hoshi
cadb3fffdf Add ui_js.go and input_js.go 2015-01-02 15:20:05 +09:00