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