Commit Graph

4558 Commits

Author SHA1 Message Date
Ben Henning
3ae422a566 feat: Add interfaces for focus management.
Introduces the necessary base interfaces for representing different
focusable contexts within Blockly. The actual logic for utilizing and
implementing these interfaces will come in later PRs.
2025-02-19 23:03:21 +00:00
Aaron Dodson
e6e57ddc01 fix: Fix bug that caused blocks dragged from non-primary flyouts to be misplaced. (#8753)
* fix: Fix bug that caused blocks dragged from non-primary flyouts to be misplaced.

* chore: Fix docstring.
2025-02-04 15:23:03 -08:00
Aaron Dodson
343c2f51f3 feat: Add support for toggling readonly mode. (#8750)
* feat: Add methods for toggling and inspecting the readonly state of a workspace.

* refactor: Use the new readonly setters/getters in place of checking the injection options.

* fix: Fix bug that allowed dragging blocks from a flyout onto a readonly workspace.

* feat: Toggle a `blocklyReadOnly` class when readonly status is changed.

* chore: Placate the linter.

* chore: Placate the compiler.
2025-01-30 13:47:36 -08:00
Aaron Dodson
c88ebf1ede fix: Don't add padding around zero-width fields. (#8738) 2025-01-16 15:23:55 -08:00
Aaron Dodson
bcdb65c623 release: Merge branch 'develop' into rc/v12.0.0 2025-01-10 10:53:09 -08:00
Aaron Dodson
0c20129a26 fix: Fix bug that preventing scrolling menu items into view. (#8726)
* fix: Fix bug that preventing scrolling menu items into view.

* chore: Deprecate now-unused-in-core functions in style.
2025-01-10 10:38:30 -08:00
Aaron Dodson
75efba92e3 fix: Fix bug that prevented keyboard navigation in flyouts. (#8687)
* fix: Fix bug that prevented keyboard navigation in flyouts.

* refactor: Add an `isFocusable()` method to FlyoutItem.
2025-01-09 14:31:51 -08:00
Aaron Dodson
80a6d85c26 refactor!: Use JSON instead of XML for defining dynamic toolbox categories. (#8658)
* refactor!: Use JSON instead of XML for defining dynamic toolbox categories.

* chore: Fix tests.

* chore: Remove unused import.

* chore: Update docstrings.

* chore: Revert removal of XML-based category functions.

* chore: Add deprecation notices.
2025-01-08 11:50:18 -08:00
Aaron Dodson
a42c2d1508 feat: Add a BlockSvg.getStyle() method. (#8722)
* feat: Add a BlockSvg.getStyle() method.

* refactor: Remove direct field access to BlockSvg.style.
2025-01-07 14:44:48 -08:00
Aaron Dodson
151d21e50e refactor: Convert renderer typecheck methods to typeguards. (#8656)
* refactor: Convert renderer typecheck methods to typeguards.

* chore: Revert unintended change.

* chore: Format types.ts.
2025-01-07 14:04:21 -08:00
Aaron Dodson
547ff18867 fix: Reposition the trashcan's flyout in response to workspace changes. (#8721) 2025-01-07 13:41:16 -08:00
Aaron Dodson
956f272da0 feat: Add a generator for all fields on a block. (#8667)
* feat: Add a generator for all fields on a block.

* chore: Add docstring.
2025-01-06 11:30:22 -08:00
Aaron Dodson
f31a9f957f fix: Disallow adding comments to mutator workspaces. (#8720) 2025-01-06 11:28:06 -08:00
Aaron Dodson
77c695a648 fix: Paste blocks copied from a mutator into the mutator. (#8719) 2025-01-06 11:19:23 -08:00
Aaron Dodson
503cd0073f refactor: Reenable workspace resizing after reflowing flyouts. (#8683) 2025-01-06 11:08:17 -08:00
Aaron Dodson
071814e9de feat: Warn if a variable category is loaded without variable blocks. (#8704) 2025-01-06 10:55:10 -08:00
Aaron Dodson
eeef2edf34 chore!: Fix warnings when generating docs. (#8660) 2025-01-06 10:53:45 -08:00
Aaron Dodson
54ebfb7a0e fix: Fix unsafe cast in Input.setVisible(). (#8695) 2025-01-06 10:52:02 -08:00
Aaron Dodson
aad5339c01 fix: Fix variable type change test. 2024-12-04 12:18:08 -08:00
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