@jaychang1989/dsh-webchat 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.en.md CHANGED
@@ -42,7 +42,7 @@ dsh plugin --profile desktop add github:jaychang1989/dsh-webchat
42
42
  1. Click the "DeepSeek 网页 / DeepSeek Web" entry — the page loads in the center column; there is no second click.
43
43
  2. Sign in to DeepSeek once; that holds for the rest of the run.
44
44
 
45
- Click again to collapse the panel. The guest stays mounted while the panel is closed, so reopening neither reloads the page nor drops the session. Clicking a session or workspace row in the sidebar hands the center column back to the conversation.
45
+ Click again to collapse the panel. The guest stays mounted while the panel is closed, so reopening neither reloads the page nor drops the session. Clicking **any other sidebar row** — Plugins, Automation Tasks, the task board, a session, a workspace — hands the center column back, because those pages are rendered there by the shell and this plugin does not hold their seat.
46
46
 
47
47
  ## Requirements
48
48
 
package/README.md CHANGED
@@ -42,7 +42,7 @@ dsh plugin --profile desktop add github:jaychang1989/dsh-webchat
42
42
  1. 点侧边栏的「DeepSeek 网页」入口 —— 页面直接在中栏载入,不需要第二次点击;
43
43
  2. 在里面登录一次 DeepSeek,当前这次运行内一直有效。
44
44
 
45
- 再点一次入口收起面板;面板关闭后访客保持挂载,重新打开不会重新加载、也不会掉登录。点侧边栏的会话/工作区行会自动把中栏还给对话。
45
+ 再点一次入口收起面板;面板关闭后访客保持挂载,重新打开不会重新加载、也不会掉登录。点侧边栏里**任何其它行**(插件、自动化任务、任务看板、会话、工作区)都会把中栏让回去——那些页面由 shell 渲染在中栏,本插件不占用它们的席位。
46
46
 
47
47
  ## 环境要求
48
48
 
package/lib/client.js CHANGED
@@ -350,12 +350,21 @@ window.__ModuleLoader__.load({
350
350
  var detail = event.detail
351
351
  if ((detail === 'taskboard' || detail === 'ssh') && controller.isOpen()) controller.close()
352
352
  }
353
- var SIDEBAR_ROW_SELECTOR = '[class*="sessionRow"], [class*="projectRow"], [class*="searchResultRow"], [class*="searchResultWorkspace"], [class*="newSession"]'
353
+ /**
354
+ * The shell's own panel list owns the center column. Its rows —
355
+ * Plugins, Automation Tasks, the task board, sessions, workspaces —
356
+ * do not take part in the third-party `data-*-active` handshake, so
357
+ * this panel has to yield on any navigation from the sidebar, or its
358
+ * overlay would keep hiding the page the shell just selected.
359
+ */
360
+ var SIDEBAR_SELECTOR = '[data-pane="sidebar"], [class*="sidebarCol"]'
354
361
  var onClickSidebarRow = function (event) {
355
362
  if (!controller.isOpen()) return
356
363
  var target = event.target
357
364
  if (target === null || target.closest === undefined) return
358
- if (target.closest(SIDEBAR_ROW_SELECTOR) !== null) controller.close()
365
+ // This plugin's own row toggles the panel; it is not navigation.
366
+ if (target.closest('[' + ENTRY_ATTR + ']') !== null) return
367
+ if (target.closest(SIDEBAR_SELECTOR) !== null) controller.close()
359
368
  }
360
369
 
361
370
  document.addEventListener('click', onClickSidebarRow, true)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jaychang1989/dsh-webchat",
3
- "version": "0.5.0",
3
+ "version": "0.5.1",
4
4
  "description": "Opens the official DeepSeek web app (chat.deepseek.com) inside DeepSeek Harness: one sidebar entry renders the real page in the center column, through the same native browser guest the built-in side-card browser uses. No chat UI, no agent tools, no runtime dependencies.",
5
5
  "keywords": [
6
6
  "dsh",