Commit Graph

813 Commits

Author SHA1 Message Date
Julian Descottes
4895017ebb Fix viewport shaking on touchmove event on mobile/tablet 2016-07-26 12:13:49 +02:00
Smie
81b1bca7f5 Merge branch 'master' of https://github.com/juliandescottes/piskel 2016-07-25 14:40:58 -06:00
juliandescottes
0b1ec655ae retina: update lasso & shape select icons 2016-07-25 09:32:50 +02:00
juliandescottes
ba56a32b88 Issue #502: scroll selected layer into view when redrawing layer list 2016-07-24 19:21:07 +02:00
juliandescottes
a96bc0c72f retina icons 2016-07-24 17:06:47 +02:00
Lee Reilly
89c4044016 Replace 'alt' buttons with 'option' buttons on Macs 2016-07-20 12:35:05 -06:00
juliandescottes
0bc7f3bc05 dev env: automatically remove fake header from desktop builds 2016-07-10 13:59:11 +02:00
Julian Descottes
4518f50efa consider layer with opacity=0 as transparent 2016-07-04 00:23:03 +02:00
Julian Descottes
01a0bcf13c extract dev header to separate template 2016-07-03 15:40:04 +02:00
Julian Descottes
cd36a57a1a export controller: add synchronized rows input, remove poweroftwo checkbox 2016-07-02 16:49:17 +02:00
Brad Buchanan
7e112776b6 Use Constants.EMPTY_FUNCTION 2016-06-16 18:13:08 -07:00
Brad Buchanan
efbfeca200 Improved comments 2016-06-16 18:12:13 -07:00
Brad Buchanan
e1cba9f13b Re-adopt ns convention for module definition 2016-06-16 18:09:47 -07:00
Brad Buchanan
e37d93f7f9 Extract import logic to ImportService
Isolates import dialog logic from actual import logic, which makes headless import eaiser to implement.
2016-06-14 18:12:25 -07: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
c0f0445544 Fix Transform tool CMD modifier on OSX 2016-06-05 00:25:41 +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
Julian Descottes
21b2261a9d Feature #470: update application settings layout 2016-06-04 16:50:58 +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
c8fa83462a Issue #293: remove unused user settings 2016-05-29 11:19:54 +02:00
Julian Descottes
fae04f3616 Issue #293: use input type number and fix linting issues 2016-05-29 11:06:45 +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
2f295825f2 Issue #446: store selected export tab in user preferences 2016-05-23 22:51:48 +02:00
Julian Descottes
c63c764060 Issue #446: Improve export panels style consistency 2016-05-23 22:29:20 +02:00
Julian Descottes
ba8964a2af Issue #446: Cleanup gif export panel 2016-05-23 00:40:23 +02:00
Julian Descottes
f66c2578ab Issue #446: Add export tabs, move zoom controls 2016-05-22 23:37:28 +02:00
Julian Descottes
32e701aa55 Move ImageExportController to ExportController and Fix line height for toolbox titles 2016-05-22 15:49:39 +02:00
Julian Descottes
aa9c1659fc Issue #447: apply review comments 2016-05-22 15:05:22 +02:00
Guillaume Martigny
58a1a6b043 Dirty status compare last save state index and current state index
Signed-off-by:Guillaume Martigny <guillaume.martigny@gmail.com>
2016-05-22 15:03:47 +02:00
Guillaume Martigny
9b6d45e8ed Code formating
Signed-off-by:Guillaume Martigny <guillaume.martigny@gmail.com>
2016-05-22 15:03:47 +02:00
Guillaume Martigny
0f00ef563a Fix the states replay loop
Signed-off-by:Guillaume Martigny <guillaume.martigny@gmail.com>
2016-05-22 15:03:47 +02:00
Guillaume Martigny
eb1320de11 Move history service to linked list with random UUID
Signed-off-by:Guillaume Martigny <guillaume.martigny@gmail.com>
2016-05-22 15:03:47 +02:00
Matt D
299d4fb895 Renamed Align to Center 2016-05-12 10:39:29 +10:00
Matt D
7c4d03b105 Fixed style issues 2016-05-10 21:52:27 +10:00
Matt D
0e4f1046d3 Implemented issue #403 2016-05-10 21:37:00 +10:00
juliandescottes
7c47aa9ecd Issue #467: style changes: smaller toolbox borders, layout fixes 2016-05-08 13:28:19 +02:00
juliandescottes
c1d8c7a20e Issue #467: fix max height for layers & panels lists 2016-05-08 04:12:43 +02:00
Smie Grin
be79eb2f6f Merge branch 'master' of https://github.com/juliandescottes/piskel 2016-05-04 16:31:53 -06:00
Julian Descottes
f32d5dea20 Merge pull request #456 from juliandescottes/issue352-selected-color
Issue #352: add gold/black SVG backgrounds for selected color
2016-04-22 00:14:58 +02:00
Julian Descottes
806b447f93 Issue #352: add gold/black SVG backgrounds for selected color 2016-04-22 00:08:14 +02:00
Julian Descottes
78932048e8 Issue #458: format selected color from spectrum as HexString 2016-04-21 23:44:42 +02:00
Julian Descottes
d46ab48c1b Merge pull request #440 from clementleger/c_file_export
C file export
2016-04-18 16:48:16 +02:00
Clement Leger
e41b8f740b C Export: Remove temporary canvas and directly use the rendered one for export 2016-04-11 16:43:26 +02:00
Clement Leger
dfb8fec0c9 C export: fix after review 2016-04-11 14:33:58 +02:00
Rob Muhlestein
2a1073d0c5 Warp -> Wrap in move tool spelling 2016-04-09 13:06:33 -04:00
Clément Léger
4927557c89 C export: Fix rgb ordering in uint32_t 2016-04-06 19:38:11 +02:00
Clément Léger
d176973e72 C export: add static const qualifier for arrays 2016-04-06 19:17:39 +02:00
Clément Léger
664821b9f5 Fix coding style and better output 2016-04-05 23:01:27 +02:00
Clement Leger
1b553d28e3 Export: add c file exporter 2016-04-05 22:00:50 +02:00
juliandescottes
327df539a7 Issue #414: part10: support opacity in preview renderers 2016-03-24 02:17:57 +01:00
jdescottes
99b00bc57f Issue #414: part 9: persist layer opacity when resizing 2016-03-24 02:17:57 +01:00
Julian Descottes
add97baf54 Issue #414: part8: Support transparency for GIF export
Transparent layers are rendered properly in GIFs.

As soon as a layer as some opacity (ie not 0 or 1) the GIF will be
rendered with preserveColors set to false. This could be improved,
preserveColors could still be applied if the flattended picture has
only opaque pixels, for a color count lower than the GIF limit.

Other topic to handle : we are creating way to many canvas element.

A simple GIF rendering of a 50 frames animation with 10 layers creates
1000 canvas elements before creating the GIF. Should consider adding some
pooling in the CanvasUtils.createCanvas helper.
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
Julian Descottes
186b5a305a Issue #414: part4: UI to view/update layer opacity 2016-03-24 02:17:57 +01:00
Julian Descottes
a75e78e366 Issue #414: part3: PiskelController api + history support 2016-03-24 02:17:57 +01:00
Julian Descottes
6546b520b3 Issue #414: part2: serialize and deserialize layer opacity 2016-03-24 02:17:57 +01:00
Julian Descottes
7660119b50 Issue #414: part1: add opacity to Layer model 2016-03-24 02:17:57 +01:00
Matt D
a712764401 Syntax changes to meet code style 2016-03-23 21:50:43 +11:00
Matt D
da105e6237 Moved the padding code to a new StringUtils.js utility and made the export code use it 2016-03-23 21:32:22 +11:00
Matt D
e2b6f0776b Added frame and layer id padding to splittedExport 2016-03-23 20:51:08 +11:00
Matt D
c7381b771f Added sprite number padding to mergedExport 2016-03-23 20:45:35 +11:00
Julian Descottes
539d7c7870 Merge pull request #397 from GMartigny/issue_#348
Issue #348 : colorpicker showing on top of tooltip
2016-03-11 00:58:36 +01:00
GMartigny
14fde4f8a0 Multi-line title on color selector 2016-03-05 17:31:56 +01:00
GMartigny
7088d9aa33 Revert modifications after discussion 2016-03-05 17:23:25 +01:00
Julian Descottes
ef7108a5e0 Merge pull request #400 from GMartigny/issue_#349
Issue #349 : Frame list slightly scroll on the right
2016-02-12 05:32:18 +01:00
Guillaume Martigny
fc9cb07be1 Revert to whole frame draggable
Signed-off-by:Guillaume Martigny <guillaume.martigny@gmail.com>
2016-02-04 15:33:49 +01:00
Guillaume Martigny
eb02e713e2 improve the sortable widget with direction, tolerance and handle
fix CSS to prevent horizontal scroll
Signed-off-by:Guillaume Martigny <guillaume.martigny@gmail.com>
2016-02-04 11:53:08 +01:00
Guillaume Martigny
4985dfacf3 put background-position-x and -y together for compatibility
resize a bit to align with container
Signed-off-by:Guillaume Martigny <guillaume.martigny@gmail.com>
2016-02-03 17:32:32 +01:00
Guillaume Martigny
9bd3bf4adf code formating
Signed-off-by:Guillaume Martigny <guillaume.martigny@gmail.com>
2016-02-03 14:17:12 +01:00
Guillaume Martigny
fb9c600b9f fix #348
Add a proposition to replace the title attribute.
Signed-off-by:Guillaume Martigny <guillaume.martigny@gmail.com>
2016-02-03 12:45:44 +01:00
Guillaume Martigny
5eb936d8c2 fix #392
Signed-off-by:Guillaume Martigny <guillaume.martigny@gmail.com>
2016-02-03 09:19:21 +01:00
smiegrin
412067ad90 Introduces zooming towards/away from mouse 2016-01-17 16:30:21 -07:00
jdescottes
73b165ef0c chore : fix jshint errors "thanks" to caret version range from grunt-contrib-jshint 2016-01-16 15:28:28 +01:00
jdescottes
cd8d5c0b52 Issue #383 : Use metaKey as ctrlKey for Move tool on OSX 2016-01-16 12:31:03 +01:00
jdescottes
21d4857b74 Update deps, use grunt-connect instead of express, fix jscs errors 2015-12-09 22:38:58 +01:00
juliandescottes
172da85f15 Issue #146 : removed unused constant in PixelUtils 2015-12-04 14:39:20 +01:00
jdescottes
f5a33dc39a Issue #146 : add unittest for line & uniform lines
Uniform lines step is now capped so that the step remains lower
than min(dx, dy). If the step would be greater than this value,
use Infinity and draw a straight line
2015-12-04 14:30:36 +01:00
juliandescottes
00f0debf12 Issue #146 : Move line creation utils to PixelUtils 2015-12-02 13:59:58 +01:00
juliandescottes
20b7eb2a3c Issue #146 : Improve shift+stroke to draw more uniform lines 2015-12-02 00:46:11 +01:00
jdescottes
c70e339296 Issue #338 : disable sizeInput sync if maintainration is off in usersettings 2015-12-02 00:44:13 +01:00
jdescottes
6583d8f8b9 Issue #357 : Trans. -> white if too many colors + add test files 2015-12-01 20:07:26 +01:00
juliandescottes
5b567683a7 Issue #357 : prevent transparency in GIF export if more than 256 colors 2015-12-01 14:17:26 +01:00
jdescottes
4d8b093941 Fixes #355 : IconMarkupRenderer:render signature changed 2015-12-01 01:16:04 +01:00
jdescottes
92d5a4a2fe Issue #258 : Add pensize support to DrawingTest + add pensize test suite 2015-12-01 00:54:18 +01:00
jdescottes
f0ed4927e8 Issue #258 : Move resize method to utils + add unit test 2015-12-01 00:54:17 +01:00
jdescottes
67b66e4a10 Issue #258 : Support pensize for DitheringTool 2015-12-01 00:54:17 +01:00
jdescottes
f767d24280 Issue #258 : Update test recorder after ToolController refactor 2015-12-01 00:54:16 +01:00
jdescottes
27061291a3 Issue #258 : Simplify Lighten & update test 2015-12-01 00:54:16 +01:00
jdescottes
12ac85f0f6 Issue #258 : add support for left/right keys + bugfix 2015-12-01 00:50:57 +01:00
jdescottes
3525b318a6 Issue #258 : KB shortcuts to increase/decrease pensize 2015-12-01 00:50:56 +01:00
jdescottes
fce9bb5727 Issue #258 : Fix replay for Stroke tool with != pensizes 2015-12-01 00:50:55 +01:00
jdescottes
3cc3204939 Issue #258 : Update style and tooltip 2015-12-01 00:50:55 +01:00
jdescottes
222c65a8a5 Issue #258 : Initial implementation : missing tests + cleanup 2015-12-01 00:50:54 +01:00
juliandescottes
070003a414 Issue #344 : Escape django template tags 2015-12-01 00:41:01 +01:00
juliandescottes
7d5259acd7 Issue #344 : include piskel-boot in index.html 2015-12-01 00:41:00 +01:00
jdescottes
2b28577813 Issue #344 : Avoid templating syntax conflict with Django 2015-12-01 00:41:00 +01:00
jdescottes
7e1451fa8d Issue #344 : Remove iframes loader, Gruntf cleanup 2015-12-01 00:40:59 +01:00
jdescottes
dd1d2bf441 Issue #344 : Add watch:dev task to rebuild sprites 2015-12-01 00:39:51 +01:00
jdescottes
8aa6eff715 Issue #344 : Add image spriting using spritesmith 2015-12-01 00:39:37 +01:00
Patrick Brosset
6f5e2f130e Fixes #346 by blurring disabled buttons 2015-11-30 16:46:27 +01:00
jdescottes
82510314a5 Issue #332 : always use lowercase hexstring format for colors 2015-11-27 22:58:11 +01:00
jdescottes
8d26d693ff Issue #338 : Cleanup public/private in SettingsController 2015-11-25 00:40:12 +01:00
jdescottes
9329a5fd03 Issue #338 : Remove jquery from settingscontroller, destroy setting controller when closing drawer 2015-11-25 00:36:19 +01:00
jdescottes
1c1f6c11ab Merge branch 'master' into store-resize-to-userpref 2015-11-20 00:27:05 +01:00
jdescottes
b27e6b6f66 Issue #146 : Draw straight lines 2015-11-20 00:09:18 +01:00
jdescottes
30c3cdbcc5 Issue #338 : Store resize prefs to userpref 2015-11-19 08:18:26 +01:00
jdescottes
392204e5c5 Issue #335 : Remove autocomplete from settings input text fields 2015-11-13 08:51:05 +01:00
jdescottes
6d309419d3 Issue #287 : Move utility functions from Shortcuts.js to ShortcutService 2015-11-12 23:14:57 +01:00
jdescottes
460688e2d5 Issue #287 : Move helptext to tooltip, change cheatsheet column layout 2015-11-12 22:47:51 +01:00
jdescottes
947306a80c Issue #287 : Update helptext 2015-11-12 20:31:50 +01:00
jdescottes
0b439e1b00 Issue #287 : Add forbidden keys & helptext 2015-11-12 20:31:50 +01:00
jdescottes
676cbd17ea Issue #287 : Edit shortcuts from cheatsheet window (WIP) 2015-11-12 20:31:49 +01:00
jdescottes
2e3558ef08 Issue #287 : Edit shortcuts from the Cheatsheet dialog (WIP) 2015-11-12 20:31:49 +01:00
jdescottes
b5234089cd Issue #287 : Move CheatsheetService to CheatsheetController + DialogsController 2015-11-12 20:31:48 +01:00
jdescottes
5cda3e57b4 Issue #287 : fix shortcut for cheatsheet 2015-11-12 20:31:47 +01:00
jdescottes
ca3bbf1c57 Issue #287 : Shortcuts now rely on Shortcut instances. Shortcut key can be changed dynamically. 2015-11-12 20:31:47 +01:00
jdescottes
2c75daecb1 Issue #287 : Move shortcut definition to tool instances 2015-11-12 20:31:46 +01:00
jdescottes
c11e0d5d8d Issue #287 : Rename addShortcut/removeShortcut to less ambiguous register/unregister 2015-11-12 20:31:45 +01:00
Alexander Holland
8ec47506bf Issue #331 : Gruntfile : host as variable 2015-11-11 22:28:10 +01:00
Alexander Holland
4cf6088441 tweak valid checks and event types 2015-11-05 16:12:27 +01:00
Alexander Holland
00a05ee839 fix style error 2015-11-03 15:00:29 +01:00
Alexander Holland
73badf06b0 remove strange file 2015-11-03 03:49:41 +01:00
Alexander Holland
ea679913f9 tablet touch and s-pen 2015-11-03 03:42:31 +01:00
Alexander Holland
ba33533178 tablet touch and s-pen input 2015-11-03 03:34:13 +01:00
jdescottes
c32b327f23 Fix #322 : Save As button no longer works on offline builds 2015-10-25 00:18:01 +02:00
jdescottes
573d7ca051 Fix SwapColor will not replace color if their string representation is using a different case 2015-10-24 15:41:21 +02:00
jdescottes
f61682bb8d Issue #300 : follow-up : use shorter label 2015-10-08 23:55:45 +02:00
jdescottes
0021de35b4 Issue #312 : Improve layer preview tooltip + mutualize tooltip code 2015-10-08 00:47:35 +02:00
jdescottes
a3a75b6096 Issue #315 : custom replay for Swap Color 2015-10-06 01:22:43 +02:00
jdescottes
814db90e54 Issue #311 : Fix post-rebase issues 2015-10-06 00:49:30 +02:00
jdescottes
3585c2debd Issue #311 : Fix incomplete lasso issue when creating a new selection 2015-10-06 00:21:14 +02:00
jdescottes
8b983414a6 Issue #311 : adding jsdoc to PixelUtils visitConnectedPixels 2015-10-06 00:21:13 +02:00
jdescottes
4d53f5e3b7 Issue #311 : Cleanup and comments 2015-10-06 00:21:13 +02:00
jdescottes
28912fc58f Issue #311 : Add lasso tool. Implementation and cleanup 2015-10-06 00:21:12 +02:00
jdescottes
7554b3355c Fix #311 : Add Lasso tool icons 2015-10-06 00:20:58 +02:00
jdescottes
f7592f864b Issue #311 : Add lasso tool initial commit 2015-10-05 23:51:10 +02:00
jdescottes
a0c9f2923e Issue #315 : Fix replay with alt/shift/ctrl modifiers 2015-10-02 02:04:03 +02:00
jdescottes
c9529dc65c Issue #315 : avoid saving state when replaying state 2015-10-02 01:48:35 +02:00
jdescottes
a8f727fdcd Issue #315 : Implement custom replay for transform tools + add drawing test support 2015-10-02 01:27:59 +02:00
Julian Descottes
48d1214a6d Merge pull request #314 from juliandescottes/add-save-service
Add save service
2015-10-01 01:10:23 +02:00
jdescottes
b859857b2d Issue #277 : Switch HeaderController to events instead of infinite setTimeout 2015-10-01 01:07:29 +02:00
jdescottes
669d7a21cb Issue #277 : Fix FF bug showing native save popup despite preventDefault 2015-10-01 01:06:54 +02:00
jdescottes
a286d5926a Issue #277 : Cleanup save controller 2015-10-01 00:30:36 +02:00
Julian Descottes
92cc986fb6 Merge pull request #300 from jnlopar/exportscale
Adds the ability to export a scaled spritesheet.
2015-09-29 08:34:35 +02:00
Jason Neufeld
da1f26291c Adds superclass destroy call to ImageExportController. 2015-09-28 17:14:48 -07:00
Jason Neufeld
a92e198519 Adds input event listener to scaling factor. 2015-09-28 17:10:40 -07:00
Jason Neufeld
91ffce0bfe Makes scaling export more compact and adds tooltip. 2015-09-28 17:10:25 -07:00
jdescottes
acb6fd2172 Issue #277 : Add unit test for StorageService 2015-09-25 01:41:22 +02:00
jdescottes
055bcdb001 Enhancement : Adding CTRL+SHIFT+Z as REDO shortcut 2015-09-20 12:25:54 +02:00
jdescottes
fe9875841a Issue #277 : Add isSaving state to storageService 2015-09-20 11:19:17 +02:00
jdescottes
e5be581e19 Issue #277 : Move all name update logic to a dedicated controller polling the model 2015-09-20 10:42:15 +02:00
jdescottes
6620f7e5a9 Issue #277 : Add global StorageService, enable CTRL+S 2015-09-20 10:42:14 +02:00
jdescottes
758cc6202a Issue #277 : Add new css file to style list 2015-09-20 10:41:49 +02:00
jdescottes
d96c1a9c06 Issue #277 : Extract save panel css to dedicated file 2015-09-20 10:41:49 +02:00
jdescottes
551e15e67b Issue #277 : Move storage services to dedicated package 2015-09-20 10:41:48 +02:00
jdescottes
1abd6113a3 Fix : Speed up dialog animations 2015-09-20 02:20:16 +02:00
jdescottes
ef05cc4fd1 Refactor : move FrameTransform to transform package 2015-09-20 02:20:16 +02:00
jdescottes
9f31b2c7e4 Fix : Hide grid when zoom no longer allows proper display 2015-09-20 02:20:15 +02:00
grosbouddha
3f992cbb4a Applying review comments 2015-09-20 02:12:59 +02:00
grosbouddha
90c2ed3470 Removing states in class members and using a SimplePen#draw method instead. 2015-09-17 02:26:59 +02:00
grosbouddha
5a469202e9 Remove color argument from BaseTool/BaseSelect interfaces 2015-09-16 23:40:44 +02:00
grosbouddha
e9c99a241f Migrate tools to BaseTool#getToolColor 2015-09-16 22:58:13 +02:00
grosbouddha
3209c50304 Create MouseStateService and integrate 2015-09-16 22:57:53 +02:00
grosbouddha
5d38804523 Integrate selectedColorsService into PaletteController and PaletteListController
- update selectedColorsService getColors array API to explicit
getPrimary/getSecondary
- update drawing test helper as well
2015-09-16 22:57:52 +02:00
Julian Descottes
5367c75972 Merge pull request #308 from juliandescottes/dithering
Introduce basic dithering tool
2015-09-15 07:47:11 +02:00
grosbouddha
7d964c7fde Fix dithering right-click color inversion on FF/IE
Record pressed mouse button type only at mousedown time.
On IE/FF, the button type is not available during mousemove.
Did a round of testing on both FF and Chrome.
2015-09-15 00:57:13 +02:00
grosbouddha
d0acb625cf Applying review comments for dithering tool 2015-09-14 23:40:16 +02:00
jdescottes
e6950e5c1a Issue #306 : Switch implementation for memoizer 2015-09-14 22:04:25 +02:00
grosbouddha
63449b2694 Fixing lint errors 2015-09-14 21:53:29 +02:00
grosbouddha
ed32ddc747 Introduce basic dithering tool 2015-09-14 21:41:10 +02:00
Julian Descottes
cbb97c60d0 Issue #215 : Fix cursor coordinates regression 2015-09-14 18:47:41 +02:00
jdescottes
069bfb9a90 Issue #305 : Changed naming for consistency -> original-size 2015-09-13 23:28:53 +02:00
jdescottes
96ab2dd781 Issue #305 : Add keyboard shortcut for native preview resolution 2015-09-13 23:07:22 +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
cffb68c88c Fix : Hand cursor was not properly centered 2015-09-13 17:33:06 +02:00
jdescottes
489298e87a Issue #304 : Blur FPS range input only on change event 2015-09-13 15:49:18 +02:00
jdescottes
dffe23746c Issue #303 : Reset input[type=range] padding in reset.css 2015-09-13 15:12:46 +02:00
jdescottes
8c629bd842 Issue #301 : Switch between light and dark highlighted pixel color 2015-09-12 17:54:11 +02:00
Jason Neufeld
c7a80ebdec Drops settings back to 550px, since it doesn't need the extra 50 anymore. 2015-09-06 11:57:02 -07:00
Jason Neufeld
c6287653f9 Moves the scaling factor into spritesheet export. Cleans up CSS and makes description spans with inline styles into divs. Adds a little more margin below the scaling factor so it's not too snug with the Download PNG button. 2015-09-06 11:53:10 -07:00
Jason Neufeld
bd8eaa4307 Uses ImageResizer for spritesheet export scaling. 2015-09-06 11:48:04 -07:00
Jason Neufeld
c0fda032e5 Reverts change to BlobUtils. 2015-09-06 11:42:13 -07:00
jdescottes
744709b15b Issue #256 : update Move tool tooltip 2015-09-02 01:16:09 +02:00
jdescottes
6a2f7fb58d Issue #256 : add drawing test 2015-09-02 00:48:29 +02:00
jdescottes
479df8ced7 Issue #256 : apply move tool to all layers / all frames 2015-09-02 00:36:03 +02:00
Jason Neufeld
72edf47734 Adds the ability to export a scaled spritesheet. 2015-08-31 11:21:17 -07:00
jdescottes
6b6674a04d Issue #215 : Dev environment : first undo/redo drawing test 2015-08-25 01:01:12 +02:00
jdescottes
754bc9b830 Issue #215 : Dev environment : support keyboard/undo/redo events in drawing tests 2015-08-24 23:56:09 +02:00
jdescottes
ff98670055 Selection Manager : fix undo/redo regression 2015-08-15 17:08:09 +02:00
jdescottes
6a4d3cb106 Keyboard Cheatsheet : extract color shortcuts to dedicated category 2015-08-14 00:01:47 +02:00
jdescottes
7048e1fd42 Palette toolbox : 1-9 shortcut styling update 2015-08-13 01:01:20 +02:00
juliandescottes
cd36c07a45 Add shortcut numbers for 1-9 palette colors 2015-08-13 00:44:47 +02:00
juliandescottes
99da69553c Copy paste out of bounds : added SelectionManager unit tests 2015-08-09 15:42:46 +02:00
juliandescottes
fdb5483e87 JSCS fixes 2015-08-09 12:51:25 +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
jdescottes
9800d85cb7 Add keyboard shortcuts 1 to 9 to quickly select palette colors 2015-07-24 01:16:47 +02:00
jdescottes
011b07c735 Palette editor : Fix blur delegation on Firefox 2015-07-22 00:10:56 +02:00
jdescottes
2fdc85556b Palette Editor : Fix color change from hex input 2015-07-21 23:40:55 +02:00
jdescottes
7a8efc56b0 Import dialog : image-preview style : display changed to block 2015-06-07 13:19:44 +02:00
jdescottes
0d81865f3b Adding button to reset.css font rules 2015-06-07 12:45:51 +02:00
jdescottes
12cfe16cb4 Cleaning up settings and dialogs CSS 2015-06-07 12:40:40 +02:00
James Lissiak
5c46cfe20a Updating for pull request feedback
- Using labels for the import type radio buttons
- Non animated gifs can now be imported as a spritesheet
- Fixing frame slicing to ignore a partial frame while looping
2015-06-03 19:48:29 -07:00
James Lissiak
2d9001db6e Updating the spritesheet import to use size
- The import dialog now allows users to select an option between single image or spritesheet importing
- The spritesheet option allows setting of the size of an indivdual frame and the offset from the left/top from which to start slicing frames
- Selecting the spritesheet option will display a frame slice grid over the preview image to give a quick view of where the frames will be made
- When importing the spritesheet blank (transparent) frames and also partial frames will be ignored
- This allows users to import spritesheets that have been packed into a larger image with excess padding
2015-06-02 21:54:26 -07:00
James Lissiak
8ff15fd0e1 Fixing the preview frame grid stroke
- The width/height of the canvas used to draw the frame grid in the preview was incorrect, so the stroke width was too thick
- This change fixes it so the stroke width remains nice and thin by applying the correct canvas size
2015-06-01 10:50:58 -07:00
James Lissiak
8e4ea8437f Fixing unnecessary whitespace changes
- My editor added additional whitespace to several unchanged lines, so I just reverted them
2015-06-01 10:38:10 -07:00
James Lissiak
48f24c0cf3 Adding spritesheet import
- Updated the import dialog to allow users to specify the number of frames in the image (which defaults to 1 x and 1 y)
- Setting the frame count for x and y will draw a dotted line in the preview that shows where the image will be split into individual frames
- When imported with a frame count above 1, the source image will be split into the different frames and loaded just as if it were an animated gif
- This allows users to import existing spritesheet pngs, including those produced by the piskel export function
2015-06-01 10:29:52 -07:00
juliandescottes
8d85093874 Fix GIF issue 2015-05-18 11:51:28 +02:00
juliandescottes
1beeb8d6e4 Revert "Fix a GIF bug ... again"
This reverts commit f9b07b29a9.
2015-05-18 11:47:48 +02:00
juliandescottes
f9b07b29a9 Fix a GIF bug ... again 2015-05-18 10:40:05 +02:00
juliandescottes
9bc330e5e8 Merge branch 'master' of https://github.com/juliandescottes/piskel 2015-05-13 11:21:24 +02:00
juliandescottes
a51e20b370 Fix #282 : Clean build of gif.js made the issue disappear ... 2015-05-13 11:20:44 +02:00
jdescottes
ef6ef6256e Merge branch 'master' of https://github.com/juliandescottes/piskel 2015-05-08 22:36:03 +02:00
jdescottes
4edbc29e72 Fix #281 : Zoom keyboard shortcuts on Firefox
Keycode not consistent on FF :
https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyCode

Also added support for numpad +/- keys.
2015-05-08 22:34:29 +02:00
Julian Descottes
b72c775a04 Merge pull request #275 from MaxEden/master
Zip-Export: Split by layers option
2015-05-04 16:05:42 +02:00
Max Eden
034057dcd2 Moved subfunctions to prototype 2015-04-30 13:17:56 +06:00
Max Eden
016316518d Zip-Export: Split by layers option 2015-04-29 20:20:35 +06:00
jdescottes
ac9ccd04e2 Fix currentcolors on sprites with many frames 2015-04-29 04:00:46 +02:00
juliandescottes
ce8d71f47e Fix : resize panel : maintain ratio is always on 2015-04-28 13:32:55 +02:00
jdescottes
d3f5a41c0d Fix popup preview on Firefox 2015-04-27 22:34:50 +02:00
jdescottes
3f181c6248 Fix gif export transparency issue 2015-04-27 22:23:35 +02:00
juliandescottes
9de77c9f21 Fix : Add mac os menu (removed with nw > 0.10) 2015-04-26 23:33:49 +02:00
jdescottes
cf62f2ac0b Merge branch 'master' of https://github.com/juliandescottes/piskel 2015-04-26 22:13:23 +02:00
jdescottes
16362e1b13 Fix : Online save failing 2015-04-26 22:07:14 +02:00
juliandescottes
6df145455e enhancement : use size-input instead of select for export 2015-04-24 14:57:01 +02:00
juliandescottes
daceb326c5 enhancement : use size-input instead of select for export 2015-04-24 14:55:00 +02:00
jdescottes
5fbadc0d80 wip : Add save as button 2015-04-24 00:00:53 +02:00
jdescottes
473bd4705c Add save as button 2015-04-23 23:59:05 +02:00
jdescottes
9e1cfef924 fix:focus preview popup if already opened 2015-04-15 07:27:00 +02:00
jdescottes
e384f7d2e2 Added Blob polyfill for Phantom JS (debug mode only) 2015-04-14 23:08:53 +02:00
jdescottes
be3d2cf20d merge 2015-04-14 22:36:25 +02:00
jdescottes
54ae52e117 Merge branch 'master' of https://github.com/juliandescottes/piskel 2015-04-14 21:31:49 +02:00
juliandescottes
b480acc6a0 Added JSCS linter to enforce style conventions 2015-04-14 18:02:33 +02:00
juliandescottes
007e4d4e11 Usability : keyboard shortcuts cheatsheet
- click outside of cheatsheet-wrapper closes the popup
- removed jquery from CheatsheetService
- removed label 'Keyboard shortcuts' in favor of tooltip
2015-04-14 11:09:36 +02:00
juliandescottes
6070ebead5 Updated dependencies 2015-04-13 17:24:49 +02:00
juliandescottes
1f5272415c #261 replaced throw by console.error for recoverable errors 2015-04-13 14:33:34 +02:00
juliandescottes
d1b12a07ac fix : check undefined palette 2015-04-13 13:29:13 +02:00
juliandescottes
77877c118f unknown tinycolor 2015-04-13 13:11:36 +02:00
juliandescottes
e0c16486d3 fix : strip # from hexcolor before parseint16 2015-04-13 13:08:42 +02:00
juliandescottes
ba491736c1 test : add unit test for ColorUtils 2015-04-13 13:02:12 +02:00
juliandescottes
0e817a88a7 Fix for #265 2015-04-13 11:45:50 +02:00
jdescottes
e260b36585 Update save form display 2015-04-10 00:57:20 +02:00
juliandescottes
3d58bcae6c Fix jshint errors 2015-04-09 18:24:34 +02:00
Julian Descottes
281103c46e wip : replace Job by promises 2015-04-09 17:17:05 +02:00
Julian Descottes
e6ed0c28a3 wip : replace Job by promises 2015-04-09 17:16:58 +02:00
Julian Descottes
522006f67a wip : replace Job by promises 2015-04-09 17:16:48 +02:00
Julian Descottes
e11355193b Now using webworker to compute current colors 2015-04-09 17:16:26 +02:00
jdescottes
30cdb6d335 Fix node-webkit regression 2015-04-08 00:14:35 +02:00
jdescottes
3d6cd3e576 Fix post merge bugs for desktop mode 2015-04-07 23:54:49 +02:00
juliandescottes
4b7b18ca6f post merge 2015-04-07 23:15:36 +02:00
juliandescottes
9e6e39e3d8 WIP : Use workers to compute hash and current colors 2015-03-26 11:15:11 +01:00
Julian Descottes
c600d62bd2 Merge pull request #259 from leegrey/desktop-save-action
Desktop IO Features
2015-03-26 10:42:52 +01:00
Lee Grey
f114676db7 Include save file path in "Successfully Saved" popup. Show full save path under the save button. Hide the "save to browser" portion of the save panel when running in desktop mode. 2015-03-26 20:32:27 +13:00
Lee Grey
0ec3787fc4 change require() to window.require() so compiler does not report errors. 2015-03-25 18:36:55 +13:00
jdescottes
40cced7be0 Merge branch 'master' into fix-palette-bugs 2015-03-24 17:17:22 +01:00
Julian Descottes
81a9e7a678 Merge pull request #260 from juliandescottes/fix-chrome-canvas-radeon-bug
Workaround for Chrome 41 issue Canvas + Radeon :
2015-03-24 17:01:37 +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
932974d744 Undid changes to suppress Errors, since grunt test did not like it that way either. (Bad style.) 2015-03-24 23:09:44 +13:00
Lee Grey
eb4941417c suppressing build errors when referring to "require" and "process" 2015-03-24 22:58:42 +13:00
Lee Grey
93deb1c2c5 Just adding semicolons to make the linter happy 2015-03-24 22:33:14 +13:00
Lee Grey
c9b581f6db When running in Node-Webkit, hold onto the full savePath when opening.piskel files via the gui or drag and drop. 2015-03-22 00:39:23 +13:00
Lee Grey
6a6f75b3ce Moved desktop lO logic to new DesktopStorageService class. Bound keypresses for ctrl-o, ctrl-s, and ctrl-shift-s. Savepath is now also propagated on resize operation. SaveFile can optionally guarantee that a supplied file extension will be present on output file. 2015-03-19 23:46:53 +13:00
Lee Grey
04a1633a90 Moved desktop FileUtils into their own class. Split PiskelFileUtils::loadFromFile() so the decoding portion can be called separately by desktop load function. "savePath" is stored in piskel instance, and propagated to new instances in HistoryService. "savePath" is also stored on load so it is available for resave. 2015-03-18 00:24:03 +13:00
Lee Grey
b168e8ca76 Store user selected filePath on the Piskel instance stored in pskl.app.piskelController. Getter and Setter in PublicPiskelController for filePath. 2015-03-16 23:13:36 +13:00
Lee Grey
fa6f2e5db6 Added new save functions for when running in Node-Webkit. 2015-03-15 01:40:00 +13:00
Lee Grey
1c66282b01 Added pskl.utils.Environment for detecting if Piskel is running in Node-Webkit. 2015-03-14 00:11:24 +13:00
jdescottes
5cbb9b8664 ongoing : web workers for current colors service 2015-03-11 18:51:49 +01:00
jdescottes
6254490a23 feature #251 : Set default size in Resize pref panel 2015-03-04 08:37:37 +01:00
jdescottes
43e60e300c Set preview render flag when updating TILED_PREVIEW seW 2015-03-03 23:50:19 +01:00
jdescottes
fe95abca0f Switch to template for popup preview (easier integration) 2015-03-03 23:36:12 +01: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
jdescottes
68a807ccb5 Forgot PopupPreviewController.js 2015-02-27 23:57:14 +01:00
jdescottes
7a355b39a0 Refactored HistoryService, CurrentColorsService, draft for popup preview 2015-02-27 23:54:18 +01:00
jdescottes
0f1489727c Removed JQuery from ImportController 2015-02-26 22:07:36 +01:00
jdescottes
bab3d6677e Remove JQuery from all setting controllers 2015-02-26 01:25:33 +01:00
jdescottes
bcb709300c Added method to enable image smoothing on Canvas 2015-02-26 00:13:32 +01:00
jdescottes
4f2f01ea36 Wrapped applicationSettings in FORM 2015-02-23 00:32:34 +01:00
jdescottes
8592cd2e53 Moved resize+app settings to AbstractSettingController 2015-02-23 00:23:11 +01:00
jdescottes
b4c1a4c714 Merge branch 'master' into fix-palette-bugs 2015-02-22 23:08:21 +01:00
jdescottes
3585a6f96e Merge resize content and resize canvas in single form 2015-02-22 23:01:43 +01:00
juliandescottes
0914e2816e Added Event utils to easily add/remove events without leaks. Added Max FPS setting to appl settings 2015-02-22 18:03:46 +01:00
juliandescottes
0b41c0f648 Removing jquery leftover 2015-02-22 16:47:44 +01:00
juliandescottes
beb2fa6ba9 Removed JQuery from ApplicationSettings 2015-02-21 15:41:32 +01:00
jdescottes
61fb6c5e6f Extract resize anchor code to dedicated widget file 2015-02-20 01:40:34 +01:00
jdescottes
d310a77893 Enhancement : choose anchor for resize canvas 2015-02-17 02:06:52 +01:00
juliandescottes
84f366e7e4 enhancement : resize panel 2015-02-15 23:41:58 +01:00
jdescottes
561d016a45 fix : keyboard accessibility for colorpicker inpus 2015-02-12 00:39:38 +01:00
jdescottes
334d6ad21f fix : rename preferences tab 2015-02-10 23:09:28 +01:00
jdescottes
0382b3858b enhancement - cleaner UI for resize panel 2015-02-05 02:21:15 +01:00
jdescottes
2aa87b5fac enhancement - cleaner UI for resize panel 2015-02-05 02:16:25 +01:00
jdescottes
d7fef0f88b fix - log error if BackupService fails to store piskel in localstorage 2015-02-05 01:59:37 +01:00
jdescottes
c7131678f8 Fix mousewheel event for IE11 2015-01-24 00:00:08 +01:00
juliandescottes
5831447f75 Fix #242, onion skin rendered not cleared if 0 frames 2014-12-27 15:02:41 +01:00
jdescottes
043f077408 Bug in undo when cancelling Shape tool used with Shift key 2014-12-24 08:27:54 +01:00
jdescottes
5cb1d0cd03 Fixed CanvasRenderer regression + added unit test 2014-12-21 18:56:40 +01:00
jdescottes
123ea31191 Cleanup minimapController, center previewFilm canvas 2014-12-21 18:38:14 +01:00
jdescottes
df5aef363b Move to imgstore-b, change body bg 2014-12-21 16:44:10 +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
e1ba57c92f cleanup MinimapController 2014-12-18 22:29:14 +01:00
jdescottes
2db04fe7d6 Support rectangular resolution & maximize viewport usage 2014-12-18 21:42:03 +01:00
jdescottes
7fd49aaccb Removed localhost url ... 2014-11-26 07:48:15 +01:00
jdescottes
2ab1e29365 Merge branch 'master' into feature-add-effects 2014-11-23 21:54:31 +01:00
jdescottes
5afec16258 Cleanup of console.log in MinimapController.js-n 2014-11-23 21:48:32 +01:00
jdescottes
fad483ce7a Increased movement speed 2014-11-23 21:44:51 +01:00
jdescottes
b10e87d2b7 Fix for issue #189 : user can move the viewport via click n drag of middle mouse button 2014-11-23 21:37:34 +01:00
jdescottes
61ee1d9b32 Added clone tool + icon 2014-11-23 16:27:12 +01:00
jdescottes
ce1a5c4918 Rotate non square sprites, added rotate icon, unit tests for transforms 2014-11-23 15:03:35 +01:00
jdescottes
796cd4466e Added Rotate tool + abstract Transform tool 2014-11-22 00:07:11 +01:00
jdescottes
0f49c884f2 Mutualize HTML generation for drawing tools and transform 2014-11-21 01:15:55 +01:00
jdescottes
c8dae1cb79 Added mirror transformation 2014-11-19 23:00:25 +01:00
jdescottes
54837d0e21 Issue #228 : Zoom is very slow on Firefox 2014-11-01 14:00:35 +01:00
Andrey Etumyan
ac5083633b Combining oninput and onchange events for the FPS counter. 2014-10-31 22:38:11 +04:00
jdescottes
c32af500dc add notification if image upload fails 2014-10-01 01:21:49 +02:00
jdescottes
dc4de32162 Added support for .PAL palettes 2014-09-30 00:58:15 +02:00
jdescottes
243990a90f Fixed : cache issue coming from piskel-boot file 2014-09-30 00:19:54 +02:00
juliandescottes
fe5e8966a5 added shortcuts to select previous / next color in palette 2014-09-27 11:04:03 +02:00
juliandescottes
37aa6c3d72 sort colors on image import for palette 2014-09-27 01:22:20 +02:00
juliandescottes
d805e13d57 sort colors on image import for palette 2014-09-27 01:10:54 +02:00
jdescottes
a7ef57b6ee fixed color sorting for desaturated colors 2014-09-26 00:03:24 +02:00
juliandescottes
ac08775406 improved current colors sort 2014-09-25 00:13:23 +02:00
juliandescottes
6583d3d560 moved rgbToHex correct implementation to pskl core utils 2014-09-24 21:53:41 +02:00
juliandescottes
b5465ca066 fixed palette import bug 2014-09-24 21:50:16 +02:00
jdescottes
258d13371d improved current colors sort algorithm 2014-09-24 08:15:18 +02:00
jdescottes
e3e6730b45 improved current colors sort algorithm 2014-09-24 07:43:04 +02:00
jdescottes
6ef99bba15 improved current colors sort algorithm 2014-09-24 00:26:31 +02:00
jdescottes
afe790e5e3 Removed unused CSS rules for old edit/merge layer actions 2014-09-23 08:05:31 +02:00
jdescottes
8989e984cb added dedicated style for colors-list for IE and FF + bug fixing on ProgressBarCOntroller for FF 2014-09-23 08:00:46 +02:00
jdescottes
00dd660571 Use dedicated service to display progress information 2014-09-22 23:51:28 +02: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
9ef46d5ec5 added FrameUtils unit tests 2014-09-21 21:39:54 +02:00
jdescottes
6445b44d02 Moved image import to worker 2014-09-20 09:14:21 +02:00
jdescottes
9afe69cb87 Split CreatePaletteControllers in ctrl + widget for colors list 2014-09-18 07:59:56 +02:00
jdescottes
508fb79c32 Homogeneize layout, drop palette 2014-09-18 07:18:07 +02:00
jdescottes
8ebdc4cd41 Enhancement palettes : Added download palette
- palettes can be downloaded as GPL palettes
- slightly tweaked the UI of hsl rgb picker
- switched preferred format of spectrum to hex
2014-09-17 01:32:59 +02:00
jdescottes
fab9c6e836 select new palette after saving 2014-09-16 00:37:24 +02:00
juliandescottes
9325abb924 Enhancement : Layers merge
Added drawing test + fixed drawing test runner on Mac OS X
2014-09-13 20:21:40 +02:00
juliandescottes
4ed7338f25 Feature : merge layers
Added feature to merge a layer with the layer below
Done at #jsconfeu2014 :)

New icon in icons : merge-icon.png
TODO : reorder the icons folder, it's waaaaaaay too messy !!
2014-09-13 20:10:05 +02:00
jdescottes
90845b3a62 Enhancement : Color palettes
- Added clone feature when editing existing palette
- Added arrow up/down to increase decrease input values
- Paint.net palettes are supported
2014-09-09 23:53:57 +02:00
jdescottes
125e332b7c Enhancement : palette color creator
- Added import of GPL files
2014-09-07 18:25:17 +02:00
jdescottes
e457209c8f Enhancement : Palette color creator
- Added import button on create palette dialog
- implemented import from images
- missing limitation on color count when importing !!
- should remove button when editing existing palette
2014-09-07 14:31:28 +02:00
jdescottes
8643f4402a Moved PaletteService from pskl.service to piskel.service.palette 2014-09-07 12:27:06 +02:00
jdescottes
92d7109ef7 Enhancement : Palette colors creation
- Added cancel button to create palette dialog
- Added escape/unescapeHtml methods to pskl.utils
- Escaping palette name now ...
- Removed outdated comment in app.js regarding appEngine token
- Added a call to destroy() during dialogClose of AbstractDlgCtrl
2014-09-07 12:22:44 +02:00