この日記はMozillaのプロダクトへの貢献者としての私の成果を中心に、気になったバグやWeb界隈の話題について書いていますが、 断り書きがある場合を除き、いかなる団体のオフィシャルな見解ではありません。あくまでも個人的なものです。 Mozilla Foundation、Mozilla Corporation、及び関連企業の公式情報ではないことに注意してください。

現在、XHTML 1.0 (もどき)から、HTML5なコンテンツに修正中です。古い日記は修正が完了していませんので表示が崩れます。 順次、修正していく予定ですのでしばらくお待ちください。

もずはっく日記(2014年7月)

2014年7月31日

Bug-org 1045978 Create InternalSVGZoomEvent and InternalSMILTimeEvent for NS_SVGZOOM_EVENT and NS_SMIL_TIME_EVENT
初回投稿日時: 2014年07月31日18時48分44秒
カテゴリ: Events Mozilla Core Mozilla34 バグ修正
SNS: (list)

イベントな内部クラスは、どのクラスのインスタンスかを高速に判断できるように、eventStructTypeというメンバがあり、ここに、各イベントクラスのコンストラクタが自身を示す値を書き込んでいるのですが、SVGのズームイベントと、SMILのタイムイベントの二つは、既存のイベントクラスのインスタンスに、専用の値をセットしてEventDispatcher::CreateEvent()等で本来とは異なる動作になるようにハックを仕込んでいました。

しかし、これらのせいで、一部、本来ならマクロを利用して生成できるコードができないという制約の原因になっていたので、今回、これらのイベント用の派生クラスを特にメンバを追加したりせずに作成し、整理しています。

関連するかもしれないエントリ

bug-org 1045978を含むエントリ