Commit graph

1528 commits

Author SHA1 Message Date
Karishma Chadha
d99a082952 CommentChange events now store text changes in an object with property text, instead of just a string. 2018-06-07 10:09:38 -04:00
picklesrus
391f47d100 Add webkitAudioContext if AudioContext does not exist. This might fix the speech extension in safari, but it is tricky to tell since I am running into problems with permissions and localhost. 2018-06-06 16:49:46 -07:00
Paul Kaplan
28f425d53e Set costume directly, no updates are needed 2018-06-06 17:29:48 -04:00
Connor Hudson
77dda04228 Set visible: false instead of deleting state in requestRemoveMonitor
This potentially has performance implications, to be investigated later.
2018-06-06 17:14:09 -04:00
Eric Rosenbaum
1a72512a62 Moving touchingObject into rendered target 2018-06-06 16:34:58 -04:00
Connor Hudson
0d0543810f Properly capture all variable monitor values on add 2018-06-06 16:00:59 -04:00
Connor Hudson
18640d7ddc use mergeWith in requestAddMonitor, requestUpdateMonitor
So undefined values don't overwrite defined ones
2018-06-06 15:54:12 -04:00
Paul Kaplan
bf2879ee0b Fix incorrect clamping 2018-06-06 15:01:02 -04:00
Eric Rosenbaum
431d4bd66b Add when touching hat 2018-06-06 13:39:23 -04:00
Paul Kaplan
0cd50fbb2c Propagate the return value of reorder functions, update comments 2018-06-06 11:13:30 -04:00
Eric Rosenbaum
332e90e408
Merge pull request #1208 from ericrosenbaum/feature/increase-pen-size
Increase maximum pen size to 1200
2018-06-06 10:16:15 -04:00
Michael "Z" Goddard
0a006dc981
add Runtime.isWaitingThread
Add a Runtime Thread helper to check if a thread is in a state where it
will not change at least until next frame. This includes any state
where the thread is done, as that will not change either.
2018-06-06 10:16:05 -04:00
Michael "Z" Goddard
9311a274d5
add BlockUtility.yieldTick 2018-06-06 10:16:05 -04:00
Michael "Z" Goddard
84705fc463
replace new Promise(r => r()) with Promise.resolve
Promise.resolve is a Promise convenience method that creates a promise
resolved to a given argument like creating a promise with a function
that immediately calls the resolve function with the given value.
2018-06-06 09:53:45 -04:00
Paul Kaplan
d6d72f6fa7 Use utility function for clamping 2018-06-06 09:43:54 -04:00
Paul Kaplan
1ebb736a2a Check specifically for number in optional property 2018-06-06 09:43:54 -04:00
Paul Kaplan
837703d4ac Make reorder functions return if a change occurred.
Gotta get that testing coverage percent up :)
2018-06-06 09:43:54 -04:00
Paul Kaplan
e6ebc33e9e Add sound and costume reordering methods and tests to top-level API 2018-06-06 09:43:54 -04:00
Paul Kaplan
d3fd3ff806 Add reorderSound and unit test to rendered-target 2018-06-06 09:43:54 -04:00
Paul Kaplan
5fd5b30ccf Add reorderCostume method and unit test to rendered target 2018-06-06 09:43:54 -04:00
Paul Kaplan
9fce4d40d0 Fix bug with zero adding a costume/sound at index 0 2018-06-06 09:43:54 -04:00
Andrew Sliwinski
c2645f3da5
Merge pull request #1210 from thisandagain/feature/polly
Add initial working version of the Amazon Polly extension
2018-06-05 18:35:38 -04:00
Andrew Sliwinski
bccdef0674 Future-proof opcode and fix issues with copied comments 2018-06-05 18:32:02 -04:00
Andrew Sliwinski
55b1a794ce Add initial working version of the Amazon Polly extension 2018-06-05 17:51:55 -04:00
kchadha
1f209ad4e0
Merge pull request #1191 from kchadha/comment-events
Persist comment state.
2018-06-05 16:53:57 -04:00
Paul Kaplan
a11d1be3fc Fix comments 2018-06-05 16:08:14 -04:00
Eric Rosenbaum
23c7df5751 Max pen size 1200 2018-06-05 15:59:14 -04:00
Connor Hudson
25290e7f6a Check that bubble bounds do not extend past stage boundaries
For when you can't flip the bubble, but need it to remain on-stage
2018-06-05 15:58:03 -04:00
Karishma Chadha
644fab0135 Track block comment movement when block moves. 2018-06-05 15:40:19 -04:00
Karishma Chadha
7c5a2ae8e0 Add check that block associated with comment actually exists. 2018-06-05 15:17:28 -04:00
Karishma Chadha
d58bb8bcfb Clean up optRuntime checks in blocklyListen 2018-06-05 15:13:03 -04:00
Karishma Chadha
2171cb69d0 No need to floor workspace coordinates in vm runtime. 2018-06-05 15:12:25 -04:00
Paul Kaplan
3a697ae0ac Add top-level API for getting and setting variable values 2018-06-05 10:46:06 -04:00
Paul Kaplan
7b2f606316 Fix an issue where variable lookup would error if stage did not exist. 2018-06-05 10:45:51 -04:00
Eric Rosenbaum
ca6a7f9311
Merge pull request #1199 from picklesrus/speech-extension-loginfo
Add some log info with more information about the speech match so we …
2018-06-04 16:35:58 -04:00
picklesrus
e668a210a0 Add some log info with more information about the speech match so we can debug better. 2018-06-04 13:17:34 -07:00
Kreg Hanning
9055706333 Add check for invalid symbol 2018-06-04 15:22:12 -04:00
Kreg Hanning
94464f0a52 Update microbit extension for latest firmware 2018-06-04 14:52:52 -04:00
Karishma Chadha
522706ccf8 Persist comment state. 2018-06-01 18:10:25 -04:00
Eric Rosenbaum
294801c1f3
Merge pull request #1184 from ericrosenbaum/bugfix/sound-blocks-yield
Set/change sound effect and volume blocks yield until the next tick
2018-06-01 13:19:50 -04:00
Eric Rosenbaum
2348d55f14 Use promises to yield 2018-05-31 17:09:47 -04:00
Paul Kaplan
ac91d8af65
Merge pull request #1180 from kchadha/parse-sb2-comments
Import Comments from 2.0 Projects
2018-05-31 16:51:22 -04:00
Eric Rosenbaum
46f885fc03 Sound effect and volume blocks request redraw 2018-05-31 16:47:40 -04:00
Karishma Chadha
537dc9bcd5 Addressing PR comments. 2018-05-31 16:33:42 -04:00
Michael "Z" Goddard
4ceeebb257 Use src/index as browser entry point
Use src/index.js as the entry by default in tools building scratch-vm
into a larger package. This saves file space by excluding extra webpack
boilerplate and may allow for deeper optimizations.

Depend on script dependencies for downstream webpack. For another
package to build in scratch-vm's dependencies without them already
being built into a consumed webpack build they need to be listed as
dependencies. This can benefit large projects that reuse the same
dependencies multiple times. Node will still use the main entry point
and its webpack build leaves the dependencies as external references so
it may reuse common modules in Node as well as in a build a browser
environment.
2018-05-31 16:32:46 -04:00
Eric Rosenbaum
c9842ec3dc
Merge pull request #1121 from picklesrus/speech-extension-checkin
Initial version of the speech extension.  There is certainly still so…
2018-05-31 15:35:09 -04:00
picklesrus
968eeaf936 Fix missing comma from bad merge. 2018-05-31 12:14:55 -07:00
Eric Rosenbaum
3e43786ef6 Default to a random language 2018-05-31 11:48:37 -04:00
Karishma Chadha
acd728dc2b No more xml differentiation for 'scratch' type of comments. 2018-05-30 21:18:45 -04:00
Karishma Chadha
f079eb4bbd Don't serialize x and y for sb2 comments so that they can be auto positioned. 2018-05-30 21:18:45 -04:00
Karishma Chadha
b0aa288916 Add info about minimized state to comment xml. 2018-05-30 21:18:45 -04:00
Karishma Chadha
1639444a4d Fix lint and tests. 2018-05-30 21:18:45 -04:00
Karishma Chadha
1401d54add Parse SB2 comments and attach block comments to the blocks they belong to. Send comment xml on workspace update so they can be rendered. 2018-05-30 21:15:14 -04:00
picklesrus
3a5051646f Now fuzzymatchResult is unused so remove it too. 2018-05-30 13:22:07 -07:00
picklesrus
bb408b8673 Remove some code that set the utterance to the fuzzy match result 2018-05-30 13:22:07 -07:00
picklesrus
e72ea04c10 Move the add event listener code to be in the same place where we call connect so there is only one place to do it. 2018-05-30 13:22:07 -07:00
picklesrus
ef142107a6 Remove the event listener for processing audio at the same time that we disconnect the script node. At this point we are closing the web socket and do not want to process more of the microphone data even if it is already in flight. Also add it back when we resume listening instead of just at init time. 2018-05-30 13:22:07 -07:00
picklesrus
ffced16b95 Fix a copy/paste comment error and initialize current_utterance differently 2018-05-30 13:22:07 -07:00
picklesrus
a2eee6a1dd Change name of opcode to speech_ from speech.Plus, remove old comment. 2018-05-30 13:22:07 -07:00
picklesrus
adf5d0acfd Add speech extension to the extension manager. 2018-05-30 13:22:07 -07:00
picklesrus
250570e0ed Use arraybuffer-loader instead of buffer-loader to load the start and end sounds. The music extension switched to this a few days ago. 2018-05-30 13:20:38 -07:00
picklesrus
e7987a6a4c Initial version of the speech extension. There is certainly still some stuff to figure out but the core of it is here. 2018-05-30 13:20:38 -07:00
Eric Rosenbaum
057e89b1e0
Merge pull request #1178 from picklesrus/translate-language-reporter-block
Add language reporter block to translate extension
2018-05-30 10:25:22 -04:00
picklesrus
123edcb913 remove stray space 2018-05-29 15:14:38 -07:00
picklesrus
e2f6dfd29f - Update the reporter to return the human readable language.
- Remove the non-final icons and replace with a TODO.
- Add messages for the text in the blocks.
2018-05-29 15:06:38 -07:00
picklesrus
f615e9191a Add language reporter block to translate extension 2018-05-28 11:58:17 -07:00
DD
7874ea9b1a Allow rotation centers with zeros 2018-05-25 16:54:54 -04:00
kchadha
a85f641d25
Merge pull request #1148 from kchadha/stage-layering
Layer group ordering.
2018-05-25 09:10:05 -04:00
Chris Willis-Ford
b3db00fab7
Merge pull request #1154 from vincentbriglia/issue1552
Allow override of icons per block
2018-05-25 01:10:57 -07:00
Chris Willis-Ford
eae258cce6
Merge pull request #1153 from vincentbriglia/issue1551
Add option for Extensions to have different colour
2018-05-25 01:07:20 -07:00
DD Liu
13d277e7c8
Merge pull request #1164 from fsih/bgOffset
Always give backdrops a certain rotation center
2018-05-24 16:54:01 -04:00
Ray Schamp
3b49f45b9a
Merge pull request #1160 from Kenny2github/patch-1
Round (x position) and (y position) to 8 places
2018-05-24 13:58:16 -04:00
Paul Kaplan
02041c8218
Merge pull request #1163 from paulkaplan/username-stub
Add logged out version of username block
2018-05-24 13:29:47 -04:00
Eric Rosenbaum
b052205457
Merge pull request #1162 from ericrosenbaum/feature/emit-keyboard-events
Runtime emits key pressed event
2018-05-23 17:04:05 -04:00
Eric Rosenbaum
3cdc9765a8
Translation extension imports translated language names (#1159)
* wip

* wip

* Get viewer language code, and cleanup

* Revert "wip"

This reverts commit 6598738ed2.

# Conflicts:
#	src/extensions/scratch3_translate/index.js
2018-05-23 17:00:59 -04:00
DD Liu
10aa6979ed Multiply by bitmap resolution 2018-05-23 14:18:22 -04:00
DD Liu
85689201ed Always give backdrops a certain rotation center 2018-05-23 14:06:23 -04:00
Paul Kaplan
c5cc129821 Add logged out version of username block 2018-05-23 11:30:12 -04:00
Eric Rosenbaum
508ac91b82 Runtime emits key pressed event 2018-05-22 17:24:22 -04:00
Paul Kaplan
b7e40c9735
Merge pull request #1147 from paulkaplan/fix-say-hide
Fix say bug with show/hide
2018-05-22 14:49:50 -04:00
Ken
5af6887cfe Round (x position) and (y position) to 8 places 2018-05-22 12:46:22 +08:00
DD Liu
8c0f5a71f0
Merge pull request #1149 from fsih/compatMode
Pass in argument to indicate compat mode
2018-05-21 15:03:27 -04:00
Karishma Chadha
5e40bfb7ee No more explicit layer groups, and separate extension into video and pen. 2018-05-20 22:30:20 -04:00
Karishma Chadha
38875bc65c Bubbles should be in the same layer as sprites. Other cleanup. 2018-05-20 19:49:42 -04:00
Karishma Chadha
64c8484066 Refactor so that layer group is optionally passed into createClone (and initDrawable) instead of isStage property getting stored on a sprite. 2018-05-18 10:11:59 -04:00
Vincent Briglia
0c8662bc23 Allow override of icons per block 2018-05-17 15:27:24 +02:00
Vincent Briglia
76ce7d6fe6 add option to override colours 2018-05-17 15:25:20 +02:00
Karishma Chadha
e2ce047fa1 Test and lint fixes. 2018-05-16 16:00:50 -04:00
Karishma Chadha
67b114b9c9 Layer group ordering. 2018-05-15 22:22:44 -04:00
Paul Kaplan
c18d5faafb Make sure to set the bubble to blank when hiding 2018-05-15 14:38:42 -04:00
Kreg Hanning
82fd6f0d2f Add micro:bit Scratch 3.0 extension (#1113)
* Add micro:bit Scratch 3.0 extension

* Fix lint errors in micro:bit extension

* Fix doc. Incorrect return type

* Check for valid pin in when pin connected block

* Drop mapping function

* Drop question mark from tilt hat block

* Generate list of symbols from object keys

* Trim display text block to max 20 characters
2018-05-14 13:52:49 -04:00
Eric Rosenbaum
846f212110
Merge pull request #1138 from picklesrus/develop-translate-changes
Update the format of the language menu to match the changes made to d…
2018-05-11 17:14:13 -04:00
Eric Rosenbaum
b5395fbc3e
Merge pull request #1140 from picklesrus/extension-manager-translate
Add translate extension to the extension manager.
2018-05-11 17:11:57 -04:00
DD
78e17b4842 Pass in argument to indicate compat mode 2018-05-11 14:24:07 -04:00
Ray Schamp
1934fd427a
Revert "Dynamically load music extension manifest" 2018-05-11 11:04:43 -04:00
picklesrus
37e5c638c1 Add translate extension to the extension manager. 2018-05-10 13:42:23 -07:00
picklesrus
720cc820cd Update the format of the language menu to match the changes made to deal with translations. This allows the menu to pass through the maybeFormatMessage code correctly. 2018-05-10 13:20:24 -07:00
Eric Rosenbaum
bdda3bc2c9 Add extension id to toolbox category XML 2018-05-10 15:41:44 -04:00
Paul Kaplan
b7f3a06fa0
Merge pull request #1133 from paulkaplan/show-hide-vars
Add implementations for hiding and showing variables and lists.
2018-05-10 15:34:21 -04:00
Andrew Sliwinski
0b7aa6ddf6
Merge pull request #1136 from thisandagain/feature/localize
Add localization support to music and video sensing extensions
2018-05-10 15:27:37 -04:00