GSoC - Weekly Report - #7 - Table styles

Balázs Sántha santha.balazs at
Tue Jul 27 06:41:26 UTC 2021

Dear Community!

Sorry for the late report. Last week I was getting a lot of build problems
with Jenkins, when I tried to test my patch about a bug. At the end of the
week, finally it could have been merged into master:
Also I was working on an the optimization, I started to implement last
At first I was trying to solve the implementation in the writerfilter: I
wanted to copy the paragraph level run properties into the paragraphs, only
for the last row, instead of copying it to every row. This would have given
the speed boost. Unfortunately I couldn't solve it, but anyway it would
have created another problem. The whole reason, to copy this props, is to
support the copy of rows when we insert a new row. But with this original
solution, it would have worked only if we insert a new row, after the last
row, beacuse it is the only row, where we copied the run props into the
paragraphs. So for example, if we wanted to insert a new row in the middle
of the table, the run props would have been left out of the copy. To
prevent this, we need to modify  the core of the Writer too, to do this
copy at runtime, not when we open the document. Because of this, the idea
came, that we could do this entirely in the core. What I am trying to
implement now, is that in the writerfilter we do not do this copy of props
at all, and we will do this only in the core, and only when the user wants
to insert a new row. I tried to solve it, but had no success yet, as I am
not familier with the core, and uses some classes, I didn't know before. I
am still not sure, where shoud I insert a new code snipplet in the writer,
but probably in one of the functions of "InsBoxen", "InsTableBox",
"SwTable::InsertRow" call chain.

This week I will still working on this optimization!

If you have any questions, ideas, thoughts or suggestions, please share
with me!

Balázs Sántha, santhab
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the LibreOffice mailing list