Commit Graph

4539 Commits

Author SHA1 Message Date
Aaron Dodson
389dd1a1cb chore: Post-merge fixits. 2024-12-04 12:15:19 -08:00
Aaron Dodson
9fcd5a3037 release: Merge branch 'rc/v11.2.0' into rc/v12.0.0 2024-12-04 12:06:12 -08:00
Mateus S. Pereira
7219800183 fix: workspace shifts when deleting a block (#8666)
* fix: workspace shifts when deleting a block

* fix: awaiting for block rerender

* fix: create reusable method to prevent marking method as async
2024-12-04 09:25:01 -08:00
echoooooo
eb79f667e2 fix: typo in comment (#8685) 2024-12-04 08:54:34 -08:00
Aaron Dodson
6118ffe8fc chore: Remove obsolete workaround for resize events on iPads. (#8669) 2024-12-03 14:48:41 -08:00
Aaron Dodson
43ebf20500 chore: Remove CSS targeting multiline input field. (#8684) 2024-12-03 14:17:09 -08:00
Aaron Dodson
24ab50d49d fix: Fix bug that caused text to be selected when long-pressing in the workspace on a touch device. (#8670)
* fix: Fix bug that caused text to be selected when long-pressing in the workspace on a touch device.

* chore: Fix test failure.
2024-12-03 13:41:32 -08:00
Aaron Dodson
5870c66cf0 chore: Migrate ESLint configuration file to new flat format. (#8675)
* chore: rename .eslintrc.js to eslint.config.js

* chore: Rename eslint.config.js to eslint.config.mjs.

* refactor: Migrate ESLint config to new flat format.

* chore: Remove old per-directory and global ignore ESLint config files.

* fix: Allowlist JSDoc tag aliases.

* fix: Don't require @license in tests/*.

* fix: Add NodeJS globals to several files that run under Node.

* chore: Remove now-unneeded ESLint directives in core.

* chore: Remove invalid/unneeded ESLint directives.

* fix: Fix invalid use of `await` outside of an `async` function.

* fix: Improve screenshot error message.

* fix: Update ESLint config file to not warn on existing violations.

* chore: Remove suppressions of rules that weren't triggering.

* chore: Fix package-lock.json.
2024-12-03 12:40:48 -08:00
John Nesky
4230956244 fix: Create CSS vars for SVG patterns. (#8671) 2024-12-02 13:34:05 -08:00
Aaron Dodson
61bbd7dbf6 chore: Remove underscores from private fields. (#8682)
* chore: Remove underscores from private fields.

* refactor: Use public APIs in tests where possible.
2024-12-02 11:33:05 -08:00
Aaron Dodson
b73d6156a5 fix: Fix bug that caused comments to be incorrectly positioned. (#8668) 2024-11-21 11:28:27 -08:00
Aaron Dodson
af5905a3e6 refactor!: Add setSelectedItem() to IToolbox. (#8650) 2024-11-12 11:45:20 -08:00
Aaron Dodson
ae2a140141 refactor!: Use one map for toolbox contents. (#8654) 2024-11-12 09:52:23 -08:00
Aaron Dodson
9a7de53029 fix: Fix crash when resizing page while editing a field. (#8646)
* fix: Fix crash when resizing page while editing a field.

* refactor: Clean up positioning and exceptions.
2024-11-11 08:51:16 -08:00
Aaron Dodson
7bbbb959f0 feat!: Use CSS to specify field cursors. (#8648) 2024-11-11 07:54:17 -08:00
Aaron Dodson
f1cbaab6ef refactor: Move functions into FieldDropdown. (#8634)
* refactor: Move functions into FieldDropdown.

* refactor: Make dropdown field image metrics static.

* refactor: Use template literals in FieldDropdown validator.
2024-11-08 14:21:16 -08:00
Aaron Dodson
8f2228658e feat: Allow customizing GRID_UNIT for the Zelos renderer. (#8636) 2024-11-07 12:16:55 -08:00
Aaron Dodson
d804c1a3c4 refactor!: Improve ability to use CSS to style Blockly. (#8647)
* refactor!: Rename blocklyTreeIconClosed to blocklyToolboxCategoryIconClosed.

* refactor!: Rename blocklyTreeLabel to blocklyToolboxCategoryLabel

* refactor!: Rename blocklyToolboxDiv to blocklyToolbox.

* refactor: remove unreferenced CSS classes.

* refactor!: Remove the blocklyArrowTop and blocklyArrowBottom classes.

* feat: Add a blocklyTextInputField class to text fields.
2024-11-07 12:16:17 -08:00
Aaron Dodson
2523093cc9 refactor!: Remove the InsertionMarkerManager. (#8649)
* refactor!: Remove the InsertionMarkerManager.

* chore: Remove unused imports.

* chore: Remove import of insertion marker manager test.
2024-11-07 12:15:55 -08:00
Aaron Dodson
aedcfd6da5 fix: Use a readonly textarea for non-editable comments. (#8632)
* fix: Use a readonly textarea for non-editable comments.

* chore: Run formatter.

* chore: remove old function definition
2024-11-04 09:43:17 -08:00
Aaron Dodson
e4eb9751cb fix: improve typings and export additional types (#8631) 2024-10-31 11:31:53 -07:00
Richard Knoll
6a674002cc fix: clear touch identifier on comment icon down (#8627) 2024-10-28 13:05:31 -07:00
John Nesky
437f6a3d93 fix: bump initiator group in an orthogonal direction from neighboring group (#8613)
* fix: bump connected connections in a different direction

* Bump initiator block group in orthogonal direction.

* Revert the wording of a doc comment.

* Addressing PR feedback.
2024-10-25 11:37:55 -07:00
Aaron Dodson
089179bb01 fix: Fix exception when disposing of a workspace with a variable block obscuring a shadow block. (#8619) 2024-10-15 13:45:39 -07:00
Aaron Dodson
aeb1a80672 feat: Allow specifying the default size of comments. (#8618) 2024-10-14 08:20:34 -07:00
Aaron Dodson
edd02f6955 fix: Take the flyout into account when positioning the workspace after a toolbox change. (#8617)
* fix: Take the flyout into account when positioning the workspace after a toolbox change.

* fix: Accomodate top-positioned toolboxes.
2024-10-14 08:19:49 -07:00
Aaron Dodson
9fc693140a fix: Correctly calculate the bounds of hat blocks. (#8616) 2024-10-14 08:19:27 -07:00
Aaron Dodson
2dfd8c30ad feat: Allow specifying the placeholder text of workspace comments. (#8608) 2024-10-02 10:32:44 -07:00
Aaron Dodson
14c9b1abcb chore: remove obsolete comment. (#8606) 2024-10-02 09:52:16 -07:00
Aaron Dodson
e777086f16 refactor!: Update flyouts to use inflaters. (#8601)
* refactor: Update flyouts to use inflaters.

* fix: Specify an axis when creating flyout separators.

* chore: Remove unused import.

* chore: Fix tests.

* chore: Update documentation.

* chore: Improve code readability.

* refactor: Use null instead of undefined.
2024-10-02 09:20:45 -07:00
Aaron Dodson
e5c1a89cdf fix: Fix bug that caused fields in the flyout to use the main workspace's scale. (#8607)
* fix: Fix bug that caused fields in the flyout to use the main workspace's scale.

* chore: remove errant param in docs.
2024-10-02 08:18:47 -07:00
Aaron Dodson
a4b522781c fix: Fix bug that prevented dismissing the widgetdiv in a mutator workspace. (#8600)
* fix: Fix bug that prevented dismissing the widgetdiv in a mutator workspace.

* fix: Check if the correct workspace is null.

* fix: Remove errant this.
2024-10-02 08:18:21 -07:00
Christopher Allen
9cd58e325a refactor(shortcuts): Improve shortcut registry documentation & style (#8598)
* refactor(shortcuts): Improve shortcut registry documentation & style

  Make some minor refactorings of shortcut_registry.ts to improve
  readability and style, and add documentation for the
  KeyboardShortcut interface type.

* docs(shortcuts): Fix JSDoc typos etc. for PR #8598

* chore: Format
2024-10-02 12:30:19 +01:00
Aaron Dodson
ec5b6e7f71 feat: Add a BlockFlyoutInflater class. (#8591)
* feat: Add a BlockFlyoutInflater class.

* fix: Fix the capacity filter callback argument name.

* fix: Fix addBlockListeners comment.

* chore: Add license.

* chore: Add TSDoc.

* refactor: Make capacity filtering a normal method.

* fix: Bind flyout filter to `this`.
2024-09-27 14:12:59 -07:00
Aaron Dodson
bdc43bd0f7 feat: Add support for inflating flyout separators. (#8592)
* feat: Add support for inflating flyout separators.

* chore: Add license.

* chore: Add TSDoc.

* refactor: Allow specifying an axis for flyout separators.
2024-09-27 13:23:56 -07:00
Aaron Dodson
489aded31d feat: Add inflaters for flyout labels and buttons. (#8593)
* feat: Add inflaters for flyout labels and buttons.

* chore: Temporarily re-add createDom().

* chore: fix JSDoc.

* chore: Add license.

* chore: Add TSDoc.
2024-09-27 13:22:36 -07:00
Aaron Dodson
6ec1bc5ba5 feat: Add the IFlyoutInflater interface. (#8581)
* feat: Add the IFlyoutInflater interface.

* fix: Add a return type for IFlyoutInflater.disposeElement().

* refactor: Add the gapForElement method.
2024-09-25 10:23:25 -07:00
John Nesky
8d44a4d93a fix: Group field validator changes with field value changes. (#8589) 2024-09-24 16:09:41 -07:00
Aaron Dodson
c79610cea6 refactor: remove redundant flyout positioning. (#8573)
* refactor: remove redundant flyout positioning.

* fix: handle the case where there is a flyout without a toolbox
2024-09-18 11:58:39 -07:00
Aaron Dodson
476d454c05 fix: include potential variables in variable dropdowns in the flyout (#8574) 2024-09-16 09:14:56 -07:00
John Nesky
561b4189fb fix: Factor out workspace drag methods into utils. (#8566) 2024-09-13 12:53:37 -07:00
Aaron Dodson
732bd7f616 fix: size text with computed styles even when hidden (#8572)
* fix: size text with computed styles even when hidden

* refactor: remove unneeded try/catch.
2024-09-13 09:58:57 -07:00
Aaron Dodson
def80b3f31 fix: improve flyout performance (#8571)
* fix: improve flyout performance

* refactor: don't call position() in show()

The later call to reflow() itself winds up calling position(), so this calculation is redundant.
2024-09-11 12:37:32 -07:00
Ben Henning
05795a06ea Rename 'tidyUp' back to 'cleanUp'. 2024-09-03 23:13:50 +00:00
Ben Henning
fbafda3e4c Merge branch 'develop' into ensure-immovable-blocks-are-considered-during-workspace-tidying 2024-09-03 23:02:37 +00:00
Aaron Dodson
cb1c055bff refactor: use getters for flyout width and height. (#8564) 2024-09-03 13:25:18 -07:00
Rachel Fenichel
0a6596ce75 feat: mark some marker_svg properties protected instead of private (#8558) 2024-09-03 09:17:42 -07:00
Chang Min Bark
4d0fd5db79 fix(comments): added workspace comments and comment drag strategy isDeadOrDying() checks (#8532)
* fix: added id to rendered ws comments; made getCommentById public; added blocklyDraggable class to ws comments

* fix: added workspace comments and comment drag strategy isDeadOrDying checks

* chore: removed .idea files

* chore: formatted with prettier
2024-09-03 17:12:40 +01:00
Christopher Allen
724828f689 refactor: Use arrow functions when calling Array.prototype.filter (#8557) 2024-08-30 17:23:23 +01:00
Christopher Allen
a7afda8343 fix(events): Simplify filter function, add new enqueueEvent function (#8539)
* docs(events): JSDoc improvments

* fix(filter): Introduce enqueueEvent; don't reorder in filter

  Remove the broken BlockChange event reordering code from filter.
  Instead, do necessary event reordering (correctly, this time)
  in a new enqueueEvent function used by fireInternal.

* chore(events): Deprecate forward parameter of filter

  Since we don't filter in undo any more, and filtering in reverse
  order causes problems, prepare to remove this opportunity for
  error.

* fix(events): Only merge adjacent events

  Simplify filter by having it consider only adjacent events in the
  queue for merging.

  Previously any events in the queue could potentially be merged if
  they were of suitable (typically identical) .type, even if other
  events had occurred between them (with the sole exception of
  BlockMove events, which would only be merged with adjacent
  events).  This could potentially result in replay failures during
  undo/redo/mirroring, though it is unknown whether any such
  problems occurred in practice.

* refactor(events): Tweaks

  - Use for…of loop where appropriate.
  - Make filter reason-merging code more concise.
  - Use arrow functions when calling Array.prototype.filter.

* chore(events): Fix typos for PR #8539.
2024-08-29 17:41:54 +01:00