[BUGFIX] Avoid re-paints and re-layouts in page tree on drag&drop
When using drag&drop in the page tree, many style changes happen: * a shadow node is rendered that is moved around * the content within the shadow node changes depending on whether dropping is allowed * CSS classes are changed The previous implementation was not optimal in several ways: * the nodes wrapper (aka the "tree") was updated twice which each `dragover` event, being expensive on huge trees * adding and removing CSS classes may have become redundant in some cases, triggering a re-paint every time All these cases are handled in this patch by executing tasks only when absolutely necessary. Resolves: #99786 Releases: main, 11.5 Change-Id: Ibc8cbce2785e2de646e254590b4eddbdc42839c1 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/77669 Reviewed-by:Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
parent
a7bc75b4
Please register or sign in to comment