TriangleMouseFilter: fix incorrect handling of hover events and inactive state
- Even if inactive, we still need to record the current item so when
activebecomes true after the child item is hovered, the filter can still work correctly. This fixes bug 467426. - When
resetTimeris still active (waiting), the saved item may already have changed, so don't eat the event whenresetTimeris still running. This fixescontainsMousenot updating correctly.
This also moves all item relevant properties to a unified struct, so when resetting items, relevant properties will also be reset.
Edited by Fushan Wen