7月19日にCreateJSの開発者Grant Skinner氏よりEaselJSの次期バージョン(NEXT)について、Google Groupsに「Event Bubbling + mousemove & mouseup」と題する投稿がありました。イベントのバブリングとmousemoveおよびmouseupイベントについてふたつの選択肢を示し、ユーザーの意見を求めたものです。その内容をかいつまんでご説明します。
CreateJSのイベントにバブリングやキャプチャの機能が加えられるようです。これは、表示リストの親子の間をイベントが、上または下方向に伝わる仕組みです。ただ、マウスイベントについては、これまでの互換性を保ったまま組入れることは難しいようです。
mousemoveとmouseupのイベントは、表示リストの中すべてにゆき渡らせることは、負荷がきわめて高くなります。そのため、今のイベントモデルでは、マウスボタンを押したイベントオブジェクト(MouseEvent)のリスナーがイベントの受け手となっています。
mousemoveとmouseupのイベントを送る今の仕組みなら、負荷は低く、簡単に使えます。けれど、イベントモデルとしてすっきりしません。イベントオブジェクトがイベントを送ることや、その受取ったイベントのターゲットをどう決めればよいか(マウスボタンを押した表示オブジェクトか配信したイベントオブジェクトか)ということなどです。
EaselJS NEXTつまり0.7.0では、ふたつの選択肢が考えられています。
2の選択肢をとった場合には、現在の仕組みは非推奨とし、バージョン0.8でonEventハンドラとともにライブラリから除かれることになるでしょう。