mirror of
https://github.com/google/blockly.git
synced 2026-01-09 01:50:11 +01:00
* Implement Blockly.Events.filter in linear time For large App Inventor projects (order 1k+ blocks, 100+ top-level blocks), the O(n^2) behavior of Blockly.Event.filter was causing performance issues when rearranging blocks or pasting from the backpack. This commit provides a linear merge implementation using a key that uniquely identifies a block so that multiple events targeting the same block are merged. This change benefits from O(1) amortized lookup using an object as a key-value store. * Add event filter unit tests and fix logic bugs * Update Blockly.Events.filter unit tests