diff --git a/ide/src/trace/SpApplication.ts b/ide/src/trace/SpApplication.ts index e37aac6a56102727564303ff12e6c66c88cfbb64..b76f0df683ca25829c1bdb3a15006ee0ece0b194 100644 --- a/ide/src/trace/SpApplication.ts +++ b/ide/src/trace/SpApplication.ts @@ -1937,7 +1937,7 @@ export class SpApplication extends BaseElement { } else { this.progressEL!.loading = false; } - if (this.litSearch!.index > 0) { + if (this.litSearch!.list.length > 0) { let currentEntry = this.litSearch!.list[this.litSearch!.index]; cancelCurrentTraceRowHighlight(this.spSystemTrace!, currentEntry); } diff --git a/ide/src/trace/component/SpSystemTrace.event.ts b/ide/src/trace/component/SpSystemTrace.event.ts index e633f754b21990abb465489f026181b1eb7d67f2..355c6a0bbebaeadeda6c0bd8cd02059e279cc306 100644 --- a/ide/src/trace/component/SpSystemTrace.event.ts +++ b/ide/src/trace/component/SpSystemTrace.event.ts @@ -518,12 +518,14 @@ export function spSystemTraceDocumentOnMouseMove(sp: SpSystemTrace, ev: MouseEve handleActions(sp, rows, ev); } -function spSystemTraceDocumentOnMouseMoveMouseDown(sp: SpSystemTrace, search: LitSearch): void { +export function spSystemTraceDocumentOnMouseMoveMouseDown(sp: SpSystemTrace, search: LitSearch): void { sp.refreshCanvas(true, 'sp move down'); if (TraceRow.rangeSelectObject) { if (search && search.searchValue !== '') { search.clear(); - search.valueChangeHandler?.(''); + sp?.visibleRows.forEach((it) => { + it.highlight = false; + }); } } } diff --git a/ide/src/trace/component/SpSystemTrace.init.ts b/ide/src/trace/component/SpSystemTrace.init.ts index 6a73dbc21acfed425426551e3cb6331d91e56a71..39805c3a0ef3af6801410b4841a4f8747863c8c0 100644 --- a/ide/src/trace/component/SpSystemTrace.init.ts +++ b/ide/src/trace/component/SpSystemTrace.init.ts @@ -579,6 +579,7 @@ function selectHandlerRows(sp: SpSystemTrace, rows: Array>): v } sp.timerShaftEL!.selectionList.push(selection); // 保持选中对象,为后面的再次选中该框选区域做准备。 sp.selectionParam = selection; + sp.refreshCanvas(true); } function resizeObserverHandler(sp: SpSystemTrace): void { // @ts-ignore diff --git a/ide/src/trace/component/SpSystemTrace.ts b/ide/src/trace/component/SpSystemTrace.ts index 74c893600bd83d8aae2dfab66f21c91cf61dec06..ccbaf82b6769da35b1d154adbbd13f167a8d4daf 100644 --- a/ide/src/trace/component/SpSystemTrace.ts +++ b/ide/src/trace/component/SpSystemTrace.ts @@ -125,6 +125,7 @@ import spSystemTraceOnClickHandler, { spSystemTraceDocumentOnMouseMove, spSystemTraceDocumentOnMouseOut, spSystemTraceDocumentOnMouseUp, + spSystemTraceDocumentOnMouseMoveMouseDown, } from './SpSystemTrace.event'; import { SampleStruct } from '../database/ui-worker/ProcedureWorkerBpftrace'; import { readTraceFileBuffer } from '../SpApplicationPublicFunc'; @@ -132,6 +133,7 @@ import { PerfToolStruct } from '../database/ui-worker/ProcedureWorkerPerfTool'; import { BaseStruct } from '../bean/BaseStruct'; import { GpuCounterStruct } from '../database/ui-worker/ProcedureWorkerGpuCounter'; import { SpProcessChart } from './chart/SpProcessChart'; +import { LitSearch } from './trace/search/Search'; function dpr(): number { return window.devicePixelRatio || 1; @@ -1164,6 +1166,10 @@ export class SpSystemTrace extends BaseElement { } } this.rangeTraceRow = rows; + let search = document.querySelector('body > sp-application')!.shadowRoot!.querySelector('#lit-search'); + if(search?.isClearValue) { + spSystemTraceDocumentOnMouseMoveMouseDown(this, search!); + } this.rangeSelect.selectHandler?.(this.rangeSelect.rangeTraceRow, false); }; inFavoriteArea: boolean | undefined;