https://bugs.documentfoundation.org/show_bug.cgi?id=89482

--- Comment #7 from Justin L <[email protected]> ---
I am pretty sure that _Toc is an MSWord-only convention, and that __Refheader__
is a comparable LO convention.  So after a long review, I think my original
"fix" is still conceptually valid.  (see CrossRefBookmark.cxx, as well as all
of the "ensure __Refheader__ prefix whenever isTocBookmark is true).

Not all references to __Refheader__ bookmarks update aReferencedTOCBookmarks,
and ww8par.cxx deletes any TOC bookmarks that aren't there (and thus this
regression).  Since ww8par.cxx is primarily concerned about importing Word's
.doc format, I think it is safe to change it so that ONLY "_Toc" bookmarks that
are not referenced are deleted.  That would leave all LibreOffice generated
bookmarks intact.

However, this doesn't resolve another complication: Only ONE
crossreferenceBookmark is allowed - so that might cause other regressions if
more than one bookmark attempts to reference the same header. 
(sw/source/core/doc/docbm.cxx:383: MarkManager::makeMark(..) - refusing to
create duplicate CrossRefBookmark)

Alternative 1)   Reverse bug 68963 and find out why a REFERENCE *must* be
marked as a TOC in order to be visible.  (I haven't been able to discover why).
This would be the ideal alternative if possible.

Alternative 2)   In the CrossRefHeadingBookmark constructor, append a "_Toc" to
the prefix.  This might work without causing regressions, but it would affect
all of LO, not just .doc.  This would only affect newly created documents.

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs

Reply via email to