Kozaneba開発日記2021-12-27
ネストされたグループの中のこざねの位置が更新された時に、親の親のグループのなんらかの値が更新されてない
https://gyazo.com/60bda293dd176921a1b8f55e5c319687
https://gyazo.com/37d508ab6716938b080bdc143c73ac49
親のpositionは更新されているが、その親のは更新されてない
関連して「G1を外に出してまた中に入れた後1を外に出すとジャンプする」
fixed
https://gyazo.com/f9eb20eaf29055042ea763b46cb17334
---
「G1を外に出してまた中に入れた後1を外に出すとジャンプする」
without X
do_drag("1", "ba", 100, 100);
https://gyazo.com/7334ea3c47bb87e164032aa9ca29c327
with X
code:js
do_drag("G1", "ba", 0, 0);
do_drag("G1", "G2", 0, 0);
do_drag("1", "ba", 100, 100);
https://gyazo.com/938d31d1c3aeea7b078f5615b33f9dfd
table::
A: 1 *left,top G1 G2 delta B: 1 CSS:left,top *left,top
without X 0, 0 184, 199 0, 0 0, 0 -84, -99 -84, -99 -150,-150 100,100
with X 0, 0 225, 225 0, 0 41, 26 -125, -125 -125, -125 -191,-176 59, 74
A: before drag
B: after drag
*: getBoundingClientRect
table::
A: 1 *left,top G1 G2 delta B: 1 G1 G2 CSS:left,top *left,top
without X 0, 0 184, 199 0,0 0, 0 -84, -99 -84, -99 0,0 0,0 -150,-150 100,100
with X 0, 0 225, 225 0,0 41, 26 -125, -125 -125, -125 0,0 41, 26 -191,-176 59, 74
drag G2 0,0 180, 230 0,0 -4,31 -80, -130 -80, -130 0,0 -4, 31 -150,-150 104,69
よりシンプルな問題再現手順
ネストされたグループのG2をvドラッグしてから1を外に出した時に期待した位置より-vズレる
これは補正しすぎな感じがあるが、そもそもなぜ補正したのか?
補正がされるべきケースもある?
直接の親のpositionだけを足してるな、これがまずいのか
done
リリースノート
2つ以上のグループが入れ子になっている場合にグループに対する矢印の端点がおかしくなるバグを修正しました
2つ以上のグループが入れ子になっている中からアイテムをドラッグドロップした際にドロップ位置と異なる位置に移動するバグを修正しました
2021-12-28
リリースノート
線の透明化の度合いを強くしました
こざねをドラッグしようとして線の上でマウスダウンしたときに、意図せず範囲選択になっていた挙動を修正しました
線がマウスイベントを受け取らないようにしました
矢印に対する編集をどうやるか悩ましい
使ってみて感じてること
間違って逆向きに矢印をつけてしまったときにUndoしたい
削除でもいい
今はこざねをcloneして削除している
3項目に線を引いた後で4項目が正解だったと思った時に全部作り直すしか方法がない
この二つに関しては選択して「線から抜ける」と言うアクションでも良い
線が複数ある場合に全部から抜けてしまうけど…