summaryrefslogtreecommitdiff
path: root/ios
AgeCommit message (Collapse)Author
2018-09-15Re-think cppu::throwException() and the C++/UNO bridge on iOSTor Lillqvist
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-09-14Return share/config/soffice.cfg as it was, as I think the code expectsTor Lillqvist
Not sure how it worked in LibreOfficeLight. Change-Id: I0991b13a7538581642f530bf45a1bba1b1b644d5 Reviewed-on: https://gerrit.libreoffice.org/60505 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2018-09-05Don't copy files into the source directory, use workdirTor Lillqvist
(The LibreOfficeLight Xcode project still needs to be adapted correspondingly.) Change-Id: I0b17c595fc0d169f6393ab8734a1eecb241f59be
2018-09-05Put the lib names one per line to match what ld's -filelist expectsTor Lillqvist
Change-Id: I7454c10a1547db796554f45f2d630af81a916c55
2018-09-05Run bin/ios-all-static-libs and put its output in a fileTor Lillqvist
(To be used from Xcode projects elsewhere building iOS apps that want to link to iOS code built here.) Change-Id: I39bf2a4ed059930fcfc30c4d2016dfbc698da353
2018-08-28Fix typoTor Lillqvist
Change-Id: I78571f8494a13f6f8c07f9aee2bf6f8144a48ed2
2018-08-28Add --enable-ios-libreofficelight-app option to build stuff for janI's appTor Lillqvist
Change-Id: I1310cb8f5f543f49f9667ee10cb26c9809df259e
2018-08-28Bump version number in ICU data file nameTor Lillqvist
Change-Id: I222792dd34cd016196dfec9870161896c7c43b0d
2018-07-17Use $(ICU_MAJOR) instead of hard coded (Upgrade to ICU 62.1)Eike Rathke
Change-Id: Ifea7072922388b2c0b7631fb809b23e2a5524a3c
2018-06-07We use ICU 61 nowTor Lillqvist
Change-Id: I7faf23de08db680599658206faaf3028888563f6
2018-06-02Removed executable permission on data filesAndrea Gelmini
chmod -x to complete Change-Id: I966773e0adebf8563343856f18ba25ba84b0a633 Reviewed-on: https://gerrit.libreoffice.org/53666 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-04-02iOS, update source to xcode 9.3 swift 4.1jan Iversen
Change-Id: I68464a213303ebe7dd850659031baf4cd7bdfa73
2018-03-17iOS, remove copy of source code to instdirjan Iversen
The build phase contained copy statements for bridges/source/cpp_uno/ which should not happen Change-Id: Ied4c1b2ef29effe4642f5ca0e7dc3a5b41ef0b68
2018-03-15iOS, solved corrupted stack in cpp -> unojan Iversen
Solved problem in assembler code, so the call chain is correct. There are still something missing for uno to work correctly Change-Id: Ieb3b3d6b15153576159e07b52ced0efedd135713
2018-03-11iOS, updated xcode project filejan Iversen
the only change is that addition of files needed to debug the stack corruption problem. Change-Id: I3598cdba2e84f51a3a90387dbe3439eafb34f878
2018-03-03iOS, change example.odt -> welcome.odtjan Iversen
It must be changed in the swift code also. Change-Id: Ide7ccbb89d94f91a9f6e0dbbd7a29035c46f7f4f
2018-03-03iOS, moved resources from share to direct.jan Iversen
Change-Id: I266fe71a6c58d8b80fa917198e8d84b356dfe296
2018-03-03iOS, updated resource paths.jan Iversen
changed name of example.odt to welcome.odt Change-Id: I59625949f4aaad3b3f75bfa243f1a4186d563822
2018-03-03iOS, made example.odt local to iosjan Iversen
Have a local copy instead of referencing the android dir, allows us to make modifications local to iOS. Change-Id: Ifb6292cff5dcfce0a45c210176f8597d0091ee20
2018-03-02iOS, allow "make" call in ios directoryjan Iversen
config_host.mk is not read before Custom_target_ios_link, which gives problems with the global variables Change-Id: I9738b5123f4e7aa848de17b00b39b8a03b3a477c
2018-02-13iOS, SAL_LOG added to debug buildsjan Iversen
Change-Id: Ibd5406c8f2ea7b46e3b4863ca1eba5a788bd270a
2018-02-11iOS, added missing document state in callbackjan Iversen
Change-Id: Ib710eb4ce1186571732588948726874a0fb9cb58
2018-02-05iOS, add tango theme to avoid vcl problem.jan Iversen
Change-Id: I73bee8ce04ec6234187224d03f0e081f09037e72
2018-02-05iOS, correctly build release/debug versionsjan Iversen
Added 2 schemes Debug/Release as shared to make sure they are available. Not having them as shared and cleaning causes them to be "forgotten" Change-Id: I4cb66c7088f770c7cda592994f3610e98fb1b7f0
2018-02-05iOS, removed OTHER_LDFLAGSjan Iversen
Change-Id: Ib07c1c4823deda7fa4ba389e9679f6eff99691d8
2018-02-05iOS, allow x86 release buildsjan Iversen
Added dir for x86_64 release builds Change-Id: If8c5e775ecd1283d9386a764441019c2423170f9
2018-02-04iOS, simplified lib ref and copy to devicejan Iversen
Named libKit directories so they can be referenced simple within xCode Change-Id: Ic05fa4e87b6cc87e2823177474c3ed9ac3433dd3
2018-02-04iOS, launchScreen size updatejan Iversen
Change-Id: Ic00d5f623fafdf05c467e7a260320894d8a27c5b
2018-02-04iOS, removed buildConfiguration Simulatorjan Iversen
We only work with Debug/Release and then let the target determinate active architecture. Change-Id: Iccc6a658168a26c9d6b1650b0928466479cf68dc
2018-02-04iOS, removed schemesjan Iversen
Working only with BuildConfiguration Change-Id: I6790841928ca7ab6938317d0a8e83f9b90608cad
2018-02-04iOS, new launch screenjan Iversen
Updated launch screen, to reflect current development, and the fact that it is based on LO 6.x Change-Id: Iac175abb5ba8dc7a1fbe923ce972d797d78779c5
2018-01-30iOS: linker changes for on deviceJon Nermut
[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-26iOS, add support for PDFjan Iversen
Updated Document Types and import types. Change-Id: Id7e5aef91cdf52783a83672becfd7bbb78f986ad
2018-01-25iOS, update intro screenjan Iversen
Update to intro.png used for version 6 Change-Id: Ieeb71854eb98eb3f1be815ea15fecce424a5eba9
2018-01-25iOS, removed unused librariesjan Iversen
libz, libiconv etc are now hidden in loKit.dylib Change-Id: I64e7be0c3ad2087f8c13bcc99d693087e4c6732b
2018-01-25iOS, simplified dylib buildjan Iversen
Change-Id: Icea9a5e4796dda288fafcd478a769fa7087baab2
2018-01-25iOS, corrected directory creation.jan Iversen
the setup mk did not always create the needed directories. and corrected typo Change-Id: I58a40a67d91101504b7802a1fc73105df68a4ca4
2018-01-24iOS, allow orientations for all devicesjan Iversen
Info.plist is no longer limited to ipad Change-Id: Ibe807183fab7e2820e5234fa7fa773fda2c32926
2018-01-23Fix typosAndrea Gelmini
Change-Id: I17e617d89d1b5ad92c5c8218958e86ca722b13e2 Reviewed-on: https://gerrit.libreoffice.org/48435 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2018-01-23iOS: implement tabs for spreadsheetsJon Nermut
Change-Id: I210d68f013e56efd90da004891b872434ce65f68 Reviewed-on: https://gerrit.libreoffice.org/48368 Reviewed-by: jan iversen <jani@libreoffice.org> Tested-by: jan iversen <jani@libreoffice.org>
2018-01-22iOS, performance updatejan Iversen
Set SAL_LOG to empty in SIMULATOR scheme, allowing to easy add +WARN+INFO when testing. Removed duplicate entry in Info.plist Change-Id: I7d0231b0c30fd710e578f91b450c3c16696deb08
2018-01-20iOS: keep track of doc partJon Nermut
- implement swipe left/right and tap gestures for presentations - move some classes to their own files Change-Id: I3ddd3e17ec809c87097d5515f08038bbc969764f Reviewed-on: https://gerrit.libreoffice.org/48231 Reviewed-by: jan iversen <jani@libreoffice.org> Tested-by: jan iversen <jani@libreoffice.org>
2018-01-20iOS: Fix debugging in xcode by making include path non-recursiveJon Nermut
it was picking up the wrong headers in the debugger Change-Id: I0bf6a10504e3b3e9a6eb13355f3f8a4f63a15a1e Reviewed-on: https://gerrit.libreoffice.org/48230 Reviewed-by: jan iversen <jani@libreoffice.org> Tested-by: jan iversen <jani@libreoffice.org>
2018-01-20iOS, remove double [bootstrap]jan Iversen
two bootstrap sections in one rc file seems wrong. Change-Id: Ic7f8eac2d3d07b35736d11ad1fbe705135cb1785
2018-01-18Resolves: rhbz#1535541 fdo#88004 mimetypes are .macroEnabled not .macroenabledCaolán McNamara
Change-Id: If7942ec9d4cd40f29fae2b9a8f76df1ef08bfc17 Reviewed-on: https://gerrit.libreoffice.org/48120 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com>
2018-01-18iOS, directory creation as part of setupjan Iversen
Corrected sequence for creating directories Change-Id: I7a148b5568694c67e382e75a2e1629d3e23bf197
2018-01-18iOS: add a temporarily exposed function that calls ↵Jon Nermut
CallbackFlushHandler::Invoke in order to manually flush the callback queue. To be reverted once the callback problem is solved. Change-Id: I95273b8a01eec62f639edd6767f69e02a294d8aa Reviewed-on: https://gerrit.libreoffice.org/48101 Reviewed-by: jan iversen <jani@libreoffice.org> Tested-by: jan iversen <jani@libreoffice.org>
2018-01-18iOS, avoid racing conflict in dependenciesjan Iversen
WORDIR might be deleted, but generated kept, situation solved Change-Id: I5847d590affa7f80ef734bf314dbee9a6fc81669
2018-01-18iOS: keep track of the keyboard, and scroll the next search result into ↵Jon Nermut
view. Reimplement RenderCache (+2 squashed commits) Squashed commits: [3c3f36f] iOS: quieten warnings [8eae946] iOS: display search results in an overlay view Change-Id: I04a38943d5a22b8e6a52ae854e65f01bf43fda7b Reviewed-on: https://gerrit.libreoffice.org/48100 Reviewed-by: jan iversen <jani@libreoffice.org> Tested-by: jan iversen <jani@libreoffice.org>
2018-01-16iOS, actived SAL_INFO + SAL_WARN in debugjan Iversen
SAL_INFO and SAL_WARN are now sending output to the debugger window (which can be saved to a file, in the xcode menu) Change-Id: I0a9b98f8da469e71c6fd56d624dad446561c1153