Skip to content

Commit e763d99

Browse files
committed
UX优化 点击文件夹时 展开图标变更为高对比色 并能够直接点击文件夹展开或收起子文件列表
1 parent 0129f65 commit e763d99

3 files changed

Lines changed: 18 additions & 24 deletions

File tree

-61 Bytes
Binary file not shown.

iframe/script/User_config/FileTree_UI.js

Lines changed: 17 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -151,40 +151,33 @@ class FileTreeUI {
151151
attachEvents() {
152152
// 文件夹展开/收起
153153
this.container.querySelectorAll('.file-tree-folder').forEach((folder) => {
154-
// 点击箭头切换展开状态
155-
const toggle = folder.querySelector('.folder-toggle');
156-
if (toggle) {
157-
toggle.addEventListener('click', (e) => {
158-
e.stopPropagation();
154+
// 点击文件夹:选中并切换展开/折叠状态
155+
folder.addEventListener('click', (e) => {
159156
const path = folder.dataset.path;
157+
// 选中文件夹
158+
this.handleItemClick(e, path, 'folder');
159+
// 同时切换展开/折叠状态
160160
if (this.expandedFolders.has(path)) {
161161
this.expandedFolders.delete(path);
162162
} else {
163163
this.expandedFolders.add(path);
164164
}
165165
this.render();
166166
});
167-
}
168-
169-
// 点击文件夹名称进行选择
170-
folder.addEventListener('click', (e) => {
171-
if (e.target.classList.contains('folder-toggle')) return;
172-
this.handleItemClick(e, folder.dataset.path, 'folder');
173-
});
174167

175-
// 文件夹右键菜单
176-
folder.addEventListener('contextmenu', (e) => {
177-
e.preventDefault();
178-
const path = folder.dataset.path;
179-
// 如果右键的项目未被选中,则只选中它
180-
if (!this.selectedItems.has(path)) {
181-
this.selectedItems.clear();
182-
this.selectedItems.add(path);
183-
this.render();
184-
}
185-
this.showContextMenu(e, path, 'folder');
168+
// 文件夹右键菜单
169+
folder.addEventListener('contextmenu', (e) => {
170+
e.preventDefault();
171+
const path = folder.dataset.path;
172+
// 如果右键的项目未被选中,则只选中它
173+
if (!this.selectedItems.has(path)) {
174+
this.selectedItems.clear();
175+
this.selectedItems.add(path);
176+
this.render();
177+
}
178+
this.showContextMenu(e, path, 'folder');
179+
});
186180
});
187-
});
188181

189182
// 文件项点击
190183
this.container.querySelectorAll('.file-tree-item').forEach((item) => {

iframe/style/file-tree.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
.file-tree-folder:hover { background: var(--eext-hover-bg); }
2727

2828
.folder-toggle { font-size: 10px; margin-right: 4px; color: var(--eext-text-secondary); width: 12px; display: inline-block; }
29+
.file-tree-folder.selected .folder-toggle { color: var(--eext-text-primary); font-weight: bold; }
2930
.folder-icon { font-size: 14px; margin-right: 4px; }
3031
.folder-name { flex: 1; font-size: var(--eext-font-size); color: var(--eext-text-primary); font-weight: 500; }
3132

0 commit comments

Comments
 (0)