Commit Graph

52 Commits

Author SHA1 Message Date
Dávid Szabó
f5c98cf0b3 Rework pixel storage, manipulation, rendering 2016-10-01 14:34:01 +02:00
juliandescottes
f6be33d5bf Add performance figures to drawing tests 2016-10-01 13:09:19 +02:00
Julian Descottes
c49fe4d6a0 Issue #483 - limit zoom to have 10 sprite pixels displayed on screen 2016-06-09 11:05:59 +02:00
Julian Descottes
4b8e5ace07 Issue #470: remove references to tiled-preview, rename preferences 2016-06-04 17:03:34 +02:00
Julian Descottes
5533664900 Issue #470: move the seamless overlay color to Constants.js 2016-06-04 16:58:49 +02:00
juliandescottes
f2ff3bc74e Feature #470: Tiled drawing improvements 2016-06-04 16:50:58 +02:00
Julian Descottes
058b6fa333 Issue #293: add FramesheetRenderer unit tests 2016-05-29 11:47:57 +02:00
Julian Descottes
169ce21556 Issue #293: Add spritesheet layout options in PNG export tab 2016-05-29 10:45:19 +02:00
Julian Descottes
f66c2578ab Issue #446: Add export tabs, move zoom controls 2016-05-22 23:37:28 +02:00
juliandescottes
327df539a7 Issue #414: part10: support opacity in preview renderers 2016-03-24 02:17:57 +01:00
Julian Descottes
76a29bf51a Issue #414: part7: Support transparency for ZIP export
Added renderFrameAt API to LayerUtils
Reuse LayerUtils and PiskelController renderFrameAt in PngExportController
2016-03-24 02:17:57 +01:00
Julian Descottes
7bf2662b66 Issue #414: part6: Support transparency when exporting as PNG spritesheet
Added flattenFrameAt to LayerUtils.
Added renderFrameAt to PiskelController (using flattenFrameAt)
Use renderFrameAt in PiskelRenderer (which is used for PNG spritesheet)

chore: renamed createLayerFromSpritesheet to createFramesFromSpritesheet
       (in LayerUtils)
2016-03-24 02:17:57 +01:00
Julian Descottes
d2dc42e7cf Issue #414: part5: rename PiskelController getFrameAt to getMergedFrameAt 2016-03-24 02:17:57 +01:00
jdescottes
1bc85bfbca Fix : Hide grid when zoom no longer allows proper display 2015-09-19 00:07:14 +02:00
jdescottes
e6950e5c1a Issue #306 : Switch implementation for memoizer 2015-09-14 22:04:25 +02:00
jdescottes
1fe327495c Issue #305 : Allow DrawingController to zoom out to real size 2015-09-13 22:44:59 +02:00
jdescottes
089b4ea14d Issue #306 : Selection : set opacity for overlay instead of pixel per pixel 2015-09-13 21:32:45 +02:00
jdescottes
84e26b28da Issue #305 : Add 1x icon, redesign popup icon 2015-09-13 19:16:08 +02:00
jdescottes
6b6674a04d Issue #215 : Dev environment : first undo/redo drawing test 2015-08-25 01:01:12 +02:00
juliandescottes
1208324d4d Copy paste bug : add unit tests for FrameUtils with null value 2015-08-09 12:37:03 +02:00
jdescottes
e0c9a46ed3 wip : needs tests 2015-08-07 08:37:13 +02:00
jdescottes
d962217f90 Issue #281 : Add app.settings & user pref for layer preview opacity 2015-07-26 02:00:46 +02:00
juliandescottes
b480acc6a0 Added JSCS linter to enforce style conventions 2015-04-14 18:02:33 +02:00
juliandescottes
4b7b18ca6f post merge 2015-04-07 23:15:36 +02:00
Julian Descottes
c600d62bd2 Merge pull request #259 from leegrey/desktop-save-action
Desktop IO Features
2015-03-26 10:42:52 +01:00
jdescottes
40cced7be0 Merge branch 'master' into fix-palette-bugs 2015-03-24 17:17:22 +01:00
jdescottes
6328fe760f Workaround for Chrome 41 issue Canvas + Radeon :
Issue opened at https://code.google.com/p/chromium/issues/detail?id=469906
Workaround in FrameRenderer.js is to decrease the width+height of the
fillRect of 1 pixel.
Issue seems to impact only Radeon users (not sure if all cards are
impacted)
2015-03-24 16:02:47 +01:00
Lee Grey
93deb1c2c5 Just adding semicolons to make the linter happy 2015-03-24 22:33:14 +13:00
jdescottes
bcecd3058b Popup preview : refactor, cross browser, WIP
- moved preview controllers to pskl.controller.preview
- renamed PreviewFilmController to FramesListController
- renamed AnimatedPreviewController to PreviewController
- fixed init of popup preview on IE (use ownerDocument to create
  TiledFrameRenderer container) => should try with innerHTML
- moved open popup button inside the minimap (show on hover)
2015-02-28 10:56:15 +01:00
juliandescottes
5831447f75 Fix #242, onion skin rendered not cleared if 0 frames 2014-12-27 15:02:41 +01:00
jdescottes
5cb1d0cd03 Fixed CanvasRenderer regression + added unit test 2014-12-21 18:56:40 +01:00
jdescottes
0642e17aa8 Draw lines of pixels instead of single pixels 2014-12-19 08:28:15 +01:00
jdescottes
1402394d07 Animation pauses when FPS slider at 0FPS + slight perf improvement 2014-12-18 23:57:34 +01:00
jdescottes
2db04fe7d6 Support rectangular resolution & maximize viewport usage 2014-12-18 21:42:03 +01:00
jdescottes
8a29b78af8 Merge branch 'master' into enhancement-palette-sorting
Conflicts:
	src/js/utils/FrameUtils.js
2014-09-21 21:56:22 +02:00
jdescottes
1955d3f8f5 First implementation of tool tester 2014-08-21 00:50:59 +02:00
jdescottes
b556143b66 fixed fps when restoring backup 2014-07-14 14:39:21 +02:00
jdescottes
19c99d1aa7 Fixed canvas ordering, fixed FPS during local import 2014-07-14 14:14:28 +02:00
jdescottes
fa626532ba cleanup of performance improvement 2014-07-03 00:48:49 +02:00
jdescottes
a2e2459169 cleanup of performance improvement 2014-07-03 00:09:47 +02:00
jdescottes
d126023c4a temp 2014-06-30 20:38:14 +02:00
jdescottes
98f59fecf1 Feature : add onion skin option
New option in application settings : onion skin.
You can choose the overlay to display now :
- no overlay
- onion skin (default)
- layer preview (previous default)

Available in Application Settings panel.

Only one overlay can be used at the same time.
The onion skin overlay is driven by a new OnionSkinRenderer maanged by the
drawing.

The drawing controller is responsible for instanciating and 'choosing' the
overlay renderer.

When switching to a new overlay, other overlays are cleared and flushed
(they cache their rendering frame, flush empties the cache).

NB : flush is only available on LayersRenderer and OnionSkinRenderer for
now.
2014-06-19 23:33:57 +02:00
jdescottes
d501129e8e Fix : retrieve piskel info from controller 2014-06-13 19:06:15 +02:00
jdescottes
59195c9fb6 Tiled preview : mutualize canvas background update
When user changes canvas background, css class now applied on document
body.

Created new controller listening to Events.USER_SETTINGS_CHANGED to handle
this.
2014-05-08 20:57:31 +02:00
jdescottes
6ad5bde5d1 TiledPreview : follow up 2014-05-08 20:45:05 +02:00
juliandescottes
aa4c94e3af Feature : Tiled preview initial commiy 2014-05-08 01:41:14 +02:00
juliandescottes
d45ea00ca5 Refactored piskel controller to extract the event creation 2014-04-19 16:01:51 +02:00
jdescottes
0cecdc74eb Temp commit 2014-04-17 01:27:49 +02:00
jdescottes
29fa604d74 Fix : protect LayerRenderer against fake setDisplaySize calls 2014-04-12 15:16:18 +02:00
jdescottes
7357614d9a Fix : Window resize is erasing the canvas
Issue was coming from the cached frame renderer.
During the window resize, we update the displaySize of the frame renderer,
regardless of the fact that the dimensions changed or not.

The setDisplaySize triggers a destruction of the canvas. But the
CachedFrameRenderer will render the frame only if it detects a change. In
this case, setDisplaySize has been overrided in CachedFrameRenderer to
skip any processing if the dimensions didn't change.

This behavior could be actually done in the FrameRenderer itself, but
since this is crucial to the CachedFrameRenderer behavior, I prefer to
keep it in this class.

Alternatively, could implement a way to discard caches of
CachedFrameRenderers from the outside.
2014-03-30 23:28:18 +02:00