Developer Blog

Keep track of the latest changes to the code! 

Latest Posts

Open Source in Action #5: 2,499 Merges, Performance Hunting, and a Community Finding Its Rhythm

The merge count is approaching 2,500, performance work is in full swing, the ruler is getting a redesign, and the forum is buzzing with new faces. Here’s what happened this week. The Numbers This week: 349 commits merged by 42 contributors, with 226 open changes in review. All-time since April...

Fix table of contents editing

The structure of table of contents entries was not editable in Collabora Online, because the controls were not implemented correctly for JSDialog. Before After Also, the “Edit Table of Content” was added to the context menu.

...

Format as Table

If you have ever converted a plain range in Excel to a “Table” and watched it grow up into a proper object with a name, banded rows, a header, a totals row and sane filter buttons — you already know the feature. What you might not know is that Calc...

More Blogs

Highlighting in Document Comparison

I worked with Gokay on a new document compare view for COOL Writer. Part of that feature is to be able to highlight the matching...

Various Papercuts

These developments were made in February, 2026. Available in 26.04 only. Collabora Online can be built against musl libc musl libc is an alternative implementation...

Accordion bits in sidebar

Among a host of other accessibility enhancements, we have implemented the W3C Accordion Pattern for our expanders, as used in the sidebar and dialogs, where...

Pointer in range

Mostly for historical reasons, LibreOffice has its own `SvMemoryStream` class (for, you guessed it, writing in-memory streams). For quite a while now, code in the...

1800 timezone files !?

Collabora Online puts a lot of effort into containing your changes inside a new file-system jail per document. We use chroot or unprivileged user namespaces...