Skip to content

Commit 4901bee

Browse files
committed
perf(timeline): don't create unnecessary pixi objects
1 parent 119410d commit 4901bee

File tree

1 file changed

+13
-7
lines changed

1 file changed

+13
-7
lines changed

packages/app-frontend/src/features/timeline/TimelineView.vue

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -418,9 +418,13 @@ export default defineComponent({
418418
419419
function addEvent (event: TimelineEvent, layerContainer: PIXI.Container) {
420420
// Container
421-
const eventContainer = new PIXI.Container()
422-
event.container = eventContainer
423-
layerContainer.addChild(eventContainer)
421+
let eventContainer: PIXI.Container
422+
423+
if (!event.layer.groupsOnly || (event.group?.firstEvent === event)) {
424+
eventContainer = new PIXI.Container()
425+
event.container = eventContainer
426+
layerContainer.addChild(eventContainer)
427+
}
424428
425429
// Group graphics
426430
if (event.group) {
@@ -437,9 +441,11 @@ export default defineComponent({
437441
}
438442
439443
// Graphics
440-
const g = new PIXI.Graphics()
441-
event.g = g
442-
eventContainer.addChild(g)
444+
if (eventContainer) {
445+
const g = new PIXI.Graphics()
446+
event.g = g
447+
eventContainer.addChild(g)
448+
}
443449
444450
events.push(event)
445451
@@ -579,7 +585,7 @@ export default defineComponent({
579585
})
580586
581587
function drawEvent (selected: boolean, event: TimelineEvent) {
582-
if (event) {
588+
if (event?.container) {
583589
let color = event.layer.color
584590
if (event.logType === 'error') {
585591
color = 0xE53E3E

0 commit comments

Comments
 (0)