Commit graph

104 commits

Author SHA1 Message Date
photonstorm
8a89e8e97b Fixed grunt manifest 2014-11-18 09:45:39 +00:00
Paul
884353d71e ScaleManager + DOM
"Final" changes for a solid 2.2-worthy ScaleManager.

This adds in official support for USER_SCALE, which allows a flexible way
to control the scaling dynamically.

It fixes a visible display bug in desktop browsers (viewport clipping was
off) and mitigates some potential issues all around by using a unified
visualBound calculations in Phaser.DOM.

It applies some protected/deprecated attributes, but does not remove any
behavior of already-established (as in, outside-dev) means.

There are no known [signficant] breaking changes; any known breaks (not
considered fixes) are constrained to dev with no known consumers.

Phaser.DOM

  There are no known significant breaking changes; Phaser.DOM was
  internal.

  - Added visualBounds; this should be the true visual area, minus the
    scrollbars. This should be used instead of clientWidth/clientHeight to
    detect the visual viewport.

  - Expose various viewport sizes as dynamically updated properties on
    Rectangle objects. These are visualBounds, layoutBounds,
    documentBounds.

  - Updated documentation the different bounds; in particular drawing
    distinction between viewport/layout bounds and visual bounds.

  - Renamed `inViewport` to `inLayoutViewport` to indidcate behavior.
    - Minor breaking, but dev-only

  - Changed `getAspectRatio` to work on Visual viewport. This will yield
    the expected behavior on mobiles.
    - Minor breaking, but dev-only

  - Removed some quirks-mode and legacy-browser special casing

Phaser.ScaleManager

  There are no known significant breaking changes.

  - USER_SCALE is 'made public'. It can used to flexibly configure any
    custom-yet-dynamic scaling requirements; it should now be able to
    replace any sane usage of manual sizing invoking the deprecated
    setSize/setScreenSize.
    - Added additional usage documentation and links to such
    - Added the ability to specify a post-scale trim factor.

  - Change the arguments the resize callback and document what is passed
    - Minor breaking, but the previous arguments were undocumented

  - `compatiblity.showAllCanExpand` renamed to `canExpandParent` and made
    generalized over possibly-expanding scaling.
    - Minor breaking, dev-only, for coding changing this settin

  - Switched from direct usage of of window innerWidth/Heigth to
    Phaser.DOM visualViewport - this change correctly accounts for
    scrollbars in desktop environments
    - Although it does slightly alter the behavior, this is a fix.

  - Removed usage of window outerWidth/outerHeight which didn't make much
    sense where it was used for desktops and was catostrophic for mobile
    browser
    - Although it may slightly alter the behavior, this is a fix.

  - Removed `aspect` and `elementBounds` because they are duplicative of
    Phaser.DOM (which can not be accessed as `scale.dom`).
    - Minor breaking, but internal methods on dev-only

  - Marked the minWidth/maxWidth/minHeight/maxHeight properties as
    protected. They are not removed/obsoleted, but should be revised later
    for more flexibility.

  - Orientation handling; non-breaking forward deprecations
    - Added `onOrientationChange` and deprecated the 4 separate leave,
      enter, landscape and portrait signals. They are not removed, so this
      is a future-migration change.
    - Fixed issue where state not updated prior to callback
    - Fixed issue where orientation callbacks were not always delayed

  - Fullscreen events: non-breaking forward deprecations
    - Added `onFullScreenChange` and deprecated `enterFullScreen` and
      `leaveFullScreen`.
    - Renamed (with proxy) `fullScreenFailed` to `onFullScreenError`.

Phaser.Device

  - Improved `whenReady` to support Phaser.DOM better
    - Allows a ready handler to be added without starting the
      device-detection proccess. This allows it to be registered to
      internally (eg. from System.DOM) without affecting current behavior.
    - Passes the device object as the first parameter to the callback
      function.

  - Fixed code where Silk detection not applied to `desktop` detection.

Manifest: System.Device moved before System.DOM
2014-11-17 23:48:06 -08:00
Richard Davey
5fa06a241b Merge pull request #1325 from pnstickne/wip-collections
ArrayList/LinkedList updates
2014-11-16 18:54:24 +00:00
Paul
ea861662bb Documentation - YUIdoc to jsdoc, global nav
- Added support to deal with some of the YUIDoc "formats" used to
  represent arrays. It covers the case of the old PIXI documentation.

- Cleaned up log reporting and issue identification

- "Fixed" the global navigation, now that globals are displayed .. now
  just need to fix the documentation the members aren't incorrectly listed
  as globals ..
2014-11-15 04:19:41 -08:00
Paul
794c9f65fe ArrayList/LinkedList - moved from core to utils
- ArrayList is also renamed to ArraySet to better reflect the nature
2014-11-13 00:59:42 -08:00
Richard Davey
7366854f9b Merge pull request #1307 from pnstickne/wip-math-util-cleanup
Math/Utils - various cleanup and deprecations/moves
2014-11-12 22:21:34 +00:00
photonstorm
788fc7e00f Because Texture.js dies without it. 2014-11-11 23:24:51 +00:00
photonstorm
1352b526c7 Merged final Pixi v2.1.0 release. 2014-11-11 23:24:50 +00:00
photonstorm
642d5355d6 Added missing DOM.js 2014-11-11 06:01:34 +00:00
Paul
50729b33a2 DOM Functions
No known breaking changes - as it's still dev/internal stuff.

- Added Phaser.DOM to house new DOM functions, moved stuff
  over from ScaleManager as appropriate

- Fixed a fiew cases of missing functions

- Changed some of the new signatures to protected for the interim.
  (Maybe a `beta` tag would fit better? Public is promises!)

- Moved generic support from Canvas to DOM and added proxy/notes
  - Updated internal usages

- Updated some comments for consistency
  - Access always on bottom for members/properties, public assumed
2014-11-10 00:45:13 -08:00
Paul
a6d2da2a8a Math/Utils - various cleanup and deprecations/moves
There are no known breaking changes.

- Timer
  - Uses standard Math.min/Math.max (it's better 2, 3 items).

- Math
  - Updated documentation
  - Marked various Math functions as deprecated, proxying as appropriate
    - Array-based functions -> ArrayUtils
    - RNG-based functions -> Utils
    - Updated core-usage
    - floor/ceil should not be used (alternatives provided)
  - Altered for some equivalencies
  - Also fixes some assorted issues
  - Marked a few internal functions as private

- Utils
  - Moved polyfills to their own file for better visibility
  - Moved array functions to ArrayUtils and marked proxies as deprecated

- Created Phaser.ArrayUtils for array-related functions

- polyfills moved to their own file
  - Functions given function names
  - Added Math.trunc
2014-11-09 16:17:18 -08:00
Paul
66ab47ff09 PIXI-in-Docs: fixed line numbers
- Also added support for various additional meta-tags
- Minor code cleanup
2014-11-03 18:49:32 -08:00
Paul
4b02ef54ce PIXI-in-Docs: visibility fix
- Private methods were not being annotated as such
2014-11-03 14:52:40 -08:00
Paul
b87eece645 PIXI-in-Docs: prop support
- Added support for nested/ad-hoc properties
- Also cleanup and documentation / limitation notions
2014-11-03 12:45:52 -08:00
Paul
a7044a6cb6 PIXI-in-Docs fixups
- Removed hard-coded path (oops)
- Added grunt task (oops)
- Added EOLs
2014-11-03 11:30:33 -08:00
Paul
343c0dca3f PIXI-in-Docs - making jshint happy 2014-11-03 11:21:00 -08:00
Paul
ce02d3402f PIXI-in-Docs - Initial
- Initial support for generating PIXI-combined documentation
- Includes yuidoc-to-jsdoc for generating pixi-jsdoc.js
- Creates doc (using pixidoc + builddoc) tasks
- Adds sourceproxy JSDoc plugin to map in corrected file/line meta
- Added yuidocjs as a dev-dependency
2014-11-03 11:05:00 -08:00
photonstorm
1e1d1b9018 Updated the build manifests. 2014-10-22 23:53:18 +01:00
photonstorm
73f210257a Removed duplicate Pixi classes and updated the build manifests to pull-in the correct Pixi Matrix class. 2014-10-22 21:20:38 +01:00
Richard Davey
6793484c37 Merge pull request #1236 from photonstorm/alvin/dev
Added the audiosprite class to the no-physics build and a new build with only p2
2014-10-20 01:28:40 +01:00
photonstorm
1377b9454d Added missing CanvasBuffer.js 2014-10-17 17:38:01 +01:00
Alvin
125912a42f Fixed audiosprite not included in the no-physics build 2014-10-16 20:30:12 +02:00
Alvin
52ff097cf8 Created a new build using only p2 2014-10-16 20:28:31 +02:00
photonstorm
94c3989939 Updated the grunt manifests. 2014-10-14 01:10:00 +01:00
photonstorm
f3fd3ebe0e Added AudioSprite to the build files. 2014-09-24 06:51:53 +01:00
photonstorm
f82bce7a3a Grunt task updates. 2014-09-09 14:47:15 +01:00
photonstorm
24e896301b Adding new build file: Phaser + Arcade Physics + Ninja physics. 2014-09-09 12:50:01 +01:00
Richard Davey
199016b0a8 Merge pull request #1172 from eguneys/dev
A new custom build with no physics added.
2014-09-05 17:15:41 +01:00
photonstorm
ff07317120 First version of the FlexLayer class. 2014-09-05 15:46:10 +01:00
eguneys
fdf00b1b49 A new custom build with no physics added. 2014-09-05 11:38:40 +03:00
photonstorm
07f529bf12 First experimental build of FlexGrid. 2014-09-05 06:01:48 +01:00
photonstorm
9de1d494df Phaser 2.1.0 build files for testing.
Ninja Physics is no longer included in the build files by default. Not enough people were using it, and not enough contributions were coming in to help polish it up, so we've saved the space and removed it. It's still available in the grunt build files if you require it, but we're deprecating it from the core library at this time. It will make a return in Phaser3 when we move to a modular class system.
2014-08-28 04:53:05 +01:00
Richard Davey
9941942941 Merge pull request #1030 from codevinsky/rope
Phaser.Rope
2014-08-28 01:56:02 +01:00
photonstorm
26484eac89 Added RotationalSpring to the manifest. 2014-08-28 01:23:37 +01:00
photonstorm
504b69ffaa Updated p2.js to d1c7a340c42e4d5d1d939fba5fd13c5e49d6abd2
Updated grunt replace task to match p2s new UMD signature.
2014-08-28 00:01:35 +01:00
photonstorm
33c52eaf09 BitmapData alpha option added.
Pointer return type added.
pixi manifest updated to remove need for geom classes.
2014-08-27 21:26:29 +01:00
jdowell
6432817c7f added: Rope debug, segments, updateAnimation 2014-07-15 14:01:15 -05:00
photonstorm
4fc26e4a26 Updated to the latest version of Pixi. 2014-07-09 05:40:50 +01:00
photonstorm
2d676b00b4 Working through crop issues. 2014-07-08 12:59:36 +01:00
photonstorm
181fd1ae56 Merged Pixi 1.5.4 with Phaser - all of the lovely new Pixi features are in, like complex Graphics objects and masking. 2014-07-01 15:03:46 +01:00
photonstorm
54b71ddc23 Phaser.ArrayList is a new iterative object, similar in principal to a linked list but operating on a single array without modifying the object structure.
Input and Pointer now use the new ArrayList instead of a LinkedList, which resolve list item removable during callback issues.
Input.reset no longer resets every interactive item it knows of, because they are removed during the destroy phase and can now persist between States if needed.
2014-04-25 15:11:54 +01:00
photonstorm
0b1fb5a637 Destroying an object with an input handler during its onDown event would throw Signals dispatch errors (thanks @jflowers45, fix #746)
InputHandler._setHandCursor private var wasn't properly set, meaning the hand cursor could sometimes remain (during destroy sequence for example)
All Game Objects have a new property: destroyPhase (boolean) which is true if the object is in the process of being destroyed, otherwise false.
The PIXI.AbstractFilter is now included in the Phaser Pixi build by default, allowing for easier use of external Pixi Filters.
2014-04-22 01:43:22 +01:00
Georgios Kaleadis
b61f19cf76 added fixture list files to grunt 2014-04-10 23:51:07 +02:00
Georgios Kaleadis
b4a1816245 added fixture list files to grunt 2014-04-10 23:50:05 +02:00
photonstorm
523a3c5632 Tidied up the Grunt tasks a little to name them more accurately.
Renamed phaser-no-physics to phaser-arcade-physics, which is far more accurate.
2014-04-10 01:54:30 +01:00
photonstorm
50981fd729 Emitter now has minParticleAlpha and maxParticleAlpha values for setting a random alpha on emitted particles.
Emitter.particleAnchor allows you to control the anchor of emitted Particles. Defaults to 0.5 (same as before) but now under your control.
Emitter now emits Phaser.Particle objects instead of Phaser.Sprites, which can be extended as required.
Emitter has had various local properties removed that were already declared in Phaser.Group which it extends.
2014-04-09 14:29:23 +01:00
photonstorm
fca1bd97fd New build to test state change in. Also various Gruntfile fixes that arose from the tasks split. 2014-04-01 03:02:36 +01:00
photonstorm
1f32ef721d The Phaser Gruntfile is now split up into option tasks (thanks @xtian, #638) 2014-04-01 01:47:42 +01:00
Christian Wesselhoeft
de7192320b Split task options into their own files using load-grunt-config. 2014-03-26 18:51:28 -07:00
Christian Wesselhoeft
12c5a1b534 Run jshint as part of build process. 2014-03-25 14:56:00 -07:00
photonstorm
8662cd2fd4 Brand new Grunt task - creates each core library as its own file and a combined phaser.js.
New build script now cleanly splits Phaser, Pixi and p2 so they are each UMD wrapped and each available in the global scope (now more requireJS friendly!).
phaser-no-libs.js allows you to use your own version of p2.js or pixi.js with Phaser. Warning: This is totally unsupported. If you hit bugs, you fix them yourself.
Fixed silly instanceof bug in game objects (sorry guys).
2014-02-28 09:30:53 +00:00
Florent Cailhol
ab6dbfb49e Remove path.relative() which produce unexpected results on Windows 2013-10-24 13:32:04 +02:00
Florent Cailhol
9ed930c4cf Add verbose output to examples task
Verbose output:
https://gist.github.com/ooflorent/7134728
2013-10-24 12:25:59 +02:00
Florent Cailhol
dfee9f9b2f Add new Grunt build 2013-10-23 16:58:48 +02:00