Commit Graph

902 Commits

Author SHA1 Message Date
Rachel Fenichel
f3c10d4eaa Merge develop into master (#1064)
* Adding new minimap demo

* Basic code style changes. Adding a few more comments. Return early if disableScrollChange in onScrollChange listener.

* Adding horizontal scrolling. Changed scroll change callbacks from onScroll_ to setHandlePosition. onScroll_ is not challed when workspace is dragged.

* Registering mousemove and mouseup listener in mousedown event. Mousemove and Mouseup events are now listening over document.

* Adding the remove variable modal and functionality to accessible Blockly. (#1011)

* Minimap position bug fix for browsers other than chrome. Added touch support.

* Adding an add variable modal to accessible Blockly. (#1015)

* Adding the remove variable modal and functionality to accessible Blockly.

* Adding the add variable modal for accessible Blockly.

* Block browser context menu in the toolbox and flyout

* Add links to the dev registration form and contributor guidelines

* Miscellaneous comment cleanup

* Adding the common modal class. (#1017)

Centralizes accessible modal behavior.

* - Changed error message referencing 'procedure' instead of 'function' (#1019)

- Added iOS specific UI messages
- Fixed bug with js_to_json.py script where it didn't recognize ' character

* - Allows use of Blockly's messaging format for category name, colour,… (#1028)

...in toolbox XML.
- Updated code editor demo to use this message format
- Re-built blockly_compressed.js

* Making text_count use a text color (like text_length, which also returns a number). (#1027)

* Enable google/blockly with continuous build on travis ci (#1023) (#1035)

* create .travis for ci job

* initial checkin for blocky-web travis ci job

* rename file to .travis.yaml for typo

* remove after_script

* added cache

* rename .travis.yaml to .travis.yml

* Update .travis.yml

* include build script

* fix yaml file format issue

* debug install part

* debug build issue

* Update .travis.yml

* remove cache for now

* Update .travis.yml

* Update .travis.yml

* Update .travis.yml

* more debug info

* Update .travis.yml

* Update .travis.yml

* fix typo

* installing chrome browser

* remove chrome setting config

* run build.py as part of npm install

* Update .travis.yml

* update karma dependency

* use karma as test runner

* fix typo

* remove karma test for now

* Update .travis.yml

* Update package.json

* add npm test target

* add browserstack-runner depdendency

* update browser support

* fix typo for test target

* fix chrome typo

* added closure dependency

* add google-closure-library

* include blockly_uncompressed.js and core.js dependency

* uncomment out core/*.js files

* add kama job as part of install

* remove browserstack add on for now

* fix karma config typo

* add karma-closure

* add os support

* remove typo config

* include more closure files

* change os back to linux

* use closure-library from node_modules

* change log level back to INFO

* change npm test target to use open browser command instead of karma

* change travis test target to use open command instead of karma

* list current directory

* find what's in current dir

* typo command

* Update .travis.yml

* typo again

* open right index.html

* use right path for index.html

* xdg-open to open default browser on travis

* exit browser after 5s wait

* change timeout to 1 min

* exit after opening up browser

* use browser only

* use karma

* remove un-needed dependency

* clean up script section

* fix typo

* update build status on readme

* initial commit for selenium integration tests

* update selenium jar path

* fix test_runner.js typo

* add more debug info

* check java version

* add && instead of 9288

* fix java path

* add logic to check if selenium is running or not

* add some deugging info

* initial commit to get chromedriver

* add chromedriver flag

* add get_chromedriver.sh to package.json and .travel

* change browser to chrome for now

* fix path issue

* update chromdriver path

* fix path issue again

* more debugging

* add debug msg

* fix typo

* minor fix for getting chromedriver

* install latest chrome browser

* clean up pakcage.json

* use npm target for test run

* remove removing trailing comma

* fix another trailing comma

* updated travis test target

* clean up scripts

* not sure nmp run preinstall

* redirect selenium log to tmp file

* revert writing console log to file

* update test summary

* more clean up

* minor clean up before pull request

* resolved closure-library conflict

1. add closure-library to dependencies instead of devDependencies.
2. add lint back in scripts block

* fix typo (adding comma) in script section

* Renames Blockly.workspaceDragSurface to Blockly.WorkspaceDragSurface.

Fixes #880.

* Ensure useDragSurface is a boolean.

Fixed #988

* use pretest instead of preinstall in package.json (#1043)

* cherry pick for pretest fix

* put pretest target to test_setup.sh

* fix conflict

* cherry pick for get_chromedriver.sh

* add some sleep to wait download to finish

* use node.js stable

* use npm test target

* field_angle renders degree symbol consistently.

Fixes #973

* bumpNeighbours_ function moved to block_svg.

Fixed #1009

* Update RegEx in js-to-json to match windowi eol (#1050)

The current regex only works with the "\n" line endings as it expects no characters after the optional ";" at the end of the line. In windows, if it adds the "\r" it counts as a characters and is not part of the line terminator so it doesn't match.

* Fix French translation of "colour with rgb" block (#1053)

"colorier", which is currently used, is a verb and proposed "couleur" is
a noun: the block in question does not change colour of anything, it
creates new colour instead, thus noun is more applicable.

Also, noun is used in French translation of "random colour" block:
"couleur aléatoire".

* Enforcing non-empty names on value inputs and statement inputs. (#1054)

* Correcting #1054 (#1056)

single quotes. better logic.

* Created a variable model with name, id, and type.

Created a jsunit test file for variable model.

* Change how blockly handles cursors.  The old way was quite slow becau… (#1057)

* Change how blockly handles cursors.  The old way was quite slow because it changed the stylesheet directly.  See issue #981 for more details on implementation and tradeoffs.  This changes makes the following high level changes: deprecate Blockly.Css.setCursor, use built in open and closed hand cursor instead of custom .cur files, add css to draggable objects to set the open and closed hand cursors.

* Rebuild blockly_uncompressed to pick up a testing change to make travis happy.  Fix a build warning from a multi-line string in the process. (#1059)

* Merge master into develop (#1063)

- pick up translation changes
- clean up trailing spaces

* Rebuild for translations
2017-04-25 10:48:40 -07:00
Rachel Fenichel
92f3880008 RemoveAttribute doesn't work on SVG elements in IE 10. Use setAttribute to null instead. 2017-03-27 17:25:41 -07:00
Rachel Fenichel
85b4f5f1a8 Fix #969 2017-03-17 16:25:45 -07:00
picklesrus
fd7d8b1ac8 Fix #967 by overriding the updateWidth method in FieldImage blocks to be a no-op. FieldImage fields should not change size after the width is set in init. The updateWidth and, therefore, getCachedWidth is now being called by BlockSvg renderFields_ (see commit d55d9cbd9f). IIUC, updateWidth/getCachedWidth was only called from render before which is overridden in FieldImage to be a no-op already. (#979) 2017-03-17 16:15:40 -07:00
picklesrus
847d83e4af Another attempt to fix #904 to keep the page from jumping to the focused workspace in IE 11 (#974) 2017-03-10 14:58:09 -08:00
picklesrus
9b98573327 Cross browser friendly fix for #904. This calls blur and focus from … (#972)
* Cross browser friendly fix for #904.  This calls blur and focus from workspace.markFocused and removes the event listener on focus events.  markFocused is called from all of our mouse down handlers, which triggers the focus event leading to an infinite loop of focus.  As far as I can tell, there are no uses of the focus handler that actually did anything for us.
2017-03-08 14:27:53 -08:00
picklesrus
63c899e4e1 Potential fix for #888. Stops checking whether we are mid workspace drag since we do not always get mosue up events when blockly is in an iframe. (#899) 2017-03-06 16:19:29 -08:00
picklesrus
ab042d4dd8 Fix bug #904 by explicitly grabbing focus on the workspace svg element. (#964) 2017-03-03 16:15:02 -08:00
Rachel Fenichel
72256a187d Annotation fixes 2017-03-03 13:22:50 -08:00
Andrew n marshall
6e1ffe09c2 Adding Blockly.Xml.appendDomToWorkspace() (#962)
This is a copy (with additional comments) of PR #822 (and also #961) by @qnoirhomme with unrelated files removed. See #822 for full review.
2017-03-03 08:40:00 -08:00
Rachel Fenichel
4b75b6271b Make it easier to read the code that creates the variable category in the tolbox 2017-03-02 13:55:25 -08:00
Rachel Fenichel
05312c9bf7 Merge pull request #952 from rachel-fenichel/feature/if_else_update
Use mutator extension for controls_if block
2017-02-27 19:56:32 -08:00
Rachel Fenichel
c30928a177 Make some functions private and add tests 2017-02-24 15:51:59 -08:00
Andrew n marshall
1bc74819aa period 2017-02-24 15:47:35 -08:00
Andrew n marshall
a9aabd637f Adding warning on duplicate JSON block definition. 2017-02-24 15:41:56 -08:00
Rachel Fenichel
aa8e996799 Handle mutations with both mixins and functions 2017-02-23 17:07:06 -08:00
Rachel Fenichel
4b0c32e91f Add safety checks for mutators and non-mutator extensions 2017-02-23 15:55:13 -08:00
Andrew n marshall
3db3cf551f Fix #945 (annotations) and an eslint issue (constant condition) 2017-02-22 23:15:39 -08:00
Rachel Fenichel
455432250e Use mutator extension for controls_if block 2017-02-22 17:05:52 -08:00
Rachel Fenichel
3d08099950 Merge pull request #809 from google/paternity
Option for moving one block from stack.
2017-02-22 10:39:11 -08:00
Rachel Fenichel
0a73ae38f9 Merge pull request #933 from K-ran/bugfix/rounding_error
Potential bug fix for issue #661
2017-02-15 09:12:23 -08:00
Karan Purohit
4a81623f8d Code correction from previous commit. Moved style to css.js and set ROUNDING=15; 2017-02-15 14:33:20 +05:30
Andrew n marshall
b32136d81f Clarification update.
Unraveling nested ternaries in Blockly.utils.tokenizeInterpolation_()
2017-02-14 15:51:24 -08:00
Andrew n marshall
afd1fdeb15 .utils.replaceMessageReferences(..) now gracefully returns non-string arguments. 2017-02-14 11:00:34 -08:00
Andrew n marshall
750c0300ec Addressing comments. 2017-02-14 11:00:34 -08:00
Andrew n marshall
dc0d3beba3 Moving FieldImage string dereferencing back into Block.interpolate_() (part of jsonInit()). This sets a clear boundary of where dereferencing should happen.
Towards this, I've added message dereferencing for other field types here, as well.  I've used a pattern of field-type specific helper functions.
2017-02-14 11:00:34 -08:00
Andrew n marshall
640fb9c733 Dereference string table references when loading variable fields from JSON. 2017-02-14 11:00:34 -08:00
Karan Purohit
cdef092683 Potential bug fix for issue #661 2017-02-14 23:00:14 +05:30
Andrew n marshall
79becd6b31 Add no-op stub .neighbors() for headless Connection. 2017-02-13 16:28:43 -08:00
Andrew n marshall
6b692a0802 Initial text block, with a mixin to generate quote image fields. (#923)
Text block now uses the extension "text_quotes", supported by Blockly.Constants.Text.QUOTE_IMAGE_MIXIN.quoteField_(fieldName), so that each platform can use the best platform appropriate image (size, density, etc.) for the quotes.
2017-02-13 15:00:02 -08:00
Rachel Fenichel
3af6238457 Merge pull request #921 from rachel-fenichel/feature/workspace_isMovable
Workspace isDraggable
2017-02-08 13:02:42 -08:00
Rachel Fenichel
1a8383180e Workspace isDraggable 2017-02-08 12:31:52 -08:00
Andrew n marshall
a4cfd5cbc8 Porting Loop blocks to JSON (#919)
* Improved documentation on `Blockly.Extensions.buildTooltipForDropdown`
 * Replaced incorrect uses of `@mixes` JSDoc annotation (on mixin extensions) with `@augments Blockly.Block`.
 * Added Blockly.Extensions.buildTooltipWithFieldValue() extension helper.
2017-02-08 11:36:38 -08:00
Rachel Fenichel
7afefa09f8 Merge pull request #914 from rachel-fenichel/feature/isFieldEditable
Add isEditable to field, and add tests
2017-02-06 15:46:33 -08:00
Rachel Fenichel
5a40208138 Separate tests 2017-02-06 15:25:59 -08:00
Rachel Fenichel
630863d9db Add isEditable to field, and add tests 2017-02-06 14:47:45 -08:00
Andrew n marshall
24ebbcaad0 Improving errors/warnings with Block.toDevString() and Connection.toString(). (#911) 2017-02-06 14:15:20 -08:00
Andrew n marshall
680fc4b6d3 Porting Logic blocks to JSON (#913)
Extensions, mixins, mutators and constants now grouped under the new namespace Blockly.Constants.Logic.
2017-02-06 13:40:05 -08:00
Rachel Fenichel
e429e0c42f Merge pull request #912 from rachel-fenichel/lint
Fix some lint errors
2017-02-06 12:39:45 -08:00
Andrew n marshall
15827c5d30 Adds Block.prototype.mixin() and Blockly.Extensions.registerMixin(). (#907)
Adds Block.prototype.mixin() and Blockly.Extensions.registerMixin().
This adds support for a common use pattern in extensions, and adds
error checking to avoid future incompatibilities.
2017-02-06 10:00:08 -08:00
Jim Mussared
ec878b02cd Correct changedState in setWarningText() (#908)
When clearing warnings on blocks with IDs, the changedState variable should be true if the text changed. This will trigger the block being reshaped and remove the space for the notification icon (this.bumpNeighbours_).
2017-02-06 08:41:17 -08:00
Rachel Fenichel
4152542c2f Fix some lint errors 2017-02-03 14:01:18 -08:00
Rachel Fenichel
cab3afd677 Merge pull request #894 from google/seanlip-block-descriptions
Use the empty field placeholder for dropdowns that do not have a value selected.
2017-02-02 11:53:33 -08:00
Andrew n marshall
e95991cba8 Adding @namespace annotations for JSDoc. (#900) 2017-02-01 09:10:35 -08:00
Tim Dawborn
89ee9809d9 Bugfix for #892. I incorrectly converted one CSS transform setting to use the cross-browser setting function in 40a063763c. (#895) 2017-01-31 08:58:03 -08:00
Sean Lip
2c72590a01 Use the empty field placeholder for dropdowns that do not have a value selected. 2017-01-30 16:23:40 -08:00
Sean Lip
bf3b5f9d0d Fix a bug where splicing a block between two linked blocks disconnects the group and messes up the focus. 2017-01-27 18:33:39 -08:00
Rachel Fenichel
fe92d75793 Merge pull request #885 from rachel-fenichel/bugfix/context_menu_placement
Place context menu correctly on touch
2017-01-27 14:08:36 -08:00
Rachel Fenichel
3722c7d329 Place context menu correctly on touch 2017-01-27 14:03:20 -08:00
Rachel Fenichel
37906a1099 Merge pull request #882 from rachel-fenichel/bugfix/set_check_headless
Stop bumping neighbours in headless blockly
2017-01-27 13:06:46 -08:00