LibreOfficeKit unrunnable on macOS

Patrick Luby guibomacdev at gmail.com
Fri Jul 26 12:20:01 UTC 2024


I recently noticed that LibreOfficeKit headers are being shipped with LibreOffice 24.8:

https://dev.blog.documentfoundation.org/2024/06/27/libreofficekit-api-in-action/#respond

One problem that has already cropped up is that LibreOfficeKit does not run on macOS:

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

Maybe I’m missing something, but all the LibreOfficeKit examples run the native macOS event handling and window management on a non-main thread. That’s a big no no on macOS and, not surprisingly, users see the following exception on the first vcl call:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'NSWindow should only be instantiated on the main thread!’

My quick assessment of the situation is that macOS would need a full headless vcl implementation like is used for Collabora’s iOS app so my recommendation is to *not* include the LibreOfficeKit headers in macOS builds. Or at least put something like the following in the headers:

#ifdef MACOSX
#error LibreOfficeKit is not available on macOS
#endif

Thoughts? Implementing a headless version of the iOS code for macOS is too big a project for me and so this architectural flaw isn’t going to be implemented before LibreOffice 24.8 is released.

Patrick


More information about the LibreOffice mailing list