There are all sorts of issues with that, that I am pretty sure "all" your reading apps dont handle.
1) There can be multi-level ToCs and so multiple ToC entries for a given search result
2) If the ToC entries are not single entry per internal file, it means you have to somehow calculate which ToC entry a search result corresponds to which can only be done by a fairly slow procedure.
|