Hi,
We had too big, complicated and important method,
`PresShell::HandleEvent()` (*1), and its helper method,
`PresShell::HandleEventInternal()` (*2). Those methods were too risky
to fix everything. Therefore, I redesigned them with a stack class
`PresShell::EventHandler` (*3). This new class is created in the stack
temporarily when `PresShell::HandleEvent()` or similar methods are
called, or handling event is retargeted to different `PresShell`.
Note that I did not fix found bugs except trivial ones. So, if you need
to check the blame, it must be easier to do it starting from the first
link below since it may not be easy to check moved lines.
1.
https://searchfox.org/mozilla-central/rev/9b614455de573ad1cac56fd1dbac73adde3425bc/layout/base/PresShell.cpp#6464-7122
2.
https://searchfox.org/mozilla-central/rev/9b614455de573ad1cac56fd1dbac73adde3425bc/layout/base/PresShell.cpp#7190-7586
3.
https://searchfox.org/mozilla-central/rev/8ff2cd0a27e3764d9540abdc5a66b2fb1e4e9644/layout/base/PresShell.h#499-1261
--
Masayuki Nakano <masay...@d-toybox.com>
Software Engineer, Mozilla
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform