Michael R wrote:
> 1. "Over it" means that there exists a point on the page such that if I
> point the mouse on the point "mouseover"  event would firef for that node

Yeah...  You can sort of approximate that with some hit testing using 
GetFrameForPoint, I think.

> ..Analogously if I'd click the mouse "click" event would fire for that node.

Right.

> 2. <div style="height: 0">
>        <div style="height: 100px">Text</div>
>     </div>
>     <div style="height: 100px; background: white; opacity: 0.3"></div>
> 
>    >    The only node here for which mouseover events will fire is the div
> with opacity:0.3.
> 
>      Why is that ? Because of style="height:0" ?

Because the div with a white background sits on top of the other content 
(because the outer div there has height:0, yes).  Check how this renders to see 
what's going on.  In this case, mouse events will only go to the div with the 
background.

> 3. I looked at GetFrameForPoint and I found there only one visibility check
> : frame->GetStyleVisibility()->IsVisible()

The z-indexing and such is handled somewhere in there too, I thought... maybe 
it's in the view system.  All this code is long gone in Gecko 1.9, so I don't 
recall all that well, to be honest.

>     I wonder if the style visibility reflects other reasons for node being
> invisible (e.g. "display: none") ?

display:none means no frame is created at all.

-Boris
_______________________________________________
dev-embedding mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-embedding

Reply via email to