diff --git a/CHANGELOG.md b/CHANGELOG.md index 30a70e2192a..efea02ab91f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ## [next] +- fix(_renderControls): fixed render order so group controls are rendered over child objects [#9914](https://github.com/fabricjs/fabric.js/pull/9914) - fix(filters): RemoveColor has missing getFragmentSource method ( typo ) [#9911](https://github.com/fabricjs/fabric.js/pull/9911) - types(): Make event type explicit - non generic, and fix pattern fromObject type [#9907](https://github.com/fabricjs/fabric.js/pull/9907) diff --git a/src/shapes/ActiveSelection.ts b/src/shapes/ActiveSelection.ts index d30668e4493..474d65f0cec 100644 --- a/src/shapes/ActiveSelection.ts +++ b/src/shapes/ActiveSelection.ts @@ -237,7 +237,6 @@ export class ActiveSelection extends Group { ) { ctx.save(); ctx.globalAlpha = this.isMoving ? this.borderOpacityWhenMoving : 1; - super._renderControls(ctx, styleOverride); const options = { hasControls: false, ...childrenOverride, @@ -246,6 +245,7 @@ export class ActiveSelection extends Group { for (let i = 0; i < this._objects.length; i++) { this._objects[i]._renderControls(ctx, options); } + super._renderControls(ctx, styleOverride); ctx.restore(); } }