Sorry for the delayed response! I'm not actually subscribed to this list, and I 
thought replies would be automatically cc'd to me.

On Sunday, April 24, 2016 at 6:12:31 AM UTC-4, [email protected] wrote:
> I'm still stuck with a few things. Just like elementsFromPoint() my function 
> currently ignores nodes with pointer-events:none; or visibility:hidden; (and 
> maybe more). I only want to ignore nodes with display:none; Where can I 
> override this?

It looks like visibility:none is checked here [1] and pointer-events:none is 
checked here [2].

Both of those functions have an nsDisplayListBuilder* argument, so you could do 
something like this:

  - add a flag to nsDisplayListBuilder, whether it should ignore
    visibility:none and pointer-events:none
  - condition the above checks on the flag not being set
  - add a corresponding option to GetFramesForArea()
  - when GetFramesForArea() constructs the nsDisplayListBuilder,
    set the flag is the option is set
  - for your call to GetFramesForArea(), set the option

Hope that made sense.

If you give some more details about your end goal, we may be able to suggest 
solutions that are easier / involve writing less custom code.

Cheers,
Botond

[1] 
https://dxr.mozilla.org/mozilla-central/rev/1461a4071341c282afcf7b72e33036412d2251d4/layout/generic/nsFrame.cpp#6295
[2] 
https://dxr.mozilla.org/mozilla-central/rev/1461a4071341c282afcf7b72e33036412d2251d4/layout/base/nsDisplayList.cpp#2061
_______________________________________________
dev-tech-layout mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-layout

Reply via email to