Wykres commitów

279 Commity (9bee3cd9c2293bfec298d16f4f58c54accb10b6d)

Autor SHA1 Wiadomość Data
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 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
Jens Mönig 43d68b94c1 Merge pull request #928 from brollb/master
Fixed minor typo
2015-09-23 11:49:05 +02:00
Jens Mönig 42254bd644 Improve display precision (stop rounding display coordinates) 2015-09-23 11:41:21 +02:00
Brian Broll 170092a6b0 Fixed minor typo 2015-09-11 12:38:42 -05:00
Jens Mönig e8172e83dd update history 2015-07-27 01:12:12 +02:00
Jens Mönig 45a1d276b4 enable monitoring closurized non-locals and thread-temporaries (script vars of running processes) 2015-07-27 00:46:56 +02:00
Jens Mönig 7994d6c0ca Prototypal inheritance for sprite-local variables 2015-07-27 00:35:36 +02:00
Jens Mönig 76d9d6bd49 keyboard editing support
activate:
      - shift + click on a scripting pane's background
      - shift + click on any block
      - shift + enter in the IDE's edit mode

    stop editing:
      - left-click on scripting pane's background
      - esc

    navigate among scripts:
      - tab: next script
      - backtab (shift + tab): last script

    start editing a new script:
      - shift + enter

    navigate among commands within a script:
      - down arrow: next command
      - up arrow: last command

    navigate among all elements within a script:
      - right arrow: next element (block or input)
      - left arrow: last element

    move the currently edited script (stack of blocks):
      - shift + arrow keys (left, right, up, down)

    editing scripts:

      - backspace:
        * delete currently focused reporter
        * delete command above current insertion mark (blinking)
        * collapse currently focused variadic input by one element

      - enter:
        * edit currently focused input slot
        * expand currently focused variadic input by one element

      - space:
        * activate currently focused input slot's pull-down menu, if any
        * show a menu of reachable variables for the focused input or
reporter

      - any other key:
        start searching for insertable matching blocks

      - in menus triggered by this feature:
        * navigate with up / down arrow keys
        * trigger selection with enter
        * cancel menu with esc

      - in the search bar triggered b this feature:
        * keep typing / deleting to narrow and update matches
        * navigate among shown matches with up / down arrow keys
        * insert selected match at the focus' position with enter
        * cancel searching and inserting with esc

    running the currently edited script:
        * shift+ctrl+enter simulates clicking the edited script with
the mouse
2015-07-26 23:37:10 +02:00
Jens Mönig 60554d0059 fixes and enhancements for nested sprites
when dragging an anchor, also drag its parts.
let users adjust parts’ positions via the context menu “move” option
2015-07-26 23:01:08 +02:00
jmoenig 7c8dd2b4e8 remove some spaces 2015-06-25 15:36:21 +02:00
Jens Mönig a86e4efe59 Merge pull request #826 from bromagosa/contrib
fixes #815
2015-06-25 15:34:41 +02:00
jmoenig 4c21c9f187 Revert to "new" for object creation
and prepare for new release
2015-06-25 15:11:51 +02:00
Nathan Dinsmore 6a82960cf7 Optimize moveBy and friends
This results in realtime speed for dragging where I used to get 10-15 fps before this change.
2015-06-17 20:46:54 -04:00
Nathan Dinsmore d5761b074d Remove clone function (unused) 2015-06-17 20:09:43 -04:00
Nathan Dinsmore 87c2503571 Use Object.create(…) instead of new …() for inheritance (faster) 2015-06-17 17:11:40 -04:00
Bernat Romagosa 26108539f5 fixes #815 2015-06-09 12:40:55 +02:00
Jens Mönig 6b19caf75d Fix encoding for exported sprites (esp. comments) 2015-05-18 12:23:57 +02:00
Jens Mönig 834b3918ad fixed #770 2015-04-15 17:30:43 +02:00
Jens Mönig 58d8fd7ccd slightly optimize warped / turbo execution 2015-02-28 05:49:07 -08:00
jmoenig d3758bd707 fix a bug in the automatic block migration mechanism
Thanks, Josh, for telling me!
2015-02-23 23:28:23 +01:00
jmoenig e5e216ccf2 Add user-interaction choices to the “When I am ...” hat block
“clicked”, “pressed”, “dropped”, “mouse-entered”, “mouse-departed”
2015-02-23 14:55:30 +01:00
jmoenig 273c58440c Fixed #710 2015-01-28 07:23:24 +01:00
jmoenig 82552d0b29 Fix speech bubbles of dragged nested sprites 2015-01-21 17:15:58 +01:00
jmoenig f1fbb38b87 Keep layering of nested sprites thru drag & drop
it used to be that dragging an anchor always brought it to the front,
altering the nested sprite’s internal layering order
2015-01-21 10:23:02 +01:00
jmoenig a0b39a4daf Make clones non-editable
Disable clones from being edited via their context menus or double-click
2015-01-12 10:17:58 +01:00
jmoenig 777498a9f4 Experimental “processes” count watcher
(hidden in dev mode)
2014-12-17 08:12:35 +01:00
jmoenig ad1fe34d1e Experimental “ForEach” primitive (hidden in dev mode) 2014-12-04 15:45:18 +01:00
jmoenig 17b6ae839b Improve edge-collision detection of default sprite “arrow” shape 2014-12-03 12:48:31 +01:00
jmoenig 1f5934c81f Don't show hidden elements in the project thumbnail 2014-12-01 11:25:28 +01:00
jmoenig 0d8cc567e7 Fixed #372 2014-11-24 10:43:53 +01:00
jmoenig 927448d7ab Fixed #416 2014-11-24 10:05:19 +01:00
jmoenig 5f3279990b fixed #608, #610 2014-10-08 11:21:49 +02:00
jmoenig 2ae675132a fixed #604. Thanks, @Gubolin! 2014-10-06 10:34:56 +02:00
jmoenig 86672fec4a fixed #599
disable IDE keyboard shortcuts in presentation mode
2014-10-01 10:12:37 +02:00
jmoenig 71c9103503 fixed #378
disable context menus for boolean representations
2014-09-30 10:31:13 +02:00
jmoenig 29b47cc2d2 fixed #593
match broadcast numbers with event hat blocks containing strings that
can be parsed as numbers
2014-09-30 09:26:50 +02:00
jmoenig 04168220bd Refactor variables handling
introducing Variable objects, all functionality stays the same at this
time
2014-09-17 14:40:39 +02:00
jmoenig b2399309e4 propagate HIDE and SHOW to nested sprite parts 2014-07-30 09:40:31 +02:00
jmoenig 5ce2d13413 added ‘move’ option to the sprite context menu
lets the user move (nested) sprites in edit mode without changing their
layering, and also sprites marked “undraggable”
2014-07-29 12:33:26 +02:00
jmoenig 061852ee32 double clicking on a sprite in the stage selects it in the IDE 2014-07-29 12:18:58 +02:00
jmoenig b451a08812 duplicate and clone nested sprites 2014-07-29 10:50:36 +02:00
jmoenig 3aae7c3ce4 new “JavaScript function” primitive
Go figure…
2014-07-25 14:35:36 +02:00
jmoenig 75d9adbfe2 improve unique sprite- and costume names 2014-07-24 11:40:36 +02:00
jmoenig 1b382458c8 fixed “lost sprites bug”
ensure duplicated sprites keep wearing their current costume through
save and re-load
2014-07-24 08:04:00 +02:00
jmoenig 2fbdf855c2 Scale down oversized images to current stage dimensions
rather than to 480 * 360
Thanks, Dan, for reporting this!
2014-07-23 17:02:51 +02:00
jmoenig df25b4dc73 fixed #521
deleting variable watchers by dropping them on the palette resulted in
wrong ones to be created when showing them again
2014-07-22 12:33:26 +02:00
jmoenig c1d5910f33 list op fixes, thanks, Brian! 2014-07-18 07:44:26 +02:00
jmoenig f38fb73cd3 simplify unique stageshot names
and get rid of regex
2014-07-17 14:39:37 +02:00
jmoenig 7472261ca6 eliminate global regex var 2014-07-17 13:22:33 +02:00
jmoenig 0afe615243 move screenshot feature to dev mode 2014-07-17 11:02:06 +02:00
jmoenig 5decf8a0e0 minor format tweaks to "Screenshot" feature 2014-07-17 10:59:13 +02:00
Jens Mönig c11e4c7c6d Merge pull request #340 from cs10/extensions
Save stage/pentrails as costume (for animations)
2014-07-17 10:47:49 +02:00
Viraj Mahesh 3ca3d33642 Removed screenshot name cache 2014-07-13 12:37:49 +04:00
Viraj Mahesh 36bbcdd5ef Resolved conflicts and JSLinted 2014-07-13 10:01:08 +04:00
Viraj Mahesh a7f0de880f Merge branch 'master' into extensions
Conflicts:
	objects.js
2014-07-13 09:47:30 +04:00
jmoenig c4968843e4 fixed #508 (don’t popup empty menus)
thanks, @cycomached!
2014-07-11 17:59:16 +02:00
jmoenig 92c5c8bedf add keyboard shortcut for “new project”: ctr-n
note: some browsers (actually, most ^^) override this before Snap gets
a chance to do its thing :-(
2014-07-08 15:27:25 +02:00
jmoenig ff513ba439 updated version of objects.js
fixed scrolling glitch in the palette, thanks, Kunal!
2014-07-08 13:33:58 +02:00
Kunal Marwaha ed5eccccae reason for scroll issue: only non-cached palettes needed to be scrolled 2014-06-25 04:15:58 -07:00
jmoenig 7f1b542e73 more relabelling options for SAY, THINK, ASK 2014-06-06 11:58:17 +02:00
jmoenig 9bbe9b2e0a enable relabelling blocks with C-Slots 2014-06-06 11:45:41 +02:00
jmoenig 3f04b5b474 more relabelling options for SAY and THINK variants 2014-06-06 10:34:15 +02:00
jmoenig 76f6ad4c23 add hide and show blocks for the stage 2014-06-06 09:15:16 +02:00
jmoenig 4e2ce9a4ee gracefully hide & show the stage, fixed #281 2014-06-06 09:07:42 +02:00
jmoenig fdfd74f79e fixes a but in setHeading()
thanks, Brian!
2014-06-05 22:29:16 +02:00
jmoenig d7f30820b5 fixed #457 2014-06-05 17:56:19 +02:00
jmoenig ccdce5da74 fixed #465 2014-06-05 17:42:36 +02:00
jmoenig f80235ee43 stop replacing the empty string with the number zero in watchers
fixed #473
2014-06-05 17:13:27 +02:00
jmoenig ac39877b9c German translation update, tweaks 2014-06-04 13:48:43 +02:00
Jens Mönig 81d3657feb Merge pull request #469 from nathan/shift-keyboard-shortcuts
Fixed ctrl/cmd+shift+s saving the project in place
2014-06-04 12:44:56 +02:00
Nathan Dinsmore ee695213cf Fixed ctrl/cmd+shift+s saving the project in place 2014-06-02 15:56:16 -04:00
yuan e7f9ff5dcb JSLinted 2014-06-02 00:07:00 -07:00
Viraj Mahesh 7daaf1252a Do nothing when blank action passed 2014-05-30 09:51:30 +04:00
Viraj Mahesh 209f05dfff Made updates to StageMorph functions 2014-05-30 09:47:22 +04:00
Viraj Mahesh 159b4b2605 Fixed naming issue and removed extra function 2014-05-30 09:46:16 +04:00
Viraj Mahesh c8bb7ce225 Fixed indentation issue 2014-05-30 09:38:54 +04:00
yuan 8971d29adc cleaned up my comments 2014-05-28 23:45:43 -07:00