jmoenig
83adb56bd0
tweaked yesterday's fix...
2019-02-15 17:26:11 +01:00
jmoenig
82c6b82960
keep empty numerical input slots in custom blocks empty when relabelling
...
instead of filling in zeroes
2019-02-14 12:01:16 +01:00
Zhenlei Jia
1c5d6970a9
Fix a bug that a single key stroke will be escalated twice.
2019-02-12 08:17:55 -05:00
Zhenlei Jia
e972ae0ccd
Set the right cursor position at the start of editing.
...
I assumed that all editing start with the whold content being selected.
The project note editor shows that this assumption might not be sure.
Added code in initializeTextarea to get the cursor right at the start
of editing.
2019-02-08 20:58:40 -05:00
Zhenlei Jia
aabdfeade6
Provide IME support to the text editing in Snap.
...
1. Design Outline:
Three parties are involved:
- the target: the StringMorph/TextMorph to be edited
- the editor: the hidden textarea
- the manager: the CursorMorph
The manager takes care of the lifecycle of the editor, and provide visual
presentation of the cursor.
The editor holds the content being edited, handles keyboard events, perform
the required editing, then update the target with the result of editing.
The target handles mouse events, which result into changes of cursor position
and selection status, then it will update the editor with these information.
2. Change of WorldMorph.edit(target) method
At the start of the method, added two guards to check:
- if `target` is actually currently being edited, do nothing.
- if another morph is being edited, call stopEditing().
- ... the old codes
This is to fix a bug in mouse event handling. The bug is that shift+click does not
select the text between the clicked position and previous position, instead
all text wiil be selected.
The cause of this bug is the morph that being edited called stopEditing() and then
.edit(), which starts a new editing session, and the previous selection state is lost.
By adding above mentioned guard, the force restart will be avoid.
2019-02-08 10:54:03 -05:00
Zhenlei Jia
a5aa6dd4b1
Fix a bug of project note edit dialog
...
Before fix, accepting the edit by "Shift+Enter" will discard all
editings.
Solution: setup dialog.target, dialog.action and dialog.getInput
properly for DialogBoxMorph's 'accept' method.
Changes are made in src/gui.js, but the 'why' part is at the
DialogBoxMorph.accept method in the file src/widget.js.
2019-02-08 08:14:45 -05:00
jmoenig
a19cd29526
enable dropping command blocks into all rings by default. Yeah!
2019-02-07 12:54:45 +01:00
jmoenig
ba46761576
adjusted keyboard typing for command blocks inside reporter rings
2019-02-07 12:47:56 +01:00
jmoenig
2a20052349
cleaned up blocks.js
2019-02-07 12:37:20 +01:00
jmoenig
3fef36f614
layout adjustments for dropping command blocks into reporter rings
2019-02-07 12:26:26 +01:00
jmoenig
affbe2f437
refactored for optimized parent-by-type detection
2019-02-07 09:54:22 +01:00
jmoenig
22e12c834a
simplified and optimized Node>>parentThatIsA / parentThatIsAnyOf
2019-02-07 09:48:17 +01:00
jmoenig
d3a01ea1ee
improved dropping command blocks into reporter rings
2019-02-07 07:54:23 +01:00
jmoenig
37a8c8d6e6
tweaked spec for settings getter
2019-02-07 07:45:23 +01:00
jmoenig
c081eb997f
tweaked loading mechanism to enable command blocks inside reporter rings
2019-02-07 07:42:47 +01:00
jmoenig
b950976675
enable dropping commands into all rings, experimental, under construction
2019-02-06 20:35:54 +01:00
jmoenig
015bc354c4
adjust bottom of STOP block to reflect the menu selection (show / hide bottom notch)
2019-02-06 14:21:09 +01:00
jmoenig
c299d4df60
added indicators for special menu / slot type to input slot editor
2019-02-06 11:43:01 +01:00
jmoenig
b2e59006c5
made existence of slot-options and special menus testable
2019-02-06 10:48:06 +01:00
jmoenig
7478efdca9
refactored custom block input slot options / menus
...
avoid errors in case users edit menus in ways that are not supported
2019-02-06 08:44:07 +01:00
jmoenig
89fb1ac36f
radio button symbols for special slot / drop-down menu options
2019-02-05 22:09:55 +01:00
jmoenig
4951f5cb70
enable dial menu to work with textual values representable as numbers
2019-02-04 11:11:43 +01:00
jmoenig
aa98ed4d50
enable piano keyboard menu to work with textual values representable as numbers
2019-02-04 11:01:55 +01:00
jmoenig
9acd28bbe4
tweaked editor display of multi-line inputs with defaults
2019-02-04 10:00:19 +01:00
jmoenig
96660cf775
support default values in multi-line input slots inside custom blocks
2019-02-04 09:56:22 +01:00
jmoenig
85c6a1ed38
identify multi-line input slots by the pilcrow symbol in the slot editor
2019-02-04 09:04:58 +01:00
jmoenig
d92b37c629
special context-aware drop-downs for custom blocks
2019-02-04 08:25:03 +01:00
jmoenig
39edea8f43
multi-line and monospaced "code" input slots for custom blocks
2019-02-01 17:22:18 +01:00
jmoenig
91009916a2
added "rotation style" selectors to accessor blocks
2019-01-28 18:25:25 +01:00
jmoenig
5b7d215cc9
added "draggable" selector to attributes accessors
2019-01-28 18:01:32 +01:00
jmoenig
6b805a855a
added "flat line ends" option to "turbo mode" accessor blocks
2019-01-28 16:54:48 +01:00
jmoenig
fc175b844e
German translation update
2019-01-28 10:17:10 +01:00
jmoenig
c50396fdf7
new "object" reporter in the Sensing category for getting a sprite by its name
2019-01-28 10:10:10 +01:00
jmoenig
b9bc9d1446
pushed version to "beta"
2019-01-28 08:07:52 +01:00
jmoenig
f40def7316
updated version history
2019-01-28 07:59:48 +01:00
jmoenig
9608bc9b45
added ability to export sounds
2019-01-25 13:38:08 +01:00
jmoenig
19f17e7243
updated version history
...
and slightly tweaked the code to please lint :-)
2019-01-25 12:17:57 +01:00
Jens Mönig
1601dffddc
Merge pull request #2315 from jmoenig/cloud-enhancements
...
Updates to cloud.js
2019-01-25 12:04:09 +01:00
jmoenig
af6229828f
tweaked CSV-parser to handle \r-only record delimiters
2019-01-25 09:31:11 +01:00
jmoenig
cfc8750292
Turkish translation update, thanks, Turgut!
2019-01-24 11:57:24 +01:00
Michael Ball
16db64c9d5
oh dear! 2e20 is *not* 2**20...whoops
2019-01-24 02:32:40 -08:00
Michael Ball
19243fa538
cleanup duplicative error handling
2019-01-24 02:10:48 -08:00
Michael Ball
b4f12a67bd
cleanup logging / comments
2019-01-24 02:07:26 -08:00
Michael Ball
a044553767
refactor some cloud project saving. Fix #2169
2019-01-24 02:03:10 -08:00
Michael Ball
1fdded7fe5
Move project saving code to gui.js
...
Give it a small refactor, fix size checking.
2019-01-23 23:54:33 -08:00
Michael Ball
204f725437
cloud.js tweak to not need morphic as much.
2019-01-23 23:31:00 -08:00
jmoenig
ce4d93c036
updated German translation
...
added translations for the new "background color" blocks
2019-01-23 17:44:38 +01:00
jmoenig
2cc9a17310
save stage's background color in project
...
also save alpha of pen color and background color
2019-01-23 17:34:51 +01:00
jmoenig
8bf326e934
new blocks for setting and changing the stage's background color
2019-01-23 17:09:54 +01:00
jmoenig
5fa31f0aab
tweaked rending of C-shaped slots inside predicates
2019-01-23 07:20:22 +01:00
jmoenig
c7f0d9d674
fixed pen hsv-cache invalidation for clones
2019-01-22 13:38:00 +01:00
jmoenig
2f269f062d
cleaned up CSV parser
2019-01-22 10:47:00 +01:00
jmoenig
8746a0f95f
remove all clones when the Green Flag is clicked
2019-01-22 03:06:43 +01:00
jmoenig
d35ea89193
adjust label row below C-Slot to accomodate loop icon, if any
2019-01-22 02:29:15 +01:00
jmoenig
4ec2732a9d
updated internal "for reach" primitive block with new arrow symbol. Sigh.
2019-01-21 13:22:20 +01:00
jmoenig
7cf1c56d1d
let users make C-shape slots with loop arrow symbols. Sigh.
2019-01-21 13:13:37 +01:00
jmoenig
573ce00e8c
updated version of Indonesian translation, thanks, @amuritna!
2019-01-21 09:30:24 +01:00
jmoenig
0695ac2883
fixed "Staatsgalerie bug" - "relabel" did not restore drop-down choice when localized
2019-01-19 23:29:12 +01:00
jmoenig
1697be02d3
updated versions
2019-01-17 13:27:58 +01:00
Bernat Romagosa
91439e8512
minor change because of new user roles
2019-01-16 12:35:40 +01:00
jmoenig
83aa4866e9
suppress 'loop' arrow symbol where label text follow the C-slot in translations
2019-01-16 08:51:45 +01:00
jmoenig
1de1581c22
updated German translation
2019-01-15 07:53:41 +01:00
jmoenig
c43eb3ca17
pushed dev version to 5.0
2019-01-14 17:28:01 +01:00
jmoenig
89dcda7418
added 'loop' symbol to primitive loop blocks
2019-01-14 17:21:47 +01:00
jmoenig
190826987a
added 'loop' arrow symbol
2019-01-14 12:07:27 +01:00
jmoenig
00be8bd92a
another blind shot at addressing Brian's CSV parsing issue
2019-01-12 20:01:25 +01:00
jmoenig
a9428974a9
try to identify Brian's problem with parsing a CSV
2019-01-12 09:33:56 +01:00
jmoenig
59eac0faf5
Turkish translation update, thanks, Turgut Guneysu!
2019-01-11 17:49:40 +01:00
jmoenig
9dfaca8e33
updated version dates, pushed dev version to 4.3
2019-01-11 17:36:07 +01:00
Jens Mönig
be8b2a5f7e
Merge pull request #2287 from bromagosa/number-sounds
...
fix: can't play sounds by name if name is a number
2019-01-11 17:07:13 +01:00
Jens Mönig
0020ce17f7
Merge pull request #2292 from bromagosa/remix-changes
...
Changes needed for the remix functionality in our new social site
2019-01-11 16:38:00 +01:00
Jens Mönig
d1b90ad946
Merge pull request #2285 from bromagosa/embed-changes
...
Tweaked styling for embed mode to match social site
2019-01-11 15:42:19 +01:00
Jens Mönig
4bf84582b0
Merge pull request #2279 from bromagosa/rename-project
...
added Cloud >> updateProjectName method
2019-01-11 15:38:27 +01:00
jmoenig
f9ca6ab23c
updated German translation
2019-01-10 16:02:46 +01:00
jmoenig
3df6370a11
import & examine data sets and text files via drag'n'drop or "import" menu
2019-01-10 15:51:02 +01:00
jmoenig
9c9a778c23
updated list documentation, enabled table support by default
2019-01-10 15:42:19 +01:00
jmoenig
6275793507
recognize data sets in dropped text files (csv, json)
2019-01-10 15:28:57 +01:00
jmoenig
8bf2bf88c9
tweaked Boolean filter for CSVs
2019-01-09 18:15:47 +01:00
jmoenig
cedbce80d4
prevent Booleans in CSVs
2019-01-09 18:01:17 +01:00
jmoenig
80ea5ab9ba
automatically parse json files on import
2019-01-09 17:45:31 +01:00
jmoenig
dab03fac5d
added "export as JSON" capability
2019-01-09 16:51:36 +01:00
jmoenig
56c5971aae
added (Bernat's) JSON parser to SPLIT block
2019-01-09 11:03:43 +01:00
jmoenig
05a8c5bdfc
fixed "set pen color (color picker)" to observe, i.e. overwrite transparency
2019-01-09 08:38:44 +01:00
jmoenig
2f268ed3b7
added option to include alpha in color comparison
2019-01-09 08:37:08 +01:00
jmoenig
2f36d49591
tweaked format for serializing atomic data lists
2019-01-09 07:21:57 +01:00
jmoenig
f2657fd662
updated German translation
2019-01-08 17:35:12 +01:00
jmoenig
7d877a6244
renamed "color" to "hue" in pen-blocks and in location sensor
2019-01-08 17:28:52 +01:00
jmoenig
600ec731d2
fixed a glitch in the List >> asCSV() encoder
2019-01-08 17:12:24 +01:00
jmoenig
4db5536eff
make sure to escape optimized list storage
2019-01-08 16:41:40 +01:00
jmoenig
cefb945ec1
optimized serialization of lists with atomic data in project files
2019-01-08 16:20:50 +01:00
jmoenig
dfb2907c84
fixed an off-by-one error in List >> becomeLinked()
2019-01-08 16:14:43 +01:00
jmoenig
6c5a0b9c88
automatically parse csv files on import
...
also: experimental "raw data" and "parse" ops
2019-01-08 07:21:01 +01:00
jmoenig
a681880965
directly export and import lists as csv files, under construction
2019-01-07 18:54:19 +01:00
jmoenig
8e7a9a4bef
fixed pixel color sensing for stage pen trails
2019-01-04 13:21:13 +01:00
jmoenig
ccbda1a4f9
updated German translation
2019-01-04 11:38:09 +01:00
jmoenig
b2b3aea8d2
new feature/block: sense colors and sprites anywhere
...
use sprites to read/write data encoded in colors
2019-01-04 11:20:50 +01:00
jmoenig
9ea9c8c3f5
updated German translation
2019-01-02 15:30:37 +01:00
jmoenig
f97ce5c63c
tweaked pen color selector to "HSVA"
2019-01-02 14:46:50 +01:00
jmoenig
92d8fa4cb3
pushed dev version to 4.2.3
2019-01-02 14:40:06 +01:00
jmoenig
d5dd445eda
added third color dimension and transparency to pen
2019-01-02 14:27:04 +01:00
Bernat Romagosa
fc7a9cc566
Update cloud.js
2019-01-02 08:46:49 +01:00
jmoenig
e8f134fbe3
fixed glitch in WorldMorph >> getGlobalPixelColor
2019-01-01 15:41:51 +01:00
jmoenig
0bb72fbbdb
added HSL color conversion support to Morphic
...
and updated Morphic documentation
2019-01-01 15:25:50 +01:00
jmoenig
1ba15afba7
fixed #2294
2018-12-28 21:11:45 +01:00
jmoenig
f77516effe
updated German translation
2018-12-28 20:12:25 +01:00
jmoenig
f1278fbbaa
added "front/back" options to "go to front" layer primitive
2018-12-28 20:00:11 +01:00
jmoenig
a7146a804c
added 'neg' selector to monad operator
2018-12-28 19:29:15 +01:00
Bernat Romagosa
cacda530b2
added getRemixes function to cloud.js
2018-12-18 08:34:31 +01:00
Bernat Romagosa
06ff3478b7
added remixID property to stage at init
2018-12-17 13:07:32 +01:00
Bernat Romagosa
99815dd547
added remix functionality
2018-12-17 12:41:10 +01:00
Bernat Romagosa
1ce6febed0
fixed flag centering in embedMode
2018-12-12 08:20:05 +01:00
Bernat Romagosa
f498441a56
fix: can't play sounds by name if name is a number
2018-12-11 11:43:33 +01:00
Bernat Romagosa
fddbccf8ee
tweaked styling for embed mode to match social site
2018-12-07 14:11:51 +01:00
jmoenig
ba62f758f1
fixed #2284
...
executing "inherit" should not un-hide palette in presentation mode
2018-12-07 09:15:11 +01:00
Bernat Romagosa
8324935dc4
added Cloud >> updateProjectName method
2018-12-04 14:26:34 +01:00
jmoenig
79de77080a
fixed offline version (avoid sessionStorage access)
2018-11-29 14:07:50 +01:00
Jens Mönig
2e043428e0
Merge pull request #2272 from bromagosa/fix-non-persistent-login
...
fixes non persistent login accross page reloads
2018-11-29 13:16:59 +01:00
Bernat Romagosa
020a2266a3
fixes non persistent login accross page reloads
2018-11-29 12:45:04 +01:00
jmoenig
a85939cdaf
prepared release
2018-11-29 07:52:08 +01:00
jmoenig
a0b4aba0cc
allow smaller stage extent in embed mode
...
for social website
2018-11-28 12:42:19 +01:00
jmoenig
8b011ac38f
updated cloud version
2018-11-28 10:47:21 +01:00
Bernat Romagosa
85168ece6b
A typo and an error in the domain lookup comment.
...
The cloud URL is specified in a `location` attribute, not a `domain` one.
2018-11-28 09:29:50 +01:00
jmoenig
ac2b8e7745
added special checks to make imporing text-based files into vars easier in Windows
2018-11-28 09:27:03 +01:00
jmoenig
287764bfea
added "open anyway?" option to "unable to import" dialog for variables
2018-11-27 15:30:06 +01:00
jmoenig
4c4a676f4f
made importing files into variable watchers more lenient wrt to file types
2018-11-27 14:02:10 +01:00
jmoenig
c98fdacd4f
Cache stage>>penTrailsMorph to optimize collision detection
...
also fixed a collision detection errror when objects are sub-pixel sized
2018-11-27 08:54:40 +01:00
jmoenig
f6b36ed2f2
prepared release
2018-11-21 13:11:38 +01:00
jmoenig
07d3446036
prepared release
2018-11-13 07:50:54 +01:00
jmoenig
9e0015cf18
fixed #2261
...
(check for selectedBlock before declaring an InputSlotMorph to be "empty")
2018-11-13 00:24:42 +01:00
jmoenig
d9370661ec
fixed #2260
2018-11-12 19:54:09 +01:00
jmoenig
82543618ee
fixed #2251
...
(sorta, load project anyway even though costumes / sounds are missing)
The cause for this defect is usually prior use of IE when saving a project
2018-11-12 09:32:07 +01:00
jmoenig
d161895382
tweaked fix for #2250
2018-11-12 08:20:44 +01:00
jmoenig
9a256b47d1
fixed #2250
2018-11-12 07:59:55 +01:00
jmoenig
8339fb577b
updated BYOB's version date
2018-11-12 07:55:00 +01:00
jmoenig
6127b18f70
new dev version
2018-11-12 07:52:19 +01:00
jmoenig
b1c3841bfb
prepared release
2018-11-07 06:37:42 -05:00
jmoenig
6a6bf29abf
updated German translation
2018-11-06 23:36:38 -05:00
jmoenig
fe9a2890e1
enabled "duplicate block definition" in the palette
2018-11-06 23:26:05 -05:00
jmoenig
865ac5391a
fixed a scope issue introduced in v4.2.2.4
2018-11-06 23:13:35 -05:00
jmoenig
3922cad9a3
prepared minor release
2018-11-02 17:43:48 +01:00
jmoenig
9ba19db366
avoid rendering graphic effects for null-extent canvasses
2018-11-02 17:39:03 +01:00
jmoenig
2e4f52f40a
prepare release
2018-10-29 13:10:47 +01:00
jmoenig
5c8108dee7
fixed #2234 (display all reachable local variables in drop-down menu)
2018-10-29 12:34:25 +01:00
jmoenig
779fbeada4
new dev version
2018-10-29 12:31:51 +01:00
jmoenig
fddba70d79
prepare release
2018-10-26 11:39:38 +02:00
jmoenig
ba76995ab6
tweaked csv-parser to omit the last record if it is empty
2018-10-26 11:23:47 +02:00
jmoenig
386127a7d8
fixed #2235 (help for local custom blocks)
2018-10-26 09:14:24 +02:00
jmoenig
45de9c6120
changed SPLIT "csv" to comply with RFC 4180, took out others options
2018-10-26 08:05:09 +02:00
jmoenig
1d963ab0ca
added "csv records" to SPLIT options, renamed "csv" to "csv fields"
2018-10-24 16:14:34 +02:00
jmoenig
6b963671f0
updated history & version
2018-10-23 14:30:09 +02:00
jmoenig
ed297096e4
New "reportAtomicGroup" HOF primitive using the JIT compiler
2018-10-23 14:07:30 +02:00
jmoenig
e17d5e343b
Don't stamp if the canvas is too small (and would throw an error)
2018-10-23 12:00:41 +02:00
jmoenig
7086171c68
prepared release
2018-10-19 12:36:37 +02:00
jmoenig
3a7f26497a
fixed #2227 - capture argument reporter's lexical environment in JIT-compiler
2018-10-19 12:22:10 +02:00
jmoenig
faf4b51f18
prepare release
2018-10-16 10:21:17 +02:00
jmoenig
6c7c39ccad
New Ukrainian translation, thanks, Serhiy Kryzhanovsky!
2018-10-16 10:00:54 +02:00
jmoenig
bdc21b3668
prepared release
2018-10-07 12:20:28 +02:00
jmoenig
4e8dcd0924
renamed repo to "Snap!
...
and adjusted all references in the code
2018-10-07 11:21:44 +02:00
jmoenig
9e8e7d9e70
Fixed #1918 - escape options in block drop downs #2174 , thanks, @cycomachead !
...
for providing the fix
2018-10-05 16:18:13 +02:00
jmoenig
1ff20b30b1
Adjusted pen hue wrapping and took out pen shade wrapping
2018-10-05 09:48:11 +02:00
jmoenig
b1388a94b9
tweaked color wrapping
...
in my next life I promise to learn arithmetic :-)
2018-10-04 23:19:59 +02:00
jmoenig
460940497b
made SET PEN COLOR and SET PEN SHADE inputs wrap around
2018-10-04 17:54:40 +02:00
jmoenig
f79460ec67
added instructions for using Snap! offline
2018-10-04 16:18:44 +02:00
jmoenig
4d850b0410
improved UX when running Snap! locally without a web server
...
bypass the cloud and instead import and export everything to local disk
2018-10-04 14:34:59 +02:00
jmoenig
f2dacc1faf
updated history
2018-10-03 12:11:13 +02:00
Michael Ball
b8fcd99793
Coerce input to string before checking length in LETTER OF
2018-10-02 23:19:36 -07:00
jmoenig
536acb224f
moved media files (icon, logo, click sound) into "src" subfolder
2018-10-02 16:07:53 +02:00
jmoenig
258e476e5f
moved *.js files into subfolder "src"
...
and edited gui.js to deal with ypr.js
2018-10-02 15:48:42 +02:00