Commit graph

1887 commits

Author SHA1 Message Date
Eric Rosenbaum
cdbd7c9af2 Add text2speech icons 2018-10-10 14:09:34 -04:00
Eric Rosenbaum
9403449846 Add translate icons 2018-10-10 14:04:37 -04:00
jokebookservice1
df78a8345e
refactor: use utility for whitespace-testing 2018-10-10 18:36:06 +01:00
Evelyn Eastmond
4534649367 Fixing locale string. 2018-10-10 11:49:07 -04:00
Evelyn Eastmond
d83bf20803 Fixing tilt direction menu locales. 2018-10-10 11:47:55 -04:00
Eric Rosenbaum
b5c5481de0 Add video sensing extension icons 2018-10-10 10:43:04 -04:00
Michael "Z" Goddard
65ee6b7cac
broadcast and wait must wait for threads to be removed from runtime 2018-10-05 14:54:02 -04:00
Michael "Z" Goddard
a0b7e94c9e
update execution order from draw-related look instructions 2018-10-05 13:26:05 -04:00
Michael "Z" Goddard
a22b74e6cb
Merge pull request #1617 from mzgoddard/execution-order
Sprite clone and initial draw order execution order
2018-10-05 13:25:22 -04:00
Evelyn Eastmond
1efead8a26 Resolves #1615: Prevent multiple hardware disconnect alerts. 2018-10-05 11:24:52 -04:00
Evelyn Eastmond
c9d4620f22 Fixing #1485: WeDo2/micro:bit block menus need localization. 2018-10-05 11:08:20 -04:00
Evelyn Eastmond
0d7cc66ad5 Changing menu names to include extension label. 2018-10-05 11:08:20 -04:00
Evelyn Eastmond
d7440f882d Fixing #1505: WeDo2 motor power between 0-30ish doesn't power the motor. 2018-10-05 11:08:20 -04:00
Evelyn Eastmond
7a7134e23c Fixing #1592: WeDo2 and EV3 should not send motor command when motor power is 0. 2018-10-05 11:08:20 -04:00
Andrew Sliwinski
853de9fa7d
Merge pull request #1593 from joker314/fix/compare-strings
Fix locale-dependant string comparison operators to match 2.0
2018-10-04 14:38:40 -04:00
Andrew Sliwinski
492695112f
Merge pull request #1585 from apple502j/patch-1
Bubble string length limit
2018-10-04 14:29:38 -04:00
Michael "Z" Goddard
56ec22df77
add Runtime.executableTargets
executableTargets is a list of the targets in the reverse order of
their execution. This order matches the draw list's order in the
renderer.
2018-10-04 00:42:05 -04:00
DD
06cb8e4b8a Consistently return promises from functions that say they return promises 2018-10-03 14:58:36 -04:00
Michael "Z" Goddard
da268ea0c1
control sound stopping in scratch3_sound.js
- Stop sound playback for target when STOP_FOR_TARGET is emitted
- Stop all sounds when PROJECT_STOP_ALL is emitted
- RenderedTarget should not manage sound stopping in `stopAll`
2018-10-03 10:38:47 -04:00
Michael "Z" Goddard
574749bbba
add STOP_FOR_TARGET runtime event and respond for ask blocks
Remove questions for targets that are individually stopping and
progress the asked question if it is from a stopping target.
2018-10-03 10:38:14 -04:00
Andrew Sliwinski
7a28d5e41d
Merge pull request #1586 from mzgoddard/variable-id-type
conflict workaround for variables and lists of the same name
2018-10-01 18:27:59 -04:00
picklesrus
12ddc89514
Merge pull request #1612 from picklesrus/translate-language-menu
Reset the supported language list in getInfo. This works because refr…
2018-10-01 17:20:50 -04:00
Michael "Z" Goddard
353ad16132
jsdoc @type tag does not permit a description 2018-09-27 12:00:00 -04:00
Evelyn Eastmond
4583cb821b
Merge pull request #1611 from evhan55/fixes/hardware-extensions
Hardware extensions bug fixes
2018-09-25 20:42:30 -04:00
Florrie
744b01174b Add support for "midiInstrument:" block (#1329)
* Add midiInstrument: block

* Don't show midiInstrument block in palette

* Lint

* More lint
2018-09-25 17:33:09 -04:00
picklesrus
69132d17db Fix lint spacing error. 2018-09-25 16:24:32 -04:00
picklesrus
3193a4c1b4 Spacing changes. 2018-09-25 16:03:21 -04:00
picklesrus
5966a54500 Reset the supported language list in getInfo. This works because refreshBlocks is called
when the language gets changed. Fixes #1365.
2018-09-25 16:03:21 -04:00
Kreg Hanning
fa0af58c41 Make "display [Hello!] block yield until printing is done (#1599)
* Make "display [Hello!] block yield until printing is done

* Add 2 additional px to yield delay

* Add 3 more additional px for large chars
2018-09-25 14:56:29 -04:00
Evelyn Eastmond
a676970359
Merge pull request #1607 from evhan55/multiple-alerts
Show customized alerts on hardware extension peripheral errors.
2018-09-25 14:44:29 -04:00
Evelyn Eastmond
e6ea4d7f0c Removed promise chains that seemed unnecessary. 2018-09-25 11:26:18 -04:00
Evelyn Eastmond
6bd79369e4 Changing EV3 and WeDo2 default and block motor power values after discussion. 2018-09-25 11:26:18 -04:00
Evelyn Eastmond
e9b0cc768e Further fixes to 'button pressed?' on Microbit. 2018-09-25 11:26:18 -04:00
Evelyn Eastmond
4b2b82a224 Fixing #1364: Microbit 'button pressed?' block should return true/false. 2018-09-25 11:26:18 -04:00
Evelyn Eastmond
cfe7e45d8b Fixing #1538: wedo2 'set motor direction' block sometimes stops the motor. 2018-09-25 11:26:18 -04:00
Evelyn Eastmond
eabd7a5153 Changing default WeDo2 power arg to 50. 2018-09-25 11:26:18 -04:00
Evelyn Eastmond
03d05403fa Adding TODOs to _pollValues. 2018-09-25 11:26:18 -04:00
Evelyn Eastmond
3bdbbe3b8e Fixing #1566: Set default motor power for EV3 and WeDo2 to 50%. 2018-09-25 11:26:18 -04:00
Evelyn Eastmond
fe288902fa Fixing #1567: EV3 motor position reporter gets inverted. 2018-09-25 11:26:18 -04:00
Eric Rosenbaum
f467d2d01f
Change “monster” to “giant” and raise pitch (#1606) 2018-09-25 11:04:38 -04:00
Kreg Hanning
91d46bb92b Remove the word "test" (#1600) 2018-09-25 10:49:45 -04:00
Kreg Hanning
b81ba599db Trim whitespace in "display [♡]" input field (#1598) 2018-09-25 10:47:33 -04:00
picklesrus
b063226fd7
Merge pull request #1580 from picklesrus/speech-language
Send the language code of the project viewer to the server
2018-09-24 14:26:14 -07:00
Eric Rosenbaum
622aa0f2b0
Add “set language” block (#1610) 2018-09-24 17:16:10 -04:00
picklesrus
c9cc94b324 Send the language code of the project viewer to the server 2018-09-24 16:49:39 -04:00
Evelyn Eastmond
cce03d0304 Removing console logs. 2018-09-22 15:20:35 -04:00
Evelyn Eastmond
3c905503b7 Adding extension ids to customize error alerts for extensions. 2018-09-22 14:48:41 -04:00
Evelyn Eastmond
ad3328197e Testing adding message/extensionId passing into specific, custom alerts. 2018-09-22 14:04:37 -04:00
Evelyn Eastmond
96327c66f3 Passing custom alert messages with PERIPHERAL_ERROR. 2018-09-22 14:04:37 -04:00
Ray Schamp
e2c6c7667b
Merge pull request #1604 from ericrosenbaum/feature/listening-indicator
Add event to show and hide a mic indicator for Speech to Text
2018-09-21 09:24:59 -04:00
Eric Rosenbaum
e2a79ed58f VM emits MIC_LISTENING 2018-09-20 17:13:51 -04:00
Eric Rosenbaum
f5edcfa3bb Update event name to MIC_LISTENING 2018-09-20 12:06:31 -04:00
Eric Rosenbaum
396d69743d request indicator update in resetListening 2018-09-20 09:45:22 -04:00
Chris Willis-Ford
c541e87da5
Merge pull request #1587 from cwillisf/util_token-bucket
Add a rate-limited task queue utility
2018-09-19 10:48:04 -07:00
Kreg Hanning
06f64c0527 Rename block "display [Hello!]" to "display text [Hello!]" (#1597) 2018-09-19 11:16:16 -04:00
Ray Schamp
416377ad2d
Merge pull request #1594 from rschamp/renderer-getter
Add API for the attached renderer
2018-09-18 16:11:53 -04:00
Ray Schamp
6c94c85c9a Add API for the attached renderer
Resolves #1281
2018-09-18 15:47:47 -04:00
Karishma Chadha
0ad59d3859
Merge pull request #1563 from mzgoddard/get-param-condition-input
Get param condition input
2018-09-18 15:29:43 -04:00
Eric Rosenbaum
e44eff48e3 Add mic indicator update event for speech2text 2018-09-18 10:58:49 -04:00
jokebookservice1
ab8d4dc560
style(util): Address linting issues 2018-09-17 22:07:26 +01:00
jokebookservice1
dab78c4f62
fix(util): Make string comparisons match Flash's, everywhere 2018-09-17 21:25:14 +01:00
Christopher Willis-Ford
69ba2045fe Rename TokenBucket to TaskQueue 2018-09-14 22:34:34 -04:00
Christopher Willis-Ford
70c6ad4ef1 Add cancelAll method to clear the task queue 2018-09-14 22:10:17 -04:00
Michael "Z" Goddard
a5151a0446
generate sb2 variable ids with variable type
Make variables and lists with the same name have unique IDs so they
don't clobber the other in the variables map on the target.
2018-09-14 16:53:48 -04:00
apple502j
7b6ba8cb9a
Bubble string length limit 2018-09-14 20:56:40 +09:00
Christopher Willis-Ford
33e0197ad5 Add tests for TokenBucket 2018-09-13 17:05:00 -04:00
Christopher Willis-Ford
28621c9860 Protect against NaN task cost 2018-09-13 17:05:00 -04:00
Christopher Willis-Ford
c8dc8fb5b9 Add TokenBucket utility class 2018-09-13 17:05:00 -04:00
Eric Rosenbaum
64a1d3e02b
fix ids and names for text2speech and speech2text extensions (#1583) 2018-09-13 15:44:18 -04:00
picklesrus
77284d8117 Remove sound indicators at the start/end of listen block. Visual rep… (#1575)
* Remove sound indicators at the start/end of listen block.  Visual replacement coming soon.

* remove the sound files too.

* ... and the manifest too
2018-09-13 14:05:22 -04:00
Michael "Z" Goddard
ea55b3ed55
add inputOp to every input arg in the sb2 specmap
Add missing meta information in the inputOp value for some arguments.
`boolean` and `substack`, the new inputOp values, are not considered to
be shadowed values.
2018-09-13 12:42:54 -04:00
Chris Willis-Ford
8977ce1e93
Merge pull request #1565 from cwillisf/extension-monitors
Extension monitors
2018-09-12 18:10:12 -04:00
Christopher Willis-Ford
346e1383ed Split extended opcode with splitFirst instead of split 2018-09-12 17:02:18 -04:00
Andrew Sliwinski
c00d70a470
Merge pull request #1573 from ericrosenbaum/feature/no-puppy
Bark bark woof ruff bark. Bark bark bark! (remove puppy voice)
2018-09-12 16:40:29 -04:00
Eric Rosenbaum
bdf27e20c5 Trim to 128 chars 2018-09-12 14:06:26 -04:00
Eric Rosenbaum
f58e9276e8 Cleanup 2018-09-12 13:49:29 -04:00
Eric Rosenbaum
6ac82f3183 bark bark woof ruff bark. bark bark bark! 2018-09-12 13:23:26 -04:00
Karishma Chadha
91d2663c35
Merge pull request #1564 from mzgoddard/monitor-rename
Rename Stage object and Stage monitors together
2018-09-12 12:11:45 -04:00
Eric Rosenbaum
9df078b606
Remove branding from translate extension (#1569)
* Remove branding from translate extension

* Thoroughly remove block icon
2018-09-11 15:19:19 -04:00
Michael "Z" Goddard
34b77d2024
ensure argument_reporter_boolean is used in CONDITION input 2018-09-07 17:26:24 -04:00
Evelyn Eastmond
ec432e3b2f Refactor for hardware extensions (#1555)
* Beginning refactor: renaming 'device' to 'peripheral', shortening function names, reordering functions, etc.

* Continuing refactoring: renaming some functions to be more verbose in the runtime, adding JSDocs, etc.

* Changing 'device' to 'peripheral', etc.

* Changing 'session' to 'socket'.

* Fixing EV3 menus and menu arg validation, reordering functions, etc.

* Add _send, add some references to documentation, etc.

* Factored out _outputCommand and _inputCommand, renamed some enums, etc.

* Fixed _outputCommand, some other minor cleanup.

* Make _outputCommand and _inputCommand public.

* Added TODO.

* Renamed BLE UUID enums to be clearer.

* Change WeDo2 in comments to WeDo 2.0, etc.

* Changed some WeDo2Motor command names, cleaned up some JSDocs.

* Beginning a major EV3 refactor.

* WeDo2 formatting and comment changes.

* Motor refactoring in EV3: motorTurnClockwise and motorTurnCounterClockwise initial working state.

* Add reminders to possibly cast motor menu args in WeDo2.

* Continue to move motor commands in EV3 to EV3Motor class, don't create new EV3Motor on every poll cycle, etc.

* Factoring EV3 polling value commands, etc.

* Fixing EV3 motor power, position and button pressed, and some commenting, etc.

* Move EV3 motor position parsing to EV3Motor class, move directCommand and directCompoundCommand functions, some commenting, etc.

* Changed WeDo2 motor label enum name.

* Removed some EV3 motor functions that aren't needed, changed menu label enum names, moved some opcodes up to enums.

* Fixing comments and documentation.

* Some commenting.

* Adding further documentation and references to PDFs, changed reply check to be safer, etc.

* Some comment changes.

* Moving some functions around in EV3 and WeDo2 to match.

* Commenting, etc.

* Some renaming of session, etc.

* Fix stopAllMotors in EV3.

* Fixing clearing of motors in EV3.

* Some comment changes.

* Change runtime .extensions/registerExtension to .peripheralExtensions/registerPeripheralExtension.

* Renaming outputCommand/inputCommand to generateOutputCommand/generateInputCommand, etc.

* Moved motorCommandIDs to EV3Motor class, renamed directCommand to generateCommand, etc.

* Adding a reminder to rename something.

* JSDoc fix in EV3Motor class.

* Fixing microbit function name.

* Adding a todo item.

* Changing Ev3 menu formats to be backwards compatible, moving a BLE function up.

* Fixing EV3 ports again, and button pressed returning a boolean.

* Fixing menu value to be a string in EV3.
2018-09-07 17:01:23 -04:00
Christopher Willis-Ford
8602d5798a Allow extension reporter only if no block args 2018-09-07 12:16:48 -07:00
Christopher Willis-Ford
f5182a231e Add getLabelForOpcode for use by monitors 2018-09-07 12:01:13 -07:00
Michael "Z" Goddard
c76ad21093
reduce size of benchmark suite configuration 2018-09-07 14:47:50 -04:00
Michael "Z" Goddard
dc85f1162f
enable disabled benchmark test 2018-09-07 14:39:45 -04:00
Michael "Z" Goddard
db7b356825
rename stage monitors along with stage
Rename Stage object and monitors together then use the set name to name
the sprite.
2018-09-07 14:36:44 -04:00
Christopher Willis-Ford
701fb6c1c5 Enable extension monitors, add flag to disable
Extension reporters now offer a monitor checkbox by default, unless the
`disableMonitor` flag is set in the extension block metadata.
2018-09-07 11:13:13 -07:00
Michael "Z" Goddard
609350a7fc
pass parseState info in sb2 deserializer
Pass state information beyond the current block.
2018-09-07 14:00:23 -04:00
Eric Rosenbaum
36711931b2 Make a constant for speech volume 2018-09-05 18:36:01 -04:00
Eric Rosenbaum
fe746a7c43 Use map of soundPlayers for stop all 2018-09-04 21:12:45 -04:00
Eric Rosenbaum
fb7c293e71 Set volume of speech using effect chain 2018-09-04 21:12:04 -04:00
Eric Rosenbaum
5dfa4cc691 Text2speech set gain to 2 (6db) 2018-08-31 10:47:36 -04:00
Eric Rosenbaum
39be6d873c
Rate-limiting with a token bucket for the WeDo extension (#1540)
* Initial version of token bucket

* Add rateLimiter util

* Remove check for motor.isOn in stopAllMotors

* Fix unit test

* Fix unit test with stubbed timer, and cleanup

* Add comment

* Reduce WeDo rate limit to 20 sends/sec

* Move rate limit into a constant

* Stop button stops motors and tone even if rate limit exceeded
2018-08-29 17:37:59 -04:00
Ray Schamp
9c556219ce
Merge pull request #1528 from kchadha/fix-comment-import
Fix Comment import/save/load issue
2018-08-28 16:04:53 -04:00
Ray Schamp
713792480e
Merge pull request #1524 from kchadha/only-undefined-in-c-block-fix
Resolve project load error with undefined opcodes inside c/e blocks.
2018-08-28 16:03:24 -04:00
picklesrus
b95b8d41ff Fix #1395 by resetting the utterance we check for in the edge trigger hat on green flag (#1476) 2018-08-27 11:10:51 -04:00
picklesrus
b9a757ea08 Fix speech extension in Safari (#1202) by calling getUserMedia for every listen and wait block rather than trying to reuse it. Also get rid of some code that was not actually doing anything. (#1467) 2018-08-27 11:05:51 -04:00
Karishma Chadha
2c24ef37a0 Fix issue where block comments converted to workspace comments import correctly when there are no scripts on the workspace. 2018-08-24 14:29:10 -04:00
Karishma Chadha
0532f9a80a Fix issue where a c-block that contained only blocks with unknown opcodes, was causing an import error. 2018-08-23 18:20:45 -04:00
Karishma Chadha
5e1dd8a7cf Fix issue with importing projects from 2.0 where block comments were converted to workspace comments and the corresponding block was deleted. 2018-08-22 18:41:47 -04:00