picklesrus
6aee3ed2da
Fixes #786 by checking if getComputedStyle is null in is3dSupported. We do not cache the value in this case and try again later. is3dSupported is only called while users are interacting with blockly which they cannot do while hidden so the performance implications of running the check again are minimal. ( #787 )
2016-12-16 09:52:19 -08:00
picklesrus
e1cd21842a
Add a workspace drag surface that blocks and bubble get moved to duri… ( #778 )
...
* Add a workspace drag surface that blocks and bubble get moved to during a workspace drag.
The surface is translated using translate3d instead of svg's translate attribute so that
the browser does not have to repaint the entire workspace on every mouse move.
This is very similar to the block drag surface.
* Address code review comments
* add back hasClass_ utility removed in #748 and stop using contains since it is not supported in IE
2016-12-15 11:02:49 -08:00
picklesrus
a82bd49d7e
Split the scrollbar and flyout out into their own SVG elements. They ( #771 )
...
* Split the scrollbar and flyout out into their own SVG elements. They
are siblings of the workpsace SVG. This paves the way to make performance
improvements to workspace dragging.
2016-12-09 16:19:19 -08:00
Neil Fraser
c27841f8df
Fix compiler errors.
2016-11-15 16:41:11 -08:00
Andrew n marshall
e5d25bb686
String reference in JSON string messages ( #741 )
...
* Adds message references to message string interpolation, in the form of %{BKY_STRING}.
* Re-adding CONTROLS_IFELSE block using the new syntax, referencing to CONTROL_IF equivalents.
2016-11-15 15:51:51 -08:00
Neil Fraser
f6aef459fc
API-breaking cleanup. But doubtful anyone will be affected. ( #748 )
...
* Make add/removeClass return whether they did anything.
* Move more functions onto utils.
* Move bind functions to Blockly.
* Routine recompile.
2016-11-15 13:54:33 -08:00
picklesrus
7f02c19bfe
Improve performance of block dragging. This is a backport of the blo… ( #732 )
...
Improve performance of block dragging. This is a backport of the block drag surface from scratch-blocks. At the beginning of a block drag, blocks get moved to a drag surface which then translates using translate3d to avoid repainting the entire svg on every mouse move. At the end of the drag, the blocks are dropped back in the svg in their new position.
2016-11-15 13:19:49 -08:00
Neil Fraser
32713726dc
Don't split dropdown text if there is an image.
2016-11-11 04:27:54 -08:00
Neil Fraser
5b033e2f7b
Misc cleanup.
2016-11-05 00:15:39 -07:00
Neil Fraser
415c6ed65e
Add $ back into the ID soup. Issue #251 .
2016-10-06 18:52:25 -07:00
Rachel Fenichel
63410dd719
rebuild
2016-09-23 13:49:15 -07:00
Rachel Fenichel
ed983333eb
bindEventWithChecks_ for internal use, and bindEvent_ with old behaviour but deprecated
2016-09-23 13:46:11 -07:00
Rachel Fenichel
7d435bdb99
Review cleanup
2016-09-21 13:44:55 -07:00
Rachel Fenichel
109e4bb352
Move code to touch.js
2016-09-07 17:42:09 -07:00
Rachel Fenichel
717bb1e660
Use different touch event constructor
2016-09-07 15:57:05 -07:00
Rachel Fenichel
c373d6d091
Make context menus work again; fix dragging from the toolbox with variables.
2016-09-07 15:49:20 -07:00
Rachel Fenichel
2774cc1663
Fix longpress in flyout; leave debug messages in
2016-09-01 13:08:59 -07:00
Rachel Fenichel
1c025672b3
Clear touch identifier at the ends of more drags. Includes flyout background, right-clicks on blocks, and loading sounds.
2016-08-31 15:56:37 -07:00
Rachel Fenichel
b77c080678
Fix bugs with missing mouseUp events on mutators. Also stop filtering out key presses.
2016-08-25 15:18:53 -07:00
Rachel Fenichel
7a7932acc7
No longer drops mouseUps; fixed lint per neil's comments
2016-08-18 14:46:28 -07:00
Rachel Fenichel
e8ebc5441f
Handle each changed touch as a separate touch event
2016-07-21 14:07:03 -07:00
Rachel Fenichel
6b7965a727
Ignore everything but the first touch stream
2016-07-20 17:03:24 -07:00
Neil Fraser
98617d8ddc
Move tokenizeIntepolation into Blockly.utils namespace.
2016-06-22 13:01:37 -07:00
Rachel Fenichel
42f620daa2
Check if matrix is null in mouseToSvg
2016-06-21 15:56:00 -07:00
Rachel Fenichel
c4cad3c6e4
Cache screen CTM for performance improvement.
2016-06-17 14:26:04 -07:00
Neil Fraser
3012d52808
Line wrap comments in generated code.
2016-06-08 00:12:58 -07:00
Rachel Fenichel
32eed0d2f8
Merge branch 'develop' into cleanup/lint
2016-05-10 14:43:09 -07:00
Rachel Fenichel
3605dfb9c0
Undo decimation of variable redeclarations
2016-05-10 14:40:48 -07:00
Rachel Fenichel
640b38f38e
lint
2016-05-05 13:13:48 -07:00
Katelyn Mann
ca16d1fefe
An alternate (and less expensive) way to keep stuff outside of the blockly div
...
from getting selected. Use e.preventDefault instead of adding and removing
classes on mousedown and mouseup. This keeps the browser from having to
potentially recacluate style on mousedown and mouseup events.
2016-05-04 19:12:38 -07:00
Neil Fraser
217c681b86
Use direct call to svg resize rather than event. Also fix issue #296 .
2016-05-04 15:00:57 -07:00
Katelyn Mann
b11bd4fb71
Remove Blockly.removeAllRanges and replace it with calls to add/remove
...
css to mark text as unselectable instead. I can't prove this is
significantly faster with numbers since the call to setup the time out
costs ~.1ms and the call when the timer fires is ~.05. This happens on almost
every mouse event though. Plus, it seems to remove a flicker of highlighting when
frames are skipped and keeps scrolling via the scrollbar from highlighting.
2016-03-28 10:06:43 -07:00
Neil Fraser
39fbd24659
Remove setProcedureParameters from API (use domToMutation instead).
2016-03-22 10:48:13 -07:00
Neil Fraser
aeabf0ec6f
Fix issue 251, $ in ID.
2016-02-16 22:16:36 -08:00
Neil Fraser
5297344a8b
Fix RTL XML.
2016-02-16 13:04:47 -08:00
Neil Fraser
4b0ed0d372
Add custom event file.
2016-01-12 16:47:18 -08:00
Neil Fraser
3bce368115
Simplify workspace options by removing svg property.
2016-01-07 17:01:01 -08:00
Neil Fraser
e5dfdf4658
Improve randomness of UUIDs.
2015-11-24 19:16:01 -08:00
Neil Fraser
d702808f71
Add UUID generator.
2015-11-19 01:46:53 -08:00
Neil Fraser
7568015c8c
Scale the flyout as the workspace zooms.
2015-09-01 20:00:13 +01:00
Neil Fraser
8f73c6b042
Clean getSvgXY_.
...
No functional change.
2015-09-01 12:22:50 +01:00
Neil Fraser
f81a5bd11a
Expand regex to handle IE's scientific notation.
2015-08-26 14:08:03 +01:00
Markus Bordihn
d555121a1c
Update utils.js
...
There is no global "getSelection()" function, see:
https://developer.mozilla.org/en-US/docs/Web/API/Window/getSelection
2015-08-25 15:39:09 +02:00
Neil Fraser
5b7fec7092
Add zooming feature.
...
By carloslfu.
2015-08-19 17:21:05 -07:00
Neil Fraser
e0f90e6e33
Adding more type documentation.
2015-07-13 15:03:22 -07:00
Neil Fraser
916a5f56b0
Fix %% escaping in interpolation.
2015-07-10 16:08:27 -07:00
Neil Fraser
345b0cb668
Remove selection in Block Factory when switching modes.
2015-06-29 17:06:36 -07:00
Neil Fraser
1be9437544
Support content editable (issue 113).
2015-06-22 15:45:18 -07:00
Neil Fraser
4fb40b95f6
Fix fractional-pixel connection drift.
2015-05-27 18:54:37 -07:00
Neil Fraser
6fdab711b2
Fix several RTL bugs.
2015-05-19 12:02:49 -07:00