summaryrefslogtreecommitdiff
path: root/ios/source
AgeCommit message (Collapse)AuthorFilesLines
2020-12-21Retire the bit-rotting LibreOfficeLight iOS appTor Lillqvist2-153/+0
Change-Id: I21b8055fc97d8dfb8429e7dafa1a3982c3b7499b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108122 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2019-12-05android: Avoid throwing exceptions through the bridges.Jan Holesovsky1-42/+0
From some reason it does not work, so let's do the same we are doing on iOS; at least for now. Change-Id: I915f8683a112548fc3defc1114f9dce3aa7be30e Reviewed-on: https://gerrit.libreoffice.org/84067 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/84204 Tested-by: Jenkins Reviewed-by: Jan Holesovsky <kendy@collabora.com>
2018-10-31Handle also css::ucb::NameClashException>(aExceptionTor Lillqvist1-0/+6
Change-Id: I979a163e796418d9a693229698b638cec4bf2226
2018-10-22Look for the generated native-code.h where it now isTor Lillqvist1-1/+1
The makefile here was changed already some weeks ago to put native-code.h in workdir and not in the source directory, but I forgot to make sure this file still compiled, as it is used by LibreOfficeLight only. Yes, it is ugly to use the workdir/CustomTarget/ios pathname, so sue me. Change-Id: I568d933c1d1384041632f432053d0a0c64c485c2
2018-09-27Need to handle css::uno::RuntimeException too nowTor Lillqvist1-0/+1
Change-Id: Idedcaddeab80fcfdc3d5a4f2852712827a98e848
2018-09-15Re-think cppu::throwException() and the C++/UNO bridge on iOSTor Lillqvist1-0/+35
It seems that on iOS, where we don't have any Java, Python, BASIC, or other scripting, the only thing that would use the C++/UNO bridge functionality that invokes codeSnippet() was cppu::throwException(). codeSnippet() is part of what corresponds to the code that uses run-time-generated machine code on other platforms. We can't generate code at run-time on iOS, that has been known forever. Instead we have used some manually written assembler to handle it instead. We used to have a Perl script to generate a set of code snippets for different cases, different numbers of parameters of the called function and whatnot, but that went away at some stage some year ago. (It is unclear whether that broke the C++/UNO bridge on iOS, or whether the stuff continued to work even after that.) Anyway, this handwritten assembly, or the manual construction of internal data structures for exceptions, or something else, seemed to have bit-rotten. Exceptions thrown with cppu::throwException() were not catchable properly any longer. Instead of digging in and trying to understand what is wrong, I chose another solution. It turns out that the number of types of exception objects thrown by cppu::throwException() is fairly small. During startup of the LibreOffice code, and loading of an .odt document, only one kind of exception is thrown this way... (The lovely css::ucb:InteractiveAugmentedIOException.) So we can simply have code that checks what the type of object being thrown is, and explicitgly throws such an object then with a normal C++ throw statement. Seems to work. Sadly the cppu::getCaughtException() API still needs some inline assembly in the C++/UNO brige. That seems to work though, knock on wood. This commit also adds a small "unit test" for iOS, copied from cppuhelperm to ImplSVMain(). Ideally we should not copy code around of course, but have a separate unit test app for iOS that would somehow include relevant unit tests from source files all over the place. Later. Change-Id: Ib6d9d5b6fb8cc684ec15c97a312ca2f720e87069 Reviewed-on: https://gerrit.libreoffice.org/60506 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2018-03-03iOS, updated resource paths.jan Iversen1-0/+0
changed name of example.odt to welcome.odt Change-Id: I59625949f4aaad3b3f75bfa243f1a4186d563822
2018-03-03iOS, made example.odt local to iosjan Iversen1-0/+0
Have a local copy instead of referencing the android dir, allows us to make modifications local to iOS. Change-Id: Ifb6292cff5dcfce0a45c210176f8597d0091ee20
2018-01-30iOS: linker changes for on deviceJon Nermut2-6/+3
[ae490dd] iOS: add script to sym link the dylib to the right spot Adds a shell script to symlink the right dylib into the build products folder, which means we can reference libKit.dylib relative to that, rather than absolutely [ba4c072] iOS: pass in user path On device using appPath/user as the user directory causes a crash, as an app cannot write inside it's bundle. Instead, add a new param to pass the documents dir into the init. [088ad49] iOS: linker changes to run on device Change-Id: I16f5d85f3ca483df11b82108ee39c4ec461214f4 Reviewed-on: https://gerrit.libreoffice.org/48866 Reviewed-by: jan iversen <jani@libreoffice.org> Tested-by: jan iversen <jani@libreoffice.org>
2018-01-14iOS changed reference to native-code.hjan Iversen1-1/+1
Change-Id: Icadbdc4463ffb9591353e820f66474c65efd12cf
2018-01-12iOS, removed hook referencejan Iversen1-6/+0
Change-Id: I9a9d9613313ac8d0e611f4d7f766c42ab71963e1
2018-01-10iOS, reference to hook_2 wrongjan Iversen1-2/+4
Change-Id: I4f0051bac812969988b701383a9df7db96ce245e
2018-01-08iOS, add bridge function to expose kit pointer.jan Iversen2-4/+9
Change-Id: I534dc7e418c342d50762fbb69ae442a75610b278
2018-01-06iOS, allow calls to LibreOfficeKit from swiftjan Iversen2-5/+18
Extended the bridge to include original LibreOfficeKit.h as well as Kit pointer (set in init call) Change-Id: I5e96f2706ac4d1ee897b977d3322bdc1b91f1a0b
2017-11-26iOS, make Kit symbols externaljan Iversen1-0/+6
Xcode has a problem (a bug) with linkink .o files to a project, this is ignored on the linker line. We use visisbility=hidden as default, therefore the symbols to be exported need to have the attribute visibility=default Change-Id: I079189dbaf6c0f606028a1e582f320db97995285
2017-11-23iOS, do not use different C compilersjan Iversen2-0/+136
LibreOfficeKit.c was compiled with an xcode project and not like all other sources. Changed to use clang with same switches as rest of LO. Separated resource generation in own makefile Removed project LibreOfficeKit which was responsible for prelink. Change-Id: Iaf9fbb4b652501af0b7f3643ed3efcc2ed93b611