Originally there was m_bIsSubstream (true for footnotes, headers, etc.),
then we needed a pointer to the original stream, now the boolean value
is redundant, so remove it.
There were two problems here:
1) \plain reset the character properties, but did not touch the current encoding
2) the default properties were not passed to substreams
If we have a postponed page break and it's sent to dmapper during a new
inner group, we'll still have the page break request after the parser
state is popped, leading to duplicated page breaks. Instead of the
earlier workaround, just send the proper token to the domain mapper, and
it'll handle it properly.
Substreams (headers, footers, etc.) are parsed separately, so their font
table is empty by default. Fix handling of custom fonts (and thus
encodings) there by passing a pointer to the superstream.
Without that, the following happens:
1) ShapeTypeContext::onCreateContext() in oox calls rAttribs.getToken()
2) FastAttributeList::getOptionalValueToken() in sax calls mxTokenHandler->getTokenFromUTF8()
3) OOXMLFastTokenHandler::getTokenFromUTF8() won't find the oox token and return OOXML_FAST_TOKENS_END
I verified that the new gperf input just adds tokens to the hash,
doesn't remove any.
To allow frame keywords at the start of the document, we need to:
- a single setter method for all frame properties
- make the parser state know about its document
- make the frame know about its parser state
In most cases \super has its own group, but it's valid to have mixed
super and non-super text in a single group, as long as \super and
\nosupersub keywords are used: handle this.
There were multiple issues here:
- convertEmuToHmm() not handling negative values
- position:absolute style property being ignored
- mso-position-vertical-relative is not converted to
text::RelOrientation
- SwAnchoredDrawObject::_SetPositioningAttr() re-positioning already
positioned objects
- DomainMapper_Impl::PushShapeContext() inserting positioned objects as
character
...which has the necessary features to support it.
Change a lot of classes to either contain a protected non-virtual dtor
(which is backwards compatible, so even works for cppumaker-generated
UNO headers) or a public virtual one.
cppuhelper/propertysetmixin.hxx still needs to disable the warning, as
the relevant class has a non-virtual dtor but friends, which would still
cause GCC to warn.
Includes a patch for libcmis, intended to be upstreamed.
It's too small to justify standalone existence.
We can accumulate i18n things we link to directly into
i18nutil and rework i18npool uno implementions in terms
of thin wrappers over i18nutil and prefer linking to
i18nutil internally and leave the uno forwarders for
use by external components and scripting
When a texbox is contained inside a table cell... we were running into
some troubles when creating the table: the reference to the paragraphs
inside the textbox were passed to the TableManager. This was leading to
missing references when converting to a table because the paragraph
references within the textbox were dropped.