Wykres commitów

359 Commity (5516f93da51c969f9f9dc7cfa05b51c13e8efe66)

Autor SHA1 Wiadomość Data
Jens Mönig 3809c327df migrate experimental “wardrobe” reporters to the new “my costumes” reporter 2017-06-20 09:14:41 +02:00
Jens Mönig 9b497c2132 make sure to stop active processes when deleting a block 2017-06-20 08:51:55 +02:00
Bernat Romagosa a213a1d213 stop video stream when webcam dialog is closed 2017-06-12 12:36:26 +02:00
Jens Mönig 7ec3e16c4f added inheritance support for scripts
partly done, copy-on-write is still missing
2017-05-31 16:08:30 +02:00
Jens Mönig eea1d08c82 let clones share the orginal’s scripts without shallow-copying them 2017-05-30 17:07:09 +02:00
Jens Mönig cc47a6fb5a slightly tweaked inheritance support
so sprites and the stage can share the same public protocol
2017-05-15 23:05:21 +02:00
Jens Mönig abd7ad6a37 added inheritance support for ‘costume #’ 2017-05-12 16:40:29 +02:00
Jens Mönig 1a872934de added inheritance support for the wardrobe
also exposed “costumes” as an attribute
2017-05-12 15:21:12 +02:00
Jens Mönig c14e15f7b1 added attributes to the “delete” block’s drop-down menu 2017-05-09 18:08:56 +02:00
Jens Mönig 145c764632 inheritance of sprite attributes (x, y, direction, size) 2017-05-05 11:17:15 +02:00
Jens Mönig e206f145a7 Chrome patch - attribute inheritance (in progress) 2017-04-23 18:30:49 +02:00
Bernat Romagosa 075d9c2d3a Added guard against non-SSL access 2017-04-12 10:31:44 +02:00
Bernat Romagosa c9885ad5b1 webcam dialogs working 2017-04-11 17:51:06 +02:00
Jens Mönig ce23f9f54f v4.1 - dev -
Features:
* polymorphic sprite-local custom blocks
* inheritance of sprite-local custom blocks
* localization support when typing expressions
* support for user-forced line-breaks in custom block labels
* ternary Boolean slot setting: support to limit Boolean input slots to
“true/false” outside of rings and in palette
* support for default values in custom block Boolean slots
* experimental: duplicate block definition (hidden in shift-click
context menu)
* support for codification of String, Number and Boolean value types
* costume icons indicate svg costumes
* sprites’s rotation centers can be adjusted onstage

Fixes:
* changed keyboard shortcut indicator for “find blocks” to “^”
* prevent Snap from “hanging” when encountering certain errors in
visible stepping
* only mark implicit parameters if no formal ones exist
2017-04-10 11:48:55 +02:00
Jens Mönig 00db1cce3f Revert to 4.0.10
to prepare for newly surfaced bug in the Chrome browser
2017-04-10 10:28:30 +02:00
Jens Mönig 50a86060f9 allow sprites’ rotation centers to be adjusted onstage 2017-03-07 03:00:44 -08:00
Jens Mönig 4db428b65c roll-back double-pointer container cache for methods 2017-03-01 10:11:47 +01:00
Jens Mönig ab03c81423 experiment with new dynamic method (cache) updating
OOP under construction. Possibly to be reverted again, so don’t rely on
this
2017-03-01 08:11:04 +01:00
Jens Mönig d2dee38b34 experiment with new “methods” attribute
… but already planning to perhaps revert this mechanism again…
2017-02-27 08:18:53 +01:00
Jens Mönig ebc29c76d5 turned “definition” property of custom block instances into a double-pointer (Variable) structure
in preparation for OOP (method inheritance). This should not result in
any new behavior or break anything, if it does (at this point), it’s a
bug.
2017-02-16 08:08:30 +01:00
Jens Mönig 114425b421 disable (comment out) experimental block inheritance for now 2017-02-14 14:29:20 +01:00
Jens Mönig 00e68ade1a Custom block inheritance, highly experimental and under construction 2017-02-02 12:00:47 +01:00
Jens Mönig c8c36ae18f added support for codification of String, Number and Boolean value types 2017-01-27 19:05:50 +01:00
Jens Mönig 55c7da62c5 changed keyboard shortcut indicator for “find blocks” to “^” 2017-01-19 18:36:52 +01:00
Jens Mönig 55baea09e7 support localization when typing expressions 2017-01-19 18:32:57 +01:00
Jens Mönig 9bee3cd9c2 added "savingPreferences" flag
for bh's "Eisenbergification" library, sigh.
2017-01-13 10:08:02 +01:00
Brian Broll cd0e9bc042 Added 'display:none;' to input. Fixes #1612 2017-01-10 17:15:50 -06:00
Jens Mönig a798eaef2d updated version and history 2017-01-09 18:00:32 +01:00
Jens Mönig ce5561faa8 Merge pull request #1390 from brollb/1207-go-back-layers
'go to back' on large num in 'go back' block. Fixes #1207
2017-01-09 17:56:11 +01:00
jmoenig 5f43d7af76 rearranged some code
to fit inside lines of 80 characters max, to satisfy static code
analysis
2017-01-04 16:52:59 +01:00
jmoenig cae286d346 prevent inherited variables from being refactored
and from causing an error because they can’t be.
Also, changed wording of variable renaming menu items
and added a shadow to the variable block symbol in the dialog box (so
it looks the same as the one that’s already in use elsewhere)
2017-01-04 16:35:09 +01:00
bromagosa 4ce250a2ef Merge branch 'master' of https://github.com/jmoenig/Snap--Build-Your-Own-Blocks into var-rename 2017-01-04 10:30:48 +01:00
jmoenig 1843e29087 submenu enhancements
* improve keyboard navigation (use right-/left-arrows to enter/leave)
* delay popping up submenus when mousing over submenu items
* right-align submenu indicator (same as a shortcut)
* keep submenus open if the mouse leaves them
* support creating custom drop-downs from nested dictionaries
2017-01-03 17:24:25 +01:00
bromagosa 7623cc9f4a Custom block templates also visited, both options available from context menu 2017-01-03 11:35:36 +01:00
Bernat Romagosa 0d65bc9b79 Merge branch 'master' of https://github.com/jmoenig/Snap--Build-Your-Own-Blocks into var-rename 2016-12-29 12:23:01 +01:00
Bernat Romagosa ce052a8dd5 Refactoring script vars and upvars, plus some enhancements 2016-12-29 12:19:45 +01:00
jmoenig 1ecb97a972 Disable JS-Functions to protect users from malicious scripts
commented out for now
2016-12-27 16:08:23 +01:00
jmoenig e5b7559247 tweaked reporterize infixParser 2016-12-23 14:59:13 +01:00
bromagosa 85ebb82fd6 Working on script and global var refactor-renaming 2016-12-23 12:13:36 +01:00
jmoenig b015294208 simplified reporterize>>blockFromAST 2016-12-22 14:08:05 +01:00
jmoenig d6ced6fa2b added Boolean operators to “reporterize” 2016-12-21 10:53:46 +01:00
jmoenig 29b19ba859 fixed a glitch in "reporterize"
thanks, @BookOwl, for catching this!
2016-12-21 08:51:36 +01:00
jmoenig 294f83392c fixed an expression parsing glitch
thanks, @cycomachead for the catch!
2016-12-21 08:37:21 +01:00
jmoenig a255b0b192 tweaked "reporterize" 2016-12-20 08:15:23 +01:00
jmoenig 44458d52ab reporterize: support '_' as empty slot place holder
_ * 2
2016-12-19 17:20:50 +01:00
jmoenig 9f0a445319 reporterize: support for monads etc. 2016-12-19 16:34:54 +01:00
jmoenig 41e55064a2 moved reporterizing infix expressions to search-blocks field
thanks, @bromagosa, for the brilliant idea!
2016-12-19 14:27:03 +01:00
jmoenig fad3cb4263 updated version timestamps
and tweaked code formatting to please pedantic linters :-)
2016-12-09 09:08:44 +01:00
Joan Guillén i Pelegay 12ee047b43 adapting 'pen trails capture' messages 2016-12-08 00:50:28 +01:00
jmoenig 76069819e2 fixed #1543 2016-12-05 08:58:16 +01:00
jmoenig 3a23ffb969 added keyboard shortcut ctr-y for “undrop” (in addition to shift-ctrl-z) 2016-11-28 07:36:58 +01:00
jmoenig 5b1b4a5e36 use new first-class animations framework 2016-11-25 14:42:20 +01:00
jmoenig f37977f320 Block editing improvements - in development
* auto-wrapping for C-shaped slots (around top-level command stacks)
* settings option for auto-wrapping around inner nested stacks
* unlimited “undrop / redrop”, incl. keyboard shortcuts ctrl-z
ctrl-shift-z
* “undrop” also brings back blocks and scripts deleted via context menus
* … or via backspace / delete in keyboard entry mode
* Note: “undrop” is meant to be a temporary solution until
VanderbiltEdu’s synching / undo mechanism is ready for prime time
2016-11-22 10:47:47 +01:00
jmoenig f720fa7629 updated versions for pending release v4.0.9 2016-10-28 19:09:28 +02:00
Jens Mönig 54a3c4bc8b Merge pull request #1453 from brollb/costume-editing
Fixed minor costume editing discrepancy
2016-10-16 17:32:33 +02:00
Jens Mönig 23c68a72c6 Merge pull request #1434 from brollb/664-stamp-ignores-ghost-effect
Update globalAlpha when stamping. Fixes #664
2016-10-16 17:30:27 +02:00
jmoenig ff5f9a7601 Visible Stepping, and more
* Visible Stepping with flashing blocks + slider for stepping speed
* user-controlled visible stepping with “step forward” button
* speed-up: removed unnecessary yields when running custom blocks
* you can now force a single yield with “wait 0” block
* tweaked keyboard entry: if inserted block has inputs go to first one
* only autoscroll panes where it makes sense (not the palette etc.)
* populate messages drop-down with all msgs, including ones from custom
block definition
2016-10-15 11:15:01 +02:00
Brian Broll 4063622e26 Fixed costume editing discrepancies 2016-10-07 11:28:25 -05:00
Brian Broll ee3442ca16 Update globalAlpha when stamping. Fixes #664
WIP #664 Record the originalAlpha and reset
2016-09-28 11:01:05 -05:00
Brian Broll 338b1e309b 'go to back' on large num in 'go back' block. Fixes #1207 2016-08-26 12:19:50 -05:00
Jens Mönig 36f6a86c8b fixed #1329 - color collision detection for retina mode 2016-07-19 14:36:52 +02:00
Jens Mönig cd03fb3028 finalizing v4.0.8 2016-07-14 12:18:23 +02:00
Jens Mönig 480b090132 updated credits for graphic effects 2016-07-11 18:05:41 +02:00
Jens Mönig 519b86688c linted graphic effects code 2016-07-04 12:15:17 +02:00
Jens Mönig 541015c2a8 Merge pull request #1244 from djdolphin/graphiceffects
Add missing graphic effects from Scratch
2016-07-04 12:03:19 +02:00
Jens Mönig 5b0a8b296a keyboard- and search field support for "false" block 2016-07-04 11:57:04 +02:00
djdolphin 6627c45ba3 Fix #1176 2016-06-26 20:04:28 -04:00
Michael Ball 692a294559 Allow the new boolean block to be findable
Necessary for the find bar and typing features
2016-06-19 23:44:08 -07:00
Jens Mönig 572c05502f fixed #1248 2016-06-12 08:10:48 -04:00
djdolphin 3d7ea257f1 Fix whirl effect and avoid excessive property lookups
Scale the whirl effect to affect the entire image and flip the whirl
direction like Scratch 1.4 does. Image dimensions are also now stored
in variables to avoid looking them up thousands of times in a row.
2016-06-11 22:21:34 -04:00
djdolphin 6cdc861926 Add missing graphic effects from Scratch 2016-06-04 15:06:35 -04:00
Jens Mönig 329dc964b6 use textual labels for Boolean values in watchers and balloons 2016-06-04 09:36:55 +02:00
Jens Mönig f86a414343 Interactive Toggle Switches for Boolean Slots and Literals
in progress…
2016-06-01 13:35:54 +02:00
Jens Mönig 5dbb6ad8a1 Retina display support tweaks - IN PROGRESS -
* fixes the FILL block on retina screens
* fixes turning pentrails into costumes on retina screens
* adds an option to the settings menu letting the user switch between
non-retina and retina resolutions on devices and in browsers that
support it
* Morphic documentation update for retina support

Again, folks, this is IN PROGRESS and not yet ready to be released. But
it’s getting closer to being testable :-)
2016-05-11 18:03:49 +02:00
Jens Mönig 179d93f103 support for retina displays, integrates #1063 - IN PROGRESS
This has bee designed and written by the amazing Bartosz Leper
(@bl-nero). Since I totally suck at Git and find myself incompetent to
resolve merge conflicts, I’ve decided to manually copy Bartosz’s
changes mostly verbatim over, tweaking them only ever so slightly in
ways that don’t alter their functionality, except for introducing a
tiny test so current Safari still loads Snap, albeit not in retina
mode. THIS IT NOT READY FOR RELEASE YET, IT’S WORK IN PROGRESS. Get it?
Thanks!
2016-05-10 20:33:44 +02:00
Jens Mönig 71333021d4 cloning speedup
significantly speed up sprite cloning through partial shallow-copying
of scripts and costumes instead of deep-duplication
2016-05-04 16:37:46 +02:00
Jens Mönig eeffcd8139 Merge pull request #1189 from ubertao/lang-zh
update Simplified Chinese translation
2016-05-02 13:09:31 +02:00
Jens Mönig ed3b56a610 first-class sprites 2016-05-02 12:53:08 +02:00
Hongwei Zeng 8c3b04e2da fix localization of 'debugging primitives' prompt in Operators palette 2016-04-28 07:02:13 +08:00
Jens Mönig b35bc9907a prepare repo for v4.0.7 2016-04-27 10:39:27 +02:00
Jens Mönig bbb5106879 towards v4.0.6
* fixed #99 (saving linked lists)
* fixed #1163
* added web api / https reporter library
* new “transient variable” feature
* German translation update
2016-03-16 13:00:31 +01:00
Jens Mönig 345f635fac Reenable custom hat blocks when dropping a sprite 2016-03-06 21:45:31 -06:00
Jens Mönig df0269f5cc support for viewing 2D lists as tables 2016-02-24 11:35:18 +01:00
Jens Mönig 300a6dff7a fixed #1082 - revert to ’any key’ in the key-pressed menu 2015-12-22 08:00:57 +01:00
Jens Mönig 7934f4cd03 Optimization: Don’t redraw unrotateable sprites on TURN 2015-12-18 18:24:25 +01:00
Michael Ball e27a7f245e Resolve merge with 4.0.4 2015-12-15 03:46:27 -08:00
Jens Mönig 9ab71592aa tweaked contributed code and updated history 2015-12-15 10:34:27 +01:00
Jens Mönig e052d21126 Merge pull request #1056 from Craxic/master
Automatic sprite center detection
2015-12-15 10:25:48 +01:00
Jens Mönig f24b65f673 towards v4.0.4 - under construction -
* Show result bubble when the user clicks on a command script that uses
REPORT (You can now click on REPORT and it actually does something)
* New generic “When” hat block, enhances red stop button behavior
* New block (instance) variables feature (experimental)
* evaluator performance optimizations
* Morphic grab-threshold fix for scroll frames
* fixed several block rendering glitches
* List category LENGTH reporter now also works on text
* Changed “any” to “random” (in English only)
* new FILL primitive in the Pen category
* switched to animation frame scheduling, please use TURBO for music
* Updated German translation
2015-12-15 10:14:56 +01:00
Craxic 91616f6438 Reused costume canvas bounding box code 2015-12-10 12:09:36 +11:00
Michael Ball d004543a32 Fix some bugs in exporting a variable to a file. 2015-12-01 02:16:34 -08:00
Michael Ball 9490b65270 Cleanup filenames and references to `ide` 2015-12-01 01:45:58 -08:00
Michael Ball 3c98a86c71 Resolve merge in 4.0.3 2015-11-17 03:50:42 -08:00
Michael Ball 6f03f121ad Fix some file names in exporting content 2015-11-16 18:31:19 -08:00
Michael Ball fa6f168bc0 Merge in 4.0.3, resolve conflicts with scriptpics 2015-11-16 17:53:17 -08:00
Jens Mönig 6061403a89 Prepare for v4.0.3
* fixed occasional horizontal rendering artifacts in block “holes”
(C-shaped slots and Ring holes)
* improved user editing of input slots and fixed cursor behavior (note:
the text cursor inside input slots also blinks again, as it should have)
* always export comments attached to prototype hat blocks in the block
editor along with script pic
* when first opening a block editor on a custom block definition make
it big enough to show everything (as much as fits on the screen)
* remember block editor position and dimensions for each edited custom
block definition when acknowledging (pressing OK or APPLY) for the
session
* speed up stacking of commands and loading of projects by suppressing
redundant block redraws
* introducing a “grab threshold” preference to suppress accidental
grabbing through micro-movements of the hand. This addresses the
“cannot-click-on-drop-downs-in-Chrome-under-Windows” set of bug
reports, and also the issues that arise out of accidentally dragging
off a copy of a parameter blob when trying to just click on it to
rename it
* new hidden (shift-click) option to adjust the grab threshold in the
settings menu for the current session
* expand list watchers inside result bubbles and speech/thought
balloons to show everything (as much of the list’s first level as fist
into either the scripting area for result bubbles or the stage for
speech balloons - note resizing the stage affects the size of the list
watchers inside speech balloons, i.e. making the stage bigger increases
the number of visible elements even while the balloon is showing)
* fixed a bug that make an occasional gray rectangle appear at the
mouse pointer
* added a way to invoke blocks synchronously in JavaScript - under
construction (possibly to be used for generic “When” hat blocks and
user-customizable drop-downs)
* added methods to cache morphs’ fullImage and fullBounds while dragging
* Reporters (also nested reporters) and sprite icons (in the corral)
are now semi-transparent when being dragged, so you can see possible
drop target halos /through/ them
* in “prefer empty slot drops” mode (default) it is now much harder to
drop reporters onto non-static C-slots inside custom blocks (e.g. in
FOR loops) and onto variadic input arrowheads (to replace the whole
input with an input list)
* ScriptsMorphs are now noticing transparent clicks (addresses #997)
* %interaction slots are now static, fixed #982 (it is no longer
possible to drop reporters into the input slot of a “When I am…” hat
block (never was intended that it should be possible)
* fixed ctrl-f for the block editor in all situations (thanks, Brian,
for the bug report)
2015-11-16 12:18:40 +01:00
Michael Ball db7fcada84 Finish saveAs in blocks.js; fix encoding saving a canvas 2015-11-12 03:29:32 -08:00
Michael Ball e47dcb0ebf Improve saveAs refactoring (WIP across all Snap!)
- added TODO comments to all functions that need updating (byob, blocks)
- separate out the code into 3 new functions for readability:
  - `saveFileAs` is a generic method
  - `saveCanvasAs` and `saveXMLAs` are wrappers which aid in exporting images and all XML files which together cover almost all export cases.
  - In other cases, you can call `saveFileAs` directly with some additional input.
- `saveCanvasAs` in particular uses a new `Canvas.toBlob()` option when it is available (FF and IE currently) that should greatly reduce memory.
(Chrome and Safari both have open bugs and may at somepoint implement this function.)
- I have added in code to detect bugs in chrome, including when a new window is being opened. If a new window cannot be opened, the a (to be written) warning message will appear.
- a few functions (namely those in morphic.js) have not touched. However, these are functions which should only occur in a small subset of cases and are behind hidden features.
2015-11-09 15:14:23 -08:00
Jens Mönig 72bf4cfb8c New feature: Remove Unused Global Blocks
* BYOB, Objects, GUI: New “Remove Unused Global Blocks” Feature
* GUI, Lists: “Export Project Summary” improvements:
  - show variable values as watcher pics
  - expand list watcher pics to show their complete contents (1. level)
  - url for shared projects
  - table of contents
  - basic support for sprite nesting and inheritance
  - make the summary “browsable” instead of editable
  - outline around sprite / stage snapshots
  - experimental hidden (shift-click) “drop-shadows” option
* GUI: Rearrange project menu, only show global blocks-related ops if
there are any
* GUI: Remove URL location.hash information when loading a new project
* Store: Fix deserialization support for projects using inheritance
* German translation update
2015-10-07 13:38:19 +02:00
Jens Mönig 2172084dae New feature: Export Project Summary
* opens a new browser tab on an editable HTML document containing an
overview of the current project which can be further processed (saved,
edited, printed, turned into a PDF) to create a project report.

* now, when you export script pics attached comments get included.

* also new: Support to detect and react to “any” keystroke (hat and
sensing blocks)
2015-10-02 12:39:41 +02:00