Fix UVE hover box keeping the old layout's size and position after a device switch
メンテナーはふだん 2 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 68/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- java, typescript
調査の方向性
まず withView.ts の viewSetDevice と viewSetOrientation から始め、ズーム、スクロール、iframe のサイズ変更時に editorContentArea がどのようにクリアされるかを追ってください。SET_BOUNDS の遷移と $showContentletControls を確認し、新しい hover が発生するまで hover ツールが非表示のままであることを確かめてください。デバイスと向きの変更に関する受け入れ基準を満たし、選択のクリアと既存のリセット動作が維持されていれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Problem Statement
In the UVE, switching the device (Desktop, Tablet, Mobile) or the orientation while a contentlet is hovered can leave its hover box and tools at the previous layout's coordinates. When the canvas settles, the box comes back with the old size and position: on Tablet it keeps the desktop width and runs past the iframe's edge with its tools, and back on Desktop it keeps the tablet width and sits off the contentlet. It stays until the pointer moves over the page again.
viewSetDevice and viewSetOrientation (withView.ts) clear the selection and put the editor in RESIZING, which hides the tools, but they keep the hovered area (editorContentArea). Zoom, scroll and iframe resize clear it. When the page sends its new bounds (SET_BOUNDS), the editor goes back to IDLE, and $showContentletControls shows the tools again from the stale area.
It only happens when the pointer leaves the iframe straight from a contentlet. The SDK reports "no hover" when the pointer moves onto empty page space, but on purpose not when it leaves the iframe, so the user can reach the toolbar. If the pointer crosses empty space, such as the page header, on its way to the device buttons, nothing is left behind.
Seen in Chrome on macOS, on main, on a headless page. The store code involved doesn't depend on the page type.
Steps to Reproduce
- Open a page in the UVE in edit mode, on Desktop at 100%.
- Hover a contentlet near the top of the page, for example the first banner, so its box and tools show.
- Move the pointer straight out of the iframe from that contentlet, without crossing empty page space, and click Tablet in the browser toolbar.
- When the canvas settles, the box is back with the desktop size and position. In our run the banner's box stayed 976px wide on an 819px-wide tablet page and ran past the iframe's right edge with its tools.
- Leave the page straight from the banner again and click Desktop: the box keeps the tablet width (720px) and sits off the banner.
- Move the pointer over the page: the box goes back in place.
Acceptance Criteria
- After a device or orientation change, no hover box or tools show until the pointer hovers a contentlet in the new layout.
- Hovering a contentlet after the change shows its box at its new size and position.
- A device or orientation change still clears the selected contentlet.
- Zoom, scroll and iframe resize still clear the hover box.
dotCMS Version
main (26.10.26).
Severity
Low - Minor issue or cosmetic
Links
NA. Found during the headless QA of #38235.
- 主要言語
- Java
- スター
- 972
- フォーク
- 489
- 平均マージ
- 2日 12時間
- マージ済み PR(30日)
- 188
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
dotCMS/core のほかの issue
-
Enable the Add to Bundle action in the Pages portlet row menu (hard-coded disabled since PR 34715)オープンdotCMS : Push Publishing OKR : Customer Support Team : Maintenance Type : Defect
難易度 2/5 1〜3時間 初心者へのやさしさ 77/100
メンテナーはふだん 2 日以内に返信
-
[TASK] Postman and Karate test stacks sleep 3 s after every write対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンTeam : Platform Type : Test Automation
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
dotCMS/core#38225 · コメント 1 件 ·
メンテナーはふだん 2 日以内に返信
-
[TASK] Postman: collections hard-code localhost:8080 instead of {{serverURL}}対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンTeam : Platform Type : Test Automation
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
dotCMS/core#38221 · コメント 2 件 ·
メンテナーはふだん 2 日以内に返信
-
OKR : Customer Support Team : Falcon Type : Defect
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 2 日以内に返信
-
Triage
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
メンテナーはふだん 2 日以内に返信
似ている issue
-
pending:code-area pending:issue-category to-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 1 日以内に返信
-
area:core bug priority:p2
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
aomarai/minecraft-mcp#247 ·
メンテナーはふだん 1 日以内に返信
-
help wanted
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
antonyrag/ragleap-core#1062 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
projectnessie/nessie#13256 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
Vakore/ZappierGames#232 ·