Commit graph

98 commits

Author SHA1 Message Date
Richard Davey
468bf7821d Updated copyright year 2023-01-02 17:36:27 +00:00
Richard Davey
c53dc4a5a1 Removed alwaysEnabled property entirely. #5507 #6306 2022-12-09 18:03:41 +00:00
Richard Davey
436a42cfb4 The InputPlugin.sortGameObjects method was using the Camera Render List to determine the Game Object display list. This would exclude non-rendering objects, such as Game Objects with alpha set to zero, even if their Input alwaysEnable flag was set. This method now uses the Display List instead, which gives correct results for invisible 'always enabled' objects. Fix #5507 2022-11-21 23:26:44 +00:00
Richard Davey
987e769b6b Scenes.Systems.canInput is a new internal method that determines if a Scene can receive Input events, or not. This is now used by the InputPlugin instead of the previous isActive test. This allows a Scene to emit and handle input events even when it is running init or preload. Previously, it could only do this after create had finished running. Fix #6123 2022-11-08 23:21:33 +00:00
Richard Davey
59fbcc5ca3 Updated copyright year 2022-02-28 14:29:51 +00:00
Richard Davey
91f72f7700 The InputManager.onTouchMove method will now check if the changed touch is over the canvas, or not, via the DOM elementFromPoint function. This means if the touch leaves the canvas, it will now trigger the GAME_OUT and GAME_OVER events, where-as before this would only happen for a Mouse. If the touch isn't over the canvas, no Pointer touch move happens, just like with the mouse. Fix #5592 2021-12-01 16:36:06 +00:00
Richard Davey
d36c8177b5 Update InputManager.js 2021-12-01 13:15:27 +00:00
Richard Davey
02c34cd64e Replace integer with number 2020-11-23 10:22:13 +00:00
Richard Davey
f2fca49b3f Remove Camera resolution use 2020-09-12 11:55:26 +01:00
Richard Davey
a04690d5af The onMouse events in the Input Manager didn't reset the activePointer property to the mouse, meaning on dual-input systems such as Touch Screen devices, the active pointer would become locked to whichever input method was used first. Fix #4615 #5232 2020-09-11 09:48:13 +01:00
Richard Davey
ff65e69cd1 Changed copyright date to 2020 2020-01-15 12:07:09 +00:00
Richard Davey
d875a59958 InteractiveObject.alwaysEnabled is a new boolean that allows an interactive Game Object to always receive input events, even if it's invisible or won't render. 2019-09-24 12:36:28 +01:00
Richard Davey
aceecf0b95 InputManager.resetCursor will now check if the canvas element still exists before resetting the cursor on it. Fix #4662 2019-07-19 14:32:07 +01:00
Richard Davey
af37728e31 Added onPointerLockChange handler. 2019-07-08 13:29:50 +01:00
Richard Davey
6004237d37 Get the correct time value 2019-06-20 09:58:59 +01:00
Richard Davey
98be6adfda Native support for wheel events 2019-06-05 15:31:13 +01:00
Richard Davey
4ed0f90bf7 Merged touch handler methods into one 2019-06-04 18:54:35 +01:00
Richard Davey
9b93ad9985 Removed changed pointers IIFE and un-needed method methods 2019-06-04 15:40:05 +01:00
Richard Davey
78d15b0b0f Fixed arguments 2019-05-28 21:41:04 +01:00
Richard Davey
3c52a3b27a Pass the pointers array in directly, no need to iterate them all every time 2019-05-28 21:31:54 +01:00
Richard Davey
7142319f24 Removed un-used methods and properties 2019-05-28 16:58:31 +01:00
Richard Davey
961e858cbf Working through making the Input system DOM responsive and not reliant on the game step 2019-05-24 19:30:13 +01:00
Richard Davey
7073f39a19 Removed all of the DOM Callbacks, input queue and legacy input handling. Renamed methods from 'queue' to 'on' and tidied up internal content 2019-05-23 17:19:30 +01:00
Richard Davey
c91ed91ce3 License link update 2019-05-10 16:15:04 +01:00
Richard Davey
290389c4ae Input Types 2019-05-09 12:02:03 +01:00
Richard Davey
31c0b4f2ff Update now always runs but only once per frame 2019-04-24 10:04:13 +01:00
Richard Davey
3938675d9f Input typedefs 2019-02-13 14:17:36 +00:00
Richard Davey
f3f65d1437 Refactored the game over and out handling to work with the non-legacy input system. Fix #4344 2019-02-10 17:10:13 +00:00
Richard Davey
7f91956c09 Added time property and preStep. 2019-02-08 13:32:44 +00:00
Richard Davey
4cfa29a524 Added flag to help avoid cursor reset issue 2019-02-04 23:29:10 +00:00
Richard Davey
d04232ae54 JSDoc fixes 2019-02-04 11:45:17 +00:00
Richard Davey
eb78cf90c6 Swapped to using the Scene iteration approach instead of an event, as it fixes the issue with Scene ordering and global priority. Fix #4327 #4321 2019-01-29 01:05:27 +00:00
Richard Davey
b60a2df8ad Refactor of the Input Manager to allow for direct DOM Event dispatching. 2019-01-23 15:51:26 +00:00
Richard Davey
1d85795360 Listen for the new Events 2019-01-17 11:31:22 +00:00
Richard Davey
c3ab9ddee3 Added Input Manager events 2019-01-17 10:35:02 +00:00
Richard Davey
01905f0cb6 Added lots of the Input Events 2019-01-16 12:13:30 +00:00
Richard Davey
aa341854c7 Happy New Year 2019-01-15 16:20:22 +00:00
Richard Davey
e882218fc4 Renamed boot to core and updated events accordingly 2019-01-15 16:17:04 +00:00
Richard Davey
9bed15bc53 Moving lots of functionality to the Scale Manager
* `InputManager.scaleManager` is a new property that is a reference to the Scale Manager. This is populated in the `boot` method.
* The `InputManager.transformX` method has been removed. This is now available in the ScaleManager.
* The `InputManager.transformY` method has been removed. This is now available in the ScaleManager.
* The `InputManager.scale` property has been removed. This is now available in the ScaleManager under `displayScale`.
* The `InputManager.resize` method has been removed as this process is now handled by the ScaleManager.
* The `InputManager.updateBounds` method has been removed as this process is now handled by the ScaleManager.
* The `InputManager.getOffsetX` method has been removed as it's no longer required.
* The `InputManager.getOffsetY` method has been removed as it's no longer required.
* The `InputManager.getScaleX` method has been removed as it's no longer required.
* The `InputManager.getScaleY` method has been removed as it's no longer required.
2019-01-11 12:12:06 +00:00
Richard Davey
36f08d83e6 The processDomCallbacks method in the Input Manager wasn't correctly clearing the once arrays. Responsibility for this has now been passed to the queue methods queueTouchStart, queueTouchMove, queueTouchEnd, queueMouseDown, queueMouseMove and queueMouseUp. Fix #4257 2019-01-04 14:03:21 +00:00
Richard Davey
7aabb98b8e Re-enabled IM 2018-12-18 17:29:15 +00:00
Richard Davey
97805afab0 Input Manager now creates Keyboard Manager. 2018-12-05 16:01:39 +00:00
Richard Davey
606a3832c1 Moving to a global keyboard manager for the DOM events. 2018-12-05 11:16:45 +00:00
Richard Davey
0d2197d9f7 Added new isOver property and method handlers. 2018-11-28 13:10:25 +00:00
Richard Davey
d2cb4a4006 Pass the time to Pointer.reset 2018-11-26 13:10:54 +00:00
Richard Davey
0f97be3624 Restored pointer smoothing 2018-11-24 12:47:01 +00:00
Richard Davey
b9fb1ddbf4 Added call to updateMotion 2018-11-23 18:58:13 +00:00
Richard Davey
370ccb6854 Removed debug properties. 2018-11-23 16:25:31 +00:00
Richard Davey
d6bee1bbd1 Working through event debugging - don't pull this version unless you want logs everywhere! 2018-11-22 17:18:31 +00:00
Richard Davey
0c43da0211 Fixed jsdoc link, added smooth factor setter and updated transformPointer method. 2018-11-19 15:31:06 +00:00