Commit graph

643 commits

Author SHA1 Message Date
Richard Davey
e882218fc4 Renamed boot to core and updated events accordingly 2019-01-15 16:17:04 +00:00
Richard Davey
d161c7f253 Corrected jsdocs 2019-01-11 19:16:43 +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
21c9326e07 Change when dragState is populated. Fix #4278 2019-01-05 10:03:11 +00:00
Richard Davey
730c84e3e3 Draggable Game Objects would not work if you had multiple Scenes running in parallel, with draggable objects in both of them. Only the top-most Scene would work fully. Items in the bottom Scene would never finish their drag cycle, causing them to get stuck. Fix #4249 2019-01-04 16:34:59 +00:00
Richard Davey
9a7058915c Removed dragState property. 2019-01-04 16:34:53 +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
b8fbd0d2c0 keydown and keyup events now fire for every possible key, no matter if they exist in the KeyCodes list or not. 2018-12-12 16:50:04 +00:00
Richard Davey
50502cfb63 Added emitOnRepeat boolean 2018-12-07 19:28:25 +00:00
Richard Davey
1df20f9070 Keyboard events can now be blocked on a local or global level. 2018-12-06 11:35:16 +00:00
Richard Davey
715e6d3c15 Added key capturing methods. 2018-12-05 16:07:47 +00:00
Richard Davey
114d61cf59 Added capture handling and event queue. 2018-12-05 16:02:29 +00:00
Richard Davey
97805afab0 Input Manager now creates Keyboard Manager. 2018-12-05 16:01:39 +00:00
Richard Davey
7431f0a621 No longer required. 2018-12-05 15:58:53 +00:00
Richard Davey
dd051ddc03 Added event handlers and event emitter. 2018-12-05 15:58:44 +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
1b28080575 Added pointerupoutside and pointerdownoutside events. 2018-11-29 13:44:42 +00:00
Richard Davey
5b5b83d269 Added downElement and upElement properties 2018-11-29 13:44:18 +00:00
Richard Davey
a065bf1b46 Added global touchstart handler. 2018-11-29 13:42:40 +00:00
Richard Davey
b8f7ecb317 Removed Vec2 and added global handlers with capture tests. 2018-11-29 13:42:26 +00:00
Richard Davey
f2de618b24 Touch Manager will now handle focus events as well. 2018-11-28 13:13:44 +00:00
Richard Davey
5623515c41 Mouse Manager will track over and out states and auto focus. 2018-11-28 13:13:25 +00:00
Richard Davey
4b50065dfd Touch Manager will track over and out canvas states. 2018-11-28 13:11:13 +00:00
Richard Davey
4a312f16db Input Plugin will now emit a gameover or gameout event and has an isOver property. 2018-11-28 13:10:54 +00:00
Richard Davey
0d2197d9f7 Added new isOver property and method handlers. 2018-11-28 13:10:25 +00:00
Richard Davey
524892f095 Fixed angle value and facing direction 2018-11-26 15:42:53 +00:00
Richard Davey
a74616b090 Added getDistanceX and getDistanceY 2018-11-26 15:35:18 +00:00
Richard Davey
41e64b9f53 Added time property, getDistance, getDuration and getAngle. 2018-11-26 13:11:24 +00:00
Richard Davey
d2cb4a4006 Pass the time to Pointer.reset 2018-11-26 13:10:54 +00:00
Richard Davey
b437efa642 Removed un-used function 2018-11-26 11:29:13 +00:00
Richard Davey
f51de18bb2 Updated docs and added quick bail-out clause 2018-11-26 11:27:02 +00:00
Richard Davey
93a76475ea The Input Plugin was emitting a preUpdate event, with the capital U, instead of preupdate. This has now been corrected. Fix #4185 2018-11-26 11:13:25 +00:00
Richard Davey
d596fbd8c0 Added distance property. 2018-11-24 13:04:14 +00:00
Richard Davey
f6efccb29a Added motionFactor property. 2018-11-24 12:52:20 +00:00
Richard Davey
c32a69acaf Added midPoint and updateMotion calculations 2018-11-24 12:47:19 +00:00
Richard Davey
0f97be3624 Restored pointer smoothing 2018-11-24 12:47:01 +00:00
Richard Davey
390f34c8d9 Removed test code 2018-11-24 12:46:49 +00:00
Richard Davey
51a9b3bd4a Recording positon tests 2018-11-23 19:06:59 +00:00
Richard Davey
21fa1960f3 Testing delta store 2018-11-23 19:06:47 +00:00
Richard Davey
b9fb1ddbf4 Added call to updateMotion 2018-11-23 18:58:13 +00:00
Richard Davey
1650857878 Removed debug tests 2018-11-23 16:26:49 +00:00
Richard Davey
370ccb6854 Removed debug properties. 2018-11-23 16:25:31 +00:00
Richard Davey
69a0dcc9cf Remove debug data. 2018-11-23 16:23:47 +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
7c00bd4dc8 Added Pointer.velocity and Pointer.angle as they're so common for gesture calculations. 2018-11-20 17:03:22 +00:00
Richard Davey
0c43da0211 Fixed jsdoc link, added smooth factor setter and updated transformPointer method. 2018-11-19 15:31:06 +00:00
Richard Davey
57084cb65e Added Pointer.smoothFactor property, and pass new boolean to input manager. 2018-11-19 15:30:42 +00:00
Richard Davey
578158cfcb Updated docs 2018-11-13 17:04:31 +00:00
Richard Davey
8de7973c92 Added new captures array. 2018-11-13 15:09:18 +00:00
Richard Davey
837cc4e86d Swapped hit area size detection priority 2018-11-12 23:19:49 +00:00
Richard Davey
696e3dc6b8 Prevent non-modified keys only 2018-11-12 23:01:30 +00:00
Richard Davey
d8b0bf7a29 Added metaKey support 2018-11-12 23:00:56 +00:00
Richard Davey
5f92b05fd7 Added game config keyboard capture flag for global preventDefault handling. 2018-11-12 22:22:12 +00:00
samme
7ff8d51f98 Docs for input and physics events 2018-10-24 12:14:44 -07:00
Richard Davey
37876f93ab
Merge pull request #4124 from wmateam/hotfix/forgotten-keycode
Add forgotten keycode and letters
2018-10-19 13:18:28 +01:00
Mohammad Javad Afkari
4b5d8d0878 + add forgotten keyCode (firefox in windows) 2018-10-19 11:42:57 +03:30
Richard Davey
c9b7ce3938 The Mouse Manager class has been updated to remove some commented out code and refine the startListeners method. 2018-10-18 22:04:41 +01:00
Mohammad Javad Afkari
0dfdeb1f92 + forgotten keyCode (firefox) 2018-10-18 22:44:24 +03:30
Richard Davey
557955e057 Merging Scale Manager and Spine Plugin back into master 2018-10-18 14:59:27 +01:00
Richard Davey
61008f4eda 3.15.1 Release 2018-10-16 16:24:43 +01:00
Richard Davey
8db61274f7 Swapping to American-English spelling for consistency
~sigh~ it looks so wrong
2018-10-16 15:23:36 +01:00
Richard Davey
c23f701456 The Touch Manager, Input Manager and Pointer classes all now handle the touchcancel event, such as triggered on iOS when activating an out of browser UI gesture, or in Facebook Instant Games when displaying an overlay ad. This should prevent issues with touch input becoming locked on iOS specifically. Fix #3756 2018-10-16 11:44:36 +01:00
Richard Davey
dab510f03d The Touch Manager has been rewritten to use declared functions for all touch event handlers, rather than bound functions. This means they will now clear properly when the TouchManager is shut down. 2018-10-16 11:44:15 +01:00
Richard Davey
8dff537b12 Added TOUCH_CANCEL constant. 2018-10-16 11:43:40 +01:00
Richard Davey
7daa8b9d45 Added touchcancel handler and wasCancelled property 2018-10-16 11:42:54 +01:00
Richard Davey
f29126c482 KeyboardPlugin.resetKeys is a new method that will reset the state of any Key object created by a Scene's Keyboard Plugin. 2018-10-16 11:35:44 +01:00
Richard Davey
4b1c762296 Updated @memberOf to @memberof 2018-10-10 10:49:13 +01:00
Richard Davey
1e7251ba97 Commented out resize, soon to be removed 2018-10-10 10:47:13 +01:00
Richard Davey
a9063604dc Replace @readOnly with @readonly 2018-10-09 13:40:00 +01:00
Richard Davey
b3f3f6a9b5 If a Game instance is destroyed without using the removeCanvas argument, it would throw exceptions in the MouseManager after the destroy process has run, as the event listeners were not unbound. They're not unbound, regardless of if the parent canvas is removed or not. Fix #4015 2018-10-01 12:55:54 +01:00
Richard Davey
e92a01985e If you destroyed a Game Object that had a custom cursor set during one of its input events the cursor didn't correctly reset. Fix #4033 2018-09-14 14:48:53 +01:00
Richard Davey
b1771a17dd Updated InputPlugin event specificity flow and added stopPropagation support 2018-09-12 12:38:08 +01:00
Richard Davey
4ba3b37608 Added Pointer.getDistance method 2018-09-12 01:03:56 +01:00
Richard Davey
e01013d418 Formatting 2018-09-12 01:03:41 +01:00
Richard Davey
2df27a4db8 Resolution adjust 2018-09-04 15:13:48 +01:00
Richard Davey
89967af66b Fixed Camera input resolution 2018-09-04 14:04:48 +01:00
Dhruv Yadav
0fd6d9d7dc Fixed a trailing spaces issue from the addKey(string) whitespace update 2018-08-30 21:58:54 +05:30
Dhruv Yadav
75319233f2 Styling updates for addKey(string) whitespace fix 2018-08-30 21:53:19 +05:30
Dhruv Yadav
f29892b73f Fixed addKeys(string) whitespace issue 2018-08-30 21:36:36 +05:30
Richard Davey
0c4de357cf The Input Manager has gained a new private property _tempMatrix2. This is used internally in the hitTest checks to avoid constant matrix creation. 2018-08-29 16:08:04 +01:00
Richard Davey
5c091f4ff9 Merge branch 'master' of https://github.com/photonstorm/phaser 2018-08-29 11:57:33 +01:00
Richard Davey
7041bd99ec The InputManager.inputCandidate method, which determines if a Game Object can be interacted with by a given Pointer and Camera combination, now takes the full camera status into consideration. This means if a Camera is set to ignore a Game Object you can now longer interact with it, or if the Camera is ignoring a Container with an interactive Game Object inside it, you cannot interact with the Container children any more. Previously they would interact regardless of the Camera state. Fix #3984 2018-08-29 11:57:30 +01:00
spontoreau
e922f378f4
Add CursorKeys type to Phaser.Input.Keyboard namespace 2018-08-26 22:28:21 +02:00
Richard Davey
6efb88b24b
Merge pull request #3900 from thejonanshow/upgrade_konami_code
Correct Konami code in createCombo documentation.
2018-08-20 18:30:18 +01:00
James Simpson
e4ccc8ec2d
Use correct frame name in pixel perfect hit test
`gameObject.frame.key` doesn't exist and was passing an undefined value to `getPixelAlpha`. This just changes it to the correct `gameObject.frame.name` value.
2018-08-16 12:23:10 -05:00
Jonan Scheffler
7c525b00fa Correct Konami code in createCombo documentation. 2018-08-07 14:25:48 -07:00
Richard Davey
5aafad5f88 Don't process events if the manager has been removed 2018-07-31 11:33:18 +01:00
Richard Davey
6a3274b483 Removed redundant code 2018-07-19 13:21:59 +01:00
Richard Davey
20f1b37256 eslint fix and log update 2018-07-18 15:06:56 +01:00
Richard Davey
3bc6eba718 Removed incorrect resolution multiplication and used updated camera viewport 2018-07-18 14:31:45 +01:00
Richard Davey
fb4f28bb01 Testing resolution input 2018-07-17 23:26:40 +01:00
Richard Davey
61954dedcb Added checkDown method and related properties. 2018-07-13 11:13:32 +01:00
Richard Davey
cced09bad6 Added Pointer.prevPosition and getInterpolatedPosition method 2018-07-11 12:34:00 +01:00
Richard Davey
88eb4f4ce9 The Pointer.camera property would only be set if there was a viable Game Object in the camera view. Now it is set regardless, to always be the Camera the Pointer interacted with. 2018-06-27 12:45:03 +01:00
Richard Davey
7aa46657c2 Tidying up jsdocs and changing float to number 2018-06-26 23:19:14 +01:00
Hua
821504a893 Skip drag checking on a draging Game Object
Skip drag checking on a draging Game Object to prevent multi-drag issue.
2018-06-19 10:33:22 +08:00
Richard Davey
6456ef10a6 Touch pointer total fix
The InputManager would only create 1 Pointer, even if Touch input was enabled in the config, which meant you couldn't use touch events unless you first called `addPointer` or specified one in the config. Now, it Touch is enabled in the config, it'll always create 2 pointers by default.
2018-06-13 13:51:04 +01:00
Richard Davey
9d52b6ac91 Fixed jsdoc errors 2018-06-12 17:05:39 +01:00
Richard Davey
d6c2b1104b Replace KeyboardManager with KeyboardPlugin 2018-06-12 14:44:51 +01:00