Remove enableUserSelectHack, set to false by default
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 45/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 停滞
- 技術スタック
- javascript
- 領域
- frontend
調査の方向性
Start with lib/DraggableCore.js around line 97 and lib/utils/domFns.js around line 168 to understand how enableUserSelectHack is defined and consumed. Done means the hack is removed or defaults to false without clearing the user's document selection; verify the Gmail compose reproduction described in the issue.
索引モデルが issue の本文から書いたものです。
説明
Rant: We had an incredibly difficult time connecting the dots between a setState causing a modal to hide and figuring out why the user was losing focus in Gmail. I've probably spent 10+ hours digging through our codebase since we have a ton of places where we manage the user's selection. The last thing I expected was for the Draggable wrapper on that modal to be removing all ranges from the document. I had to resort to a binary search "comment half of everything out, see if it still works, repeat" which was still extremely difficult because I didn't consider the very last element to be the one causing issues.
Repro: The user selects text in any Gmail compose window, opens formatting, clicks bold, our modal disappears (from something like document.addEventListener('mousedown', checkIsOutsideAndHideModal), and the user loses their selection and bold is not applied
RCA:
https://github.com/react-grid-layout/react-draggable/blob/master/lib/DraggableCore.js#L97
This comment explains why it exists, but the code that consumes this flag is mostly about removing document ranges
https://github.com/react-grid-layout/react-draggable/blob/master/lib/utils/domFns.js#L168
- 主要言語
- JavaScript
- スター
- 9.3k
- フォーク
- 1k
- 平均マージ
- 3日 8時間
- マージ済み PR(30日)
- 4
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
react-grid-layout/react-draggable のほかの issue
-
難易度 3/5 1〜2日 初心者へのやさしさ 72/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
react-grid-layout/react-draggable#784 · コメント 4 件 · リアクション 2 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 45/100
react-grid-layout/react-draggable#782 · コメント 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 25/100
react-grid-layout/react-draggable#781 · コメント 1 件 · リアクション 2 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
react-grid-layout/react-draggable#780 · コメント 8 件 ·
react-grid-layout/react-draggable の issue をすべて見る
似ている issue
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
babalae/bettergi-scripts-list#3674 ·
-
ecosystem wording
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
matrix-org/matrix.org#3649 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
vadimdemedes/ink#1029 ·
-
code-quality refactoring
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
github/gh-aw-firewall#8816 ·
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
langchain-ai/deepagents#6450 ·