diff --git a/apps/desktop/src/components/layout/ContentArea.vue b/apps/desktop/src/components/layout/ContentArea.vue
index 01b88b4b11..f4ef53520b 100644
--- a/apps/desktop/src/components/layout/ContentArea.vue
+++ b/apps/desktop/src/components/layout/ContentArea.vue
@@ -2,7 +2,7 @@
import { computed, ref, defineAsyncComponent, watch, nextTick, onMounted, onUnmounted } from "vue";
import { safeLocalStorageGet, safeLocalStorageSet } from "@/lib/backend/safeStorage";
import { appendDebugLog, isDebugLoggingEnabled } from "@/lib/backend/debugLog";
-import { canReloadUnavailableDataTab } from "@/lib/table/tableDataRefresh";
+import { canReloadUnavailableDataTab, restoredDataTabReloadFilters } from "@/lib/table/tableDataRefresh";
import { defaultViewForResult } from "@/lib/query/queryResultDefaultView";
import { isQueryExecutionErrorResult } from "@/lib/query/queryResultError";
import { batchSqlRecoveryState, type BatchSqlRecoveryAction } from "@/lib/query/batchSqlRecovery";
@@ -916,6 +916,11 @@ function refreshQueryEditorCompletionCache(): boolean {
return true;
}
+function reloadUnavailableDataTab() {
+ const { whereInput, orderBy } = restoredDataTabReloadFilters(props.activeTab);
+ emit("reload", undefined, undefined, whereInput, orderBy);
+}
+
function refreshData(): boolean {
// Reuse ObjectBrowser's reload path so schema reloads and stale object-response guards stay intact.
if (props.activeTab.mode === "objects") return objectBrowserRef.value?.refresh?.() ?? false;
@@ -927,7 +932,7 @@ function refreshData(): boolean {
if (props.activeTab.mode === "databases") return databaseBrowserRef.value?.refresh?.() ?? false;
// Restored data tabs intentionally omit row data, so refresh must work before DataGrid mounts.
if (canReloadUnavailableDataTab(props.activeTab)) {
- emit("reload");
+ reloadUnavailableDataTab();
return true;
}
if (activeElasticsearchJsonResponse.value) {
@@ -2220,7 +2225,7 @@ defineExpose({
{{ key }}
{{ t("grid.dataUnavailableHintSuffix") }}
-