Commit Graph
111 Commits
Author SHA1 Message Date
二丫讲梵 8841a41261 fix(desktop): align table copy and paste menus 2026-07-29 14:42:33 +08:00
amwps290 820b8cd26f feat(metadata): honor system schema visibility 2026-07-29 03:23:04 +08:00
二丫讲梵 ed9dd1072e feat(desktop): show batch drop progress 2026-07-29 00:33:48 +08:00
zipg 8bd92e4f2c fix(objects): avoid repeated object list reloads 2026-07-28 21:09:06 +08:00
Freedom 1cdbf4fa3d fix(desktop): unify UI colors onto theme tokens 2026-07-28 11:24:10 +08:00
zipg 1d671ca698 fix(postgres): include owner and grants in displayed DDL 2026-07-27 21:45:35 +08:00
zipg 0b4b1f956f fix(dameng): preserve cloned column comments 2026-07-27 14:53:13 +08:00
zhangsan 406b7acdbb feat(sidebar): persist custom pinned item ordering 2026-07-26 10:30:09 +08:00
zipg 6ddfa8bd24 fix(postgres): improve view column save guidance 2026-07-24 15:51:27 +08:00
zipg 6b2f55e4de fix(postgresql): show trigger source details 2026-07-23 21:16:43 +08:00
zipg 127328a4ed fix(ui): support legacy WebView dialog viewports 2026-07-22 15:26:23 +08:00
amwps290 52499f4c9f feat(postgres): add extension management 2026-07-22 15:08:51 +08:00
gggaiitx cdfcbad4e9 feat(objects): highlight active browser object 2026-07-21 17:25:48 +08:00
amwps290 727290fa32 fix(postgres): preserve overloaded routine signatures 2026-07-21 16:58:12 +08:00
二丫讲梵 2dad288907 fix(objects): align filter counts with search 2026-07-20 15:36:34 +08:00
二丫讲梵 85836f8e95 feat(sqlite): support attached database schema changes 2026-07-20 10:51:16 +08:00
t8y2 1e0c25d754 fix(objects): refresh object browser from shortcut 2026-07-17 22:54:33 +08:00
zipg f184bc3055 fix(objects): prevent idle object browser refresh 2026-07-17 21:15:08 +08:00
Elias 08cd8903f4 feat(xugu): expose programmable object metadata 2026-07-17 17:53:44 +08:00
LRcoding 17747f8a2d feat(objects): search table fields by comment 2026-07-17 00:11:16 +08:00
LRcoding 63ea5f1fd8 feat(table-info): show column default values 2026-07-17 00:10:46 +08:00
jischeng a9e76dc130 fix(doris): preserve catalog in metadata views 2026-07-16 18:20:12 +08:00
gggaiitx 1b3f182202 统一表属性面板中编辑表结构图标为 PencilRuler (#3574) 2026-07-15 18:02:06 +08:00
Freedom 58466e049e fix(objects): keep grid tile cards equal height 2026-07-14 19:03:35 +08:00
jischeng a9ca66a829 fix(doris): qualify external catalog tables 2026-07-13 23:56:53 +08:00
zipg d1cce3ed1e fix(kingbase): quote MySQL-compatible identifiers 2026-07-13 18:51:32 +08:00
zipg cc9b802b49 fix(editor): handle Oracle line comments in DDL viewer 2026-07-13 16:14:56 +08:00
t8y2 a3f3cadb39 fix(postgres): distinguish overloaded routines 2026-07-13 00:26:04 +08:00
wuxiemian 130477c48c fix(safety): guard object browser batch empty 2026-07-12 21:30:37 +08:00
gggaiitx 3c4c16dc06 fix: 修复双击模式下单击对象失效,右键查看DDL、源码等复用右侧面板 2026-07-12 10:07:13 +08:00
wuxiemian 1be66fb115 feat(safety): add production environment safeguards 2026-07-12 10:02:27 +08:00
zipgandtangheng 8ff0f13bd4 fix: 兼容intel Mac旧版系统webview中样式问题
Co-authored-by: tangheng <tangheng@tanghengdeMacBook-Pro.local>
2026-07-11 21:53:29 +08:00
t8y2 361f7774e9 fix(objects): preserve database object source formatting 2026-07-11 21:38:24 +08:00
zipg 3747f08baa fix(table): refresh data tabs after clearing tables 2026-07-11 17:48:51 +08:00
zipg 085d7661af fix(objects): add safe object browser batch empty action 2026-07-11 17:48:45 +08:00
t8y2 a1b8174951 fix(doris): preserve external catalog in object browser 2026-07-11 13:34:18 +08:00
gggaiitx 5bcd24df1c feat(objects): open database objects in side panel 2026-07-11 12:48:57 +08:00
onlyc0302 903ab26c9b fix(postgres): allow extension dialog scrolling on desktop (#3107)
* fix(postgres): allow extension dialog scrolling

* feat(postgres): 优化安装插件弹窗高度响应式样式
对于issus#2989-pr#3033的补充修改。
2026-07-10 13:27:10 +08:00
t8y2 0431fbea49 fix(ui): preserve tab scroll positions 2026-07-10 00:35:33 +08:00
onlyc0302 5dfefbc0f5 fix(postgres): allow extension dialog scrolling 2026-07-09 18:19:40 +08:00
Abeautifulsnowanddbx-i18n-bot 2c2d9d7fef feat(objects): add checkbox multi-select and grid view for object browser
* feat(objects): add checkbox column toggle for object browser

- Add objectBrowserShowCheckbox setting (default: false) to EditorSettings
- Checkbox column hidden by default; auto-shows when any tables are selected
- Toolbar button toggles multi-select mode (active state highlighted in primary color)
- Clearing the toggle also clears all selections
- Add i18n key objects.toggleCheckbox in en/zh-CN

Closes #2748 (part 2)

* feat(objects): add grid view mode for object browser

- Add objectBrowserViewMode setting (list | grid, default: list) to EditorSettings
- Toolbar segmented control toggles between list and grid views, persisted across sessions
- Grid view renders cards (icon + name + type + row count) in a responsive auto-fill layout
- Reuses existing sort, search, filter, multi-select and context menu
- Partition children not expandable in grid mode (minimal version)
- Add i18n keys objects.viewList/objects.viewGrid across all locales
- Backfill objects.toggleCheckbox in es/it/ja/pt-BR/zh-TW (missed in prior commit)

Refs #2748

* fix(objects): redesign grid view cards for visual polish

- Center-align content (icon + name + metadata) for a proper tile look
- Enlarge type icons (h-7) so color coding is visible at a glance
- Merge type label and row count on one line with separator
- Reduce internal spacing (gap-1.5) and tighten padding
- Replace background hover with border glow + shadow for cleaner feedback
- Narrow min card width (150px) for denser grid, add align-content:start
- Softer rounded-lg corners

Refs #2748

* fix(objects): polish grid view card visual details

- Add colored circle background behind icons (type-matched opacity-10)
- Increase name font from text-xs to text-sm for better legibility
- Separate row count into a primary-tinted badge (only shown when > 0)
- Keep type label clean without mixing row count inline

Refs #2748

* fix(objects): refine grid card min-width, icon shadow, and type label size

* @
feat(object-browser): align tile/grid card metadata with list view columns

Add the metadata categories present in the list view but missing from
the tile/grid card view (objectBrowserViewMode === "grid"):
- Size pill (totalBytes) next to the existing rows pill in the stats row
- Timestamps row showing created_at · updated_at (per-row conditional)
- Comment row (truncated, per-row conditional, with hover tooltip)

Each card now shows: icon, name, type label, rows pill, size pill,
timestamps (when present), and comment (when present) — matching the
same metadata categories the list view displays across its 8 columns.

Also fix a pre-existing bug in the list view where the totalBytes
column tooltip (:title) used formatObjectBrowserCount instead of
formatObjectBrowserBytes, showing a count-formatted number instead
of a byte-formatted size string.
@

* @
feat(object-browser): add sort selector in toolbar for grid/list views

The list view has column header click-to-sort but the grid/tile view
had no way to change sort order. Add a compact sort selector in the
toolbar that works identically in both views:

- Native <select> dropdown with all 7 sort keys (name, type, rows,
  size, created, updated, comment) using existing column i18n labels
- ArrowUp/ArrowDown direction toggle button with localized tooltip
- Positioned between schema selector and view toggle in the toolbar
- Shares the existing sortKey/sortDirection/toggleSort logic — list
  view column headers continue to work as before
- Accessible: aria-label on select, title on direction button

i18n: added sortAsc/sortDesc/sortBy to en.ts and zh-CN.ts
@

* @
fix(object-browser): make sort key options reactive to available data

sortKeyOptions was a static array that always included created_at and
updated_at even when no row had data for those fields. Sorting by an
empty field is a no-op that silently confuses users.

Convert to a computed that mirrors the list view column visibility logic
(hasCreatedAt / hasUpdatedAt): the two time-based sort options only
appear when at least one loaded row has that field populated.

Follows design decision: sort selector remains visible in both list and
grid views (plan B), acting as a shared sort state indicator.
@

* @
fix(object-browser): reset sortKey when selected option disappears from options

When sortKeyOptions loses created_at or updated_at (e.g. after a schema
switch clears all rows), sortKey could remain set to a key no longer in
the dropdown, causing the <select> to show a blank selection.

Add a watch on sortKeyOptions that resets sortKey to "name" and
sortDirection to "asc" whenever the current key is no longer present.
@

* chore(i18n): autofill new translations

* perf(object-browser): virtualize tile/grid view with RecycleScroller

Replaces the flat v-for over filteredRows with a row-chunked
RecycleScroller, matching the list view. Previously, switching to tile
mode on a schema with thousands of tables mounted every card and its
CustomContextMenu at once, stalling the UI for several seconds.

Changes:
- gridRows computed: chunks filteredRows into rows of gridColumns cards
- ResizeObserver on the grid container drives gridColumns; initial read
  uses getComputedStyle to match contentRect.width and avoid a 1-frame
  column jump on mount
- objectGridRowHeight computed: item-size adapts to whether the dataset
  has timestamp/comment rows, minimising wasted row space
- watch(gridContainerRef) re-attaches the observer across list<->grid
  toggles; onBeforeUnmount cleans up
- scrollObjectsToTop() resets scroll position on sort, search,
  object-type filter and view-mode changes
- CSS: new .object-browser-grid-wrapper / -scroller / -row classes with
  will-change / contain parity with the list scroller

---------

Co-authored-by: dbx-i18n-bot <github-actions[bot]@users.noreply.github.com>
2026-07-09 11:59:25 +08:00
一颗红心 c60b23ffe7 fix: swap upload and download icons in various components for consistency 2026-07-07 14:17:33 +08:00
t8y2 1db11ea145 feat(postgres): support batch table cascade actions 2026-07-07 11:57:44 +08:00
zipg 668919a7c9 fix(gbase8s): make view source saves safer 2026-07-07 01:50:53 +08:00
zipgandzipg 26647ff755 fix(ddl-viewer): fix selection style visibility
Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-07-06 17:10:50 +08:00
t8y2 745f7f60b0 feat(postgres): add cascade table drop option 2026-07-06 15:45:47 +08:00
zergmk2 f800d80f90 feat: add SSH config aliases and PostgreSQL extensions 2026-07-05 20:29:49 +08:00
zipgandstaff 5c35755219 Feature:新增多套应用配色主题 (#2559)
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-07-05 00:34:47 +08:00
t8y2 223ecbec20 fix(oracle): skip rowid for view data queries 2026-07-04 17:07:43 +08:00
t8y2 7e7c4944e9 refactor(desktop): organize lib modules by domain 2026-07-04 13:53:52 +08:00