From f18030df7285b1a37c7c8148591117cb8d35b203 Mon Sep 17 00:00:00 2001 From: t8y2 <1156263951@qq.com> Date: Sun, 26 Jul 2026 13:47:46 +0800 Subject: [PATCH] fix(grid): preserve native clipboard in table info --- apps/desktop/src/components/grid/DataGrid.vue | 9 ++++++++- .../grid/__tests__/DataGridClipboardRegion.spec.ts | 14 ++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 apps/desktop/src/components/grid/__tests__/DataGridClipboardRegion.spec.ts diff --git a/apps/desktop/src/components/grid/DataGrid.vue b/apps/desktop/src/components/grid/DataGrid.vue index 301832e9a1..34c79677a2 100644 --- a/apps/desktop/src/components/grid/DataGrid.vue +++ b/apps/desktop/src/components/grid/DataGrid.vue @@ -8715,7 +8715,14 @@ const gridContextMenuItems = computed(() => { -
+
diff --git a/apps/desktop/src/components/grid/__tests__/DataGridClipboardRegion.spec.ts b/apps/desktop/src/components/grid/__tests__/DataGridClipboardRegion.spec.ts new file mode 100644 index 0000000000..ffb9acdbf3 --- /dev/null +++ b/apps/desktop/src/components/grid/__tests__/DataGridClipboardRegion.spec.ts @@ -0,0 +1,14 @@ +import { readFileSync } from "node:fs"; +import { describe, expect, it } from "vitest"; + +const dataGridSource = readFileSync(new URL("../DataGrid.vue", import.meta.url), "utf8"); + +describe("DataGrid native clipboard regions", () => { + it("keeps table info text selection out of grid copy shortcuts", () => { + const drawerStart = dataGridSource.indexOf('
", drawerStart); + + expect(drawerStart).toBeGreaterThanOrEqual(0); + expect(dataGridSource.slice(drawerStart, drawerTagEnd)).toContain("data-native-clipboard"); + }); +});