From 9889ce5a44f6404496c4c0b2a45086b40857fe85 Mon Sep 17 00:00:00 2001 From: zipg Date: Sat, 25 Jul 2026 13:14:23 +0800 Subject: [PATCH] fix(desktop): improve legacy WebKit compatibility and database icons --- apps/desktop/index.html | 1 + .../public/connection-dialog-legacy.css | 67 ++++ .../public/icons/database/cloudberry.svg | 39 +++ .../public/icons/database/databricks.svg | 5 + apps/desktop/public/icons/database/exasol.svg | 7 + .../public/icons/database/firebird.svg | 17 + apps/desktop/public/icons/database/gbase.png | Bin 0 -> 8227 bytes .../public/icons/database/goldendb.png | Bin 837 -> 2790 bytes apps/desktop/public/icons/database/iris.svg | 8 + apps/desktop/public/icons/database/rqlite.png | Bin 5029 -> 3115 bytes .../desktop/public/icons/database/saphana.svg | 16 + apps/desktop/public/icons/database/tdsql.svg | 15 + .../public/icons/database/teradata.svg | 5 + .../public/icons/database/vastbase.svg | 73 +++++ .../public/icons/database/weaviate.svg | 298 ++++++++++++++++++ .../connection/ConnectionDialog.vue | 42 ++- .../src/components/icons/DatabaseIcon.vue | 26 +- .../components/ui/dialog/DialogOverlay.vue | 10 +- .../__tests__/legacyWebviewFallback.spec.ts | 10 + 19 files changed, 610 insertions(+), 29 deletions(-) create mode 100644 apps/desktop/public/connection-dialog-legacy.css create mode 100644 apps/desktop/public/icons/database/cloudberry.svg create mode 100644 apps/desktop/public/icons/database/databricks.svg create mode 100644 apps/desktop/public/icons/database/exasol.svg create mode 100644 apps/desktop/public/icons/database/firebird.svg create mode 100644 apps/desktop/public/icons/database/gbase.png create mode 100644 apps/desktop/public/icons/database/iris.svg create mode 100644 apps/desktop/public/icons/database/saphana.svg create mode 100644 apps/desktop/public/icons/database/tdsql.svg create mode 100644 apps/desktop/public/icons/database/teradata.svg create mode 100644 apps/desktop/public/icons/database/vastbase.svg create mode 100644 apps/desktop/public/icons/database/weaviate.svg diff --git a/apps/desktop/index.html b/apps/desktop/index.html index a95c9e444e..b8890ef54a 100644 --- a/apps/desktop/index.html +++ b/apps/desktop/index.html @@ -3,6 +3,7 @@ + DBX + + Tencent Cloud + + + + + + + + diff --git a/apps/desktop/public/icons/database/teradata.svg b/apps/desktop/public/icons/database/teradata.svg new file mode 100644 index 0000000000..3673deb0ac --- /dev/null +++ b/apps/desktop/public/icons/database/teradata.svg @@ -0,0 +1,5 @@ + + + Teradata + + diff --git a/apps/desktop/public/icons/database/vastbase.svg b/apps/desktop/public/icons/database/vastbase.svg new file mode 100644 index 0000000000..db2aa1a184 --- /dev/null +++ b/apps/desktop/public/icons/database/vastbase.svg @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/desktop/public/icons/database/weaviate.svg b/apps/desktop/public/icons/database/weaviate.svg new file mode 100644 index 0000000000..83d14db32c --- /dev/null +++ b/apps/desktop/public/icons/database/weaviate.svg @@ -0,0 +1,298 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/desktop/src/components/connection/ConnectionDialog.vue b/apps/desktop/src/components/connection/ConnectionDialog.vue index 136b3fce6f..f0c59bd12f 100644 --- a/apps/desktop/src/components/connection/ConnectionDialog.vue +++ b/apps/desktop/src/components/connection/ConnectionDialog.vue @@ -2685,8 +2685,8 @@ const canCloseAgentInstallDialog = computed(() => !agentInstallRunning.value || const sqlServerDriverMode = computed<"auto" | "legacy">(() => (sqlServerUsesLegacyCompatibility(form.value) ? "legacy" : "auto")); const shouldUseWideConnectionDialog = computed(() => dialogStep.value === "config" && (canChooseVisibleDatabases.value || (canChooseVisibleSchemas.value && !visibleFilterUsesSchemas.value))); const connectionDialogContentClass = computed(() => { - if (dialogStep.value === "select") return "sm:h-[720px] sm:max-w-[880px]"; - return shouldUseWideConnectionDialog.value ? "sm:max-w-[660px]" : "sm:max-w-[560px]"; + if (dialogStep.value === "select") return "connection-dialog-content--picker sm:h-[720px] sm:max-w-[880px]"; + return shouldUseWideConnectionDialog.value ? "connection-dialog-content--wide sm:max-w-[660px]" : "connection-dialog-content--standard sm:max-w-[560px]"; }); const connectionLabelClass = "justify-self-start text-left"; const connectionLabelSmallClass = `${connectionLabelClass} text-xs`; @@ -4525,7 +4525,7 @@ function openExternalUrl(url: string) {