1) Simplifications.
2) Enable toolbox category colours to be specified using the full range of CSS formats (not just hue or #rrggbb).
3) Fix bug where `Blockly.utils.checkMessageReferences('%{BKY_today} %{BKY_xxx}')` returns true.
Chrome returns ‘transform: translate(107px, 0px);’ whereas Firefox now returns ‘transform: translate(107px);’ if the y value is 0. This is consistent with existing behaviour in the translate SVG attribute.
The comment in our code specifically states:
// Accounts for same exceptions as XY_REGEX_
Yet that was not true at all.
This PR makes the y argument optional (as falsely described in the comment). It also merges the 2D and 3D regeps together to simplify the code.
Resolves issue #2482. Needs to be cherrypicked to Master and everything rebuilt and pushed.
document.documentElement.clientWidth/clientHeight seems to work everywhere Blockly works. Closure’s functions are mind-numbingly complex due to IE5, old WebKit, Opera 8, and others.
* Added Max Instances property to Blocks
* eslint cleanup
* eslint cleanup 2
* Moved maxInstances property from block to workspace (as a map of block type to max instances). isDuplicate() changed to correctly handle siblings/branches.
* eslint cleanup
* Changed checking types to map. Added hasBlockLimits. Fixed Nits.
* Added limit_instances test block. eslint fixes.
* fixup! Added limit_instances test block. eslint fixes.
* Changed sorting objects to a private static function of the workspace. Fixed nits. Undeleted .eslintrc
* Reverted .gitignore file.
* Added getBlockTypeCounts() to utils. Added isCapacityAvailable() to workspace. Changed clipboard to save typeCountsMap rather than object.
This fixes race condition in #1369 by using message references instead of explicit string lookups. This required fixing a bug the token interpolation parser that was breaking on the inner '"%1"' for these tooltips.