🔥

Tauriでreact-dndのDragイベントが正しく動作しない場合の回避方法

2022/07/16に公開

Tauriでデスクトップアプリ化した際に、Drag制御にreact-dndを使用していて、Dragイベントが正しく動作しない問題に遭遇しました。
簡単に回避できたので、その時の回避方法をメモします

回避方法

tauri.config.jsonでfileDropEnabledをfalseにする

tauri.config.json
{
  "windows": [
      {
        "decorations": false,
        "fullscreen": true,
        "fileDropEnabled": false,
        "width": 1280,
        "height": 720,
        "minWidth": 1280,
        "minHeight": 720,
        "resizable": true,
        "title": "UindowOS"
      }
    ]
}

原因・理由

TauriのDragイベントに難があるのかと思いましたが、issueを見る限りreact-dnd側の問題みたいです
Dropイベントがファイルドロップ扱いになっているのかな...?とか考えましたが、今回自分はファイルドロップを目的にreact-dndを利用していなかったので詳細な原因は追ってません

ファイルドロップを必要とするアプリケーションの場合は抜本的な解決法にはなってないので、今回は解決法ではなく、「回避方法」と記載させてもらいました

https://github.com/react-dnd/react-dnd/issues/3451
https://github.com/tauri-apps/tauri/issues/3277

おまけ

GSAPアニメーションがリサイズ時にちらつくので、
フレームレスWindowを諦めてdecorationsをfalseにしたり、色々と問題に遭遇することが多いので、必ずしもTauriが悪いわけではないですがElectronを検討してみようかなと思ってます

Discussion

ログインするとコメントできます