前言¶
DSH 的 Web GUI 專爲桌面端設計。在手機上通過遠程工具查看 DSH 時,橫屏界面被壓縮到豎屏中,正文過小且操作困難。dsh-mobile-remote-view 插件將整個界面逆時針旋轉 90°,並將側欄、對話頁、右欄拆分爲各自佔滿一屏的獨立頁面,以適應手機豎屏操作。
插件簡介¶
- 名稱:
dsh-mobile-remote-view - 作者: RonnyJung2021
- 許可: MIT
- 分類: 客戶端插件
核心功能¶
該插件主要解決手機遠程查看時的佈局適配問題,具體能力包括:
- 整頁旋轉 90°:將 DSH 桌面界面轉爲豎屏佈局。
- 一屏一頁:對話頁、側欄頁、右欄頁各自佔滿一屏,通過頁鍵切換。
- 拇指尺寸:正文與輸入框字號 12-27px(默認 19px),按鈕與會話行高度 48px,確保手指可點擊。
- 控制條與滾動條:貼邊設計,支持頁面縮放與字號調整的浮窗操作。
- 座標層:保證菜單、提示等浮層在旋轉後仍跟隨觸發器,不發生偏移。
- 插件卡片配置:提供 7 個旋鈕,可配置旋轉方向、控制條位置與厚度、縮放、字號、自動進入模式及座標層開關。
- 自動進入模式:在插件卡片中開啓後,打開 Web GUI 會自動進入手機遠程模式。
- 語言跟隨:界面文案跟隨 DSH 的語言設置。
- 退出還原:點擊退出後恢復桌面版佈局,並清理注入的樣式與屬性。
安裝與啓用¶
插件需要通過腳本安裝到 DSH 的 Web profile 中。
node scripts/install-profile.mjs
安裝完成後,側欄會出現「手機遠程模式」入口,或通過插件卡片開啓自動進入功能。安裝後需要重啓 DSH 引擎本身才能生效。
使用方法¶
- 進入模式:在側欄頂部找到「手機遠程模式」並點擊。
- 查看與切換:頁面旋轉 90°,控制條與滾動條出現在左側。點擊頁鍵可在對話頁、側欄頁之間切換;打開右欄時會自動成爲獨立一頁。
- 退出:點擊控制條上的「退出」按鈕,界面轉回桌面版面。
配置說明¶
插件卡片提供 7 個配置項,配置寫入 profile 後永久生效:
rotate:旋轉方向(-90° 或 90°)。barEdge:控制條位置(top, bottom, left, right)。barSize:控制條厚度(40-120px)。scale:頁面整體縮放(0.6-2.5)。contentFontSize:正文字號(12-27px)。autoEnter:是否自動進入模式。virtualizeCoordinates:是否啓用座標層(防止菜單偏移)。
注意事項與限制¶
- iOS Safari 限制:由於瀏覽器限制,iOS Safari 不支持元素級全屏,全屏鍵可能不顯示。
- 軟鍵盤:軟鍵盤遮擋問題不在插件處理範圍內,輸入行爲按瀏覽器原生方式處理。
- 浮層偏移:
Selection或Range對象生成的浮層在旋轉後會偏移 90°。 - 會話判定:插件同時識別
data-session-id和data-row-key="session:…"兩種會話行標記。 - 菜單偏移:如果關閉「換算座標」開關,菜單可能會偏移 90°。
- 卡片只讀:如果在插件注入中未檢測到旋鈕,插件卡片將顯示爲只讀狀態。
總結¶
該插件通過旋轉與分屏機制,將 DSH 桌面界面改造爲適合手機豎屏操作的佈局。它不改變 DSH 的核心邏輯,僅調整視圖呈現,適合需要通過手機遠程查看或管理 DSH 工作流的用戶。