summaryrefslogtreecommitdiff
path: root/vcl/ios
AgeCommit message (Collapse)Author
2013-10-17Tiles: Documentation of the parameters.Jan Holesovsky
Change-Id: Ibe31a105972cee2aff9b6896cdd80bd93a1a0e7d
2013-10-17added draw tile signature and select all fixptyl@cloudon.com
Change-Id: I6118c55caa12d9ba52000f89e869e27b218859be
2013-10-15New iOS client codeptyl@cloudon.com
does not work yet - needs fix by tor after refactoring of ios-bootstrap.h Change-Id: I0728306beb734511bd3f16e2e4922fd726bb37da
2013-10-13Minor refactoring of iOS codeTor Lillqvist
Rename functions so that functions called by the UI layer for actions to happen in the LO layer and functions called by the LO layer for things to happen in the UI layer use different prefixes. Move declarations to the generic <touch/touch.h> and avoid iOS-specific types in the API. Change-Id: Ieb8979065e02a87c4a415c934163265f2790d011
2013-10-11iOS experimental app support for selection marking via long press gestureptyl@cloudon.com
Change-Id: Ib7a71797a2dc967f9d8ddd60fdc10c78201a87c8 Reviewed-on: https://gerrit.libreoffice.org/5911 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2013-10-09Fix for iOS scroll by pixels, and pinch to zoomptyl@cloudon.com
Minor further changes by tml to match the coding style of surrounding code mainly. Change-Id: Ied6087a264f1c6b00763ea36fba9808329afede4 Reviewed-on: https://gerrit.libreoffice.org/5742 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2013-09-12in iOS avoid copying covered windows to screentsahi glik
Change-Id: Iebf53e5c2e3909e068739351ccce497ca91b67a5 Reviewed-on: https://gerrit.libreoffice.org/5710 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2013-09-12Sync IOS screen invalidate to end of painttsahi glik
Change-Id: If179c5280366a377ace710e4acf7df737544b224 Reviewed-on: https://gerrit.libreoffice.org/5706 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2013-07-12Turn basebmp::Format into a proper enumStephan Bergmann
Change-Id: I4067c5039c7b5c74a1c144721dd7260de54dd2bf
2013-06-26There is already the AddTempDevFont() in coretextTor Lillqvist
Change-Id: I384e9d499eedbe87030417952bf057b16cf549d2
2013-04-19Add pan gesture handlingTor Lillqvist
I get exactly the same kind of artefacts as in the Android app, which I guess is good as it is at least consistent, as the implementation at the LO layer is identical... Change-Id: Icf0690fd2c48a133cb66de2ab7977b7088d2199e
2013-04-16More orientation experimentation and hackingTor Lillqvist
Now it re-orients and re-sizes the LO "frame" correctly upon rotation, but it still starts wrongly if starting in landscape orientation. Change-Id: I4c12a7e00d687391435a47400b6e8b4c7e49bdda
2013-04-16Try to propagate display size change to LOTor Lillqvist
Change-Id: If52c0aa9290c377c08f2cec8c9e36d987c0ed9b6
2013-04-14Add lo_keyboard_input()Tor Lillqvist
Change-Id: I5904f673de9854af47eefac2f192295a281c5525
2013-04-13Add experimental lo_keyboard_did_hide() implementationTor Lillqvist
Change-Id: I24a7449848710c0e09a4bf0da0d906d30a59f0bd
2013-04-07mass removal of rtl:: prefixes for O(U)String*Luboš Luňák
Modules sal, salhelper, cppu, cppuhelper, codemaker (selectively) and odk have kept them, in order not to break external API (the automatic using declaration is LO-internal). Change-Id: I588fc9e0c45b914f824f91c0376980621d730f09
2013-04-07Bin some not longer interesting NSLoggingTor Lillqvist
Change-Id: I1afd93fc9a56e85a30991bce9ca2350764cf1ec2
2013-03-31Revert "Try redrawing in multiple phases to avoid blocking the UI thread too ↵Tor Lillqvist
long" This reverts commit 3aae02d02d418222b0b51748008ed5c9c1f1d3c2.
2013-03-31Try redrawing in multiple phases to avoid blocking the UI thread too longTor Lillqvist
When initially calling lo_render_windows() from a redrawRect(), just post the user event asking for a redraw of the (headless) windows, and return without actually drawing anything to the context. Then when the RenderWindows() callback for that user event eventually gets called (which during startup and/or loading of a document might be several seconds later, as there is lots of other activity going on also as "user events"), ask the UI thread for a fresh redraw, and wait for lo_render_windows() in that phase to signal the actual redraw of the "headless" windows into the context. Unfortunately this doesn't work well enough. It is not a good idea to not draw anything in response to a drawRect() it seems. The affected rectangle gets initialised to black. So there is now irritating flashing. One sees an almost ready document (and the UI elements which still are there), but then it goes away for some time before finally re-appearding. Quite silly. So I will revert this, and I am committing it just to keep the code for reference in git. Change-Id: I9ee490345f093d80113c36f9e3268cab5a810dd0
2013-03-30Unbreak use of pthread condition variablesTor Lillqvist
I am not really satisfied yet with how the UI redrawing in the app now works (during startup, which of course is more or less all the app does so far). It can take quite some time before a "link" (function to be called) posted with PostUserEvent() gets run (if there are lots of time-consuming other "user events" in the queue already, or something?), and blocking the UI thread for that time is not acceptable. Will have to come up with some more complicated solution. Change-Id: Icab20183df3bc4980ae33f0502d10397802cc391
2013-03-30Render the "headless" frames to the UI view in the LO threadTor Lillqvist
We used to render them in the app main (GUI) thread, which is dangerous, accessing the headless frames in one thread while the LO thread (where the "main" LibreOffice code is running) might be updating and changing them. This fixes some problems like that part of the document did not show up. If I would test the app on a multi-core iPad, presumably I would have seen even more problems. But this also introduces new problems: Now the UI doesn't appear incrementally (for instance, with an actually progressing progress bar during the loading of the document) as it used to. Now it all appeads all of a sudden, everything at once. Which would be fine if it happened very quickly after starting the app, but it doesn't... on the original iPad it takes half a minute. Change-Id: I04068e0d884aa5cb86acefa76449aac4e081b193
2013-03-30IosSalInstance::BlitFrameToBuffer() and RedrawWindows() are unneeded nowTor Lillqvist
Change-Id: I6873461aed7db7b7f06e45556eacb82bcf118aea
2013-03-30Draw the frame virtual device bitmaps directly to the destination CGContextTor Lillqvist
Much faster. No need for the pixelBuffer inbetween. Change-Id: I6493faca6da3a3e9a1285e00c887928b85dca56e
2013-03-30Refactor the iOS Viewer app and rename it to "LibreOffice"Tor Lillqvist
No, it isn't any closer to being "ready" despite the name, but still, using the current approach, it clearly isn't restricted to be just a viewer. Also drop the verbose LOViewer prefix from class and file names in it. Change-Id: Ib4e8a31d6fa1b35169ee98cf2aa8f0f22957164c
2013-03-30Add lo_tap()Tor Lillqvist
Change-Id: I635be54c27c93de0a11be7bdd01979b99dadda28
2013-03-26Improve the blitting, use memcpy for each rowTor Lillqvist
Change-Id: Idfc5efe8b2326748670fec82a7780f81b243dbc8
2013-03-26Introduce temporary lo_set_view_size() hack like on Android and call itTor Lillqvist
Change-Id: I44df0946f59d1b9a2a6ea935b3c2ea3c96c1260d
2013-03-26Don't exit intentionallyTor Lillqvist
Change-Id: I1d4c7dbc8ed9254e92d097454704c811ba1532f1
2013-03-21Re-work the vcl aspects of the iOS portTor Lillqvist
Don't try to use similar code as for OS X to manage windows, events etc. I.e. don't use UIKit in vcl to do that. Instead, just do as in the Android port, use the "headless" vcl backend. Do keep using CoreText, though, not FreeType & fontconfig. Start changing the iOS "Viewer" app to correspond to the Android "desktop" app (so it should be renamed). Work in progress since a long time, several crucial details still missing, but committing for now. Change-Id: Iac5fbf8def415e4d0d21e5200450a373420ad7ee
2013-03-21avoid Wundef / fix endian detectionLuboš Luňák
2013-03-19removal of RTL_CONSTASCII_USTRINGPARAM for quoted OUStrings declarationsThomas Arnhold
s/(OUString\s+[a-zA-Z_][A-Za-z0-9_]*\s*)\(\s*RTL_CONSTASCII_USTRINGPARAM\s*\((\s*"[^")]*?"\s*)\)\s*\)/$1\($2\)/gms Change-Id: Iad20f242c80c4bdc69df17e2d7a69d58ea53654b Reviewed-on: https://gerrit.libreoffice.org/2835 Reviewed-by: Thomas Arnhold <thomas@arnhold.org> Tested-by: Thomas Arnhold <thomas@arnhold.org>
2013-03-19automated removal of RTL_CONSTASCII_USTRINGPARAM for quoted OUStringsThomas Arnhold
Done with a perl regex: s/OUString\s*\(\s*RTL_CONSTASCII_USTRINGPARAM\s*\((\s*"[^")]*?"\s*)\)\s*\)/OUString\($1\)/gms Change-Id: Idf28320817cdcbea6d0f7ec06a9bf51bd2c3b3ec Reviewed-on: https://gerrit.libreoffice.org/2832 Reviewed-by: Thomas Arnhold <thomas@arnhold.org> Tested-by: Thomas Arnhold <thomas@arnhold.org>
2013-03-18Don't do any own auto-cleanup of aurorelease pools on iOS when a thread endsTor Lillqvist
According to documentation, the system does it automatically. Testing seemed to confirm that, with the code still in I got mysterious crashes. Not sure if the corresponding code is unnecessary or wrong on OS X, too. Change-Id: I14e9f5bcc0376e9235f8d36b484b38c1e44932c4
2013-03-18SalData::drainThreadAutoreleasePool() is unusedTor Lillqvist
Change-Id: Idbb98b32ffc5970e236c9d319e0e8791b855e283
2013-03-16mnSystemVersion not usedTor Lillqvist
Change-Id: Ief800f1228bca327fd8d77a78fa332639f5d5f69
2013-02-24fdo#38838 searched, replaced and removed String::CreateFromInt32().Jean-Noël Rouvignac
I ran the following code replace: s/(Uni|Xub)?String\s*::\s*CreateFromInt32/OUString::number/ And finally removed String::CreateFromInt32(). Change-Id: I53b26a59c68511ae09f0ee82cfade210d0de3fa5 Reviewed-on: https://gerrit.libreoffice.org/2279 Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org> Reviewed-by: Thomas Arnhold <thomas@arnhold.org> Tested-by: Thomas Arnhold <thomas@arnhold.org>
2013-02-12fdo#46808, use constructor for datatransfer::MimeContentTypeFactoryNoel Grandin
Change-Id: I576a472e22ad0e3798f4b34d808ac320f13d3e6d
2013-01-30Remove unused DeInitSalMainStephan Bergmann
Change-Id: I8fd733fe6535cc4f9f299f53adc1821ce344a85c
2013-01-19AquaSalBitmap and IosSalBitmap were identical so unifyTor Lillqvist
Call it QuartzSalBitmap. The more we get rid of that "Aqua" term the better. Aqua is the name of a visual theme, not of an API. The Quartz 2D API is shared between OS X and iOS.
2013-01-19De-duplication of CoreText code and headers for OS X and iOSTor Lillqvist
Nominally renamed the AquaSalGraphics class to QuartzSalGraphics, as it isn't now then "Aqua" (Mac OS X) specific any more. Actually, for Mac OS X, because lots of code in vcl/aqua expects it to be called AquaSalGraphics (just like the alternative class used when using the obsolete ATSUI API on Mac OS X), use a #define to make it still be called AquaSalGraphics to the compiler's eyes. For iOS it can be called QuartzSalGraphics.
2013-01-19Use SAL_INFO instead of home-grown msgs_debugTor Lillqvist
If there is a need to optionally get a thread identifier or the function name into logging output (as msgs_debug did), we should figure out a way to do that in some elegant fashion in the sal logging macros instead of using some local solution in just one place in the code. Yes, the iOS and OS X CoreText code should be de-duplicated. Will happen soon.
2013-01-19Fix iOS bit-rot and unify with OS X CoreText codeTor Lillqvist
Adapt to the fairly pointless privatisations here, too. Unify with the OS X CoreText code. Yeah, probably should unify physically, i.e. use the same source files for both, with as little ifdefs as possible. Change-Id: I63bc477f0c979769bb995db37a3c4194e8091b30
2013-01-15fdo#46808, Adapt SystemClipboard UNO service to new styleNoel Grandin
this is the datatransfer::clipboard::SystemClipboard service Change-Id: I00227a2d84e2f1eaf9ca1ebb4fbe1f1548a6621d
2013-01-06I don't think InitSalMain() needs to do anything on iOSTor Lillqvist
Change-Id: Ib59f9cf7c60796fd091de64fabdd6c10a3fec5e5
2012-12-23WaE: non-constant-expression cannot be narrowedTor Lillqvist
Change-Id: I401fd149e62d74a96edfc2a7e5105fb2cc95f0c7
2012-11-28Remove useless method SetBackgroundBitmapMarcos Paulo de Souza
Thomas Arnhold asked me to take a look at the method SetBackgroundBitmap. In my XFCE, removing this method didn't chnage anything. So this needs more tests in Windows and other WM's. Change-Id: I3e10bea4eac114326ff981fb21ba0d292818b1da Signed-off-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
2012-11-20Enforce use of accessors on gen.hxx structuresMatteo Casalin
Change-Id: Icd1b2937fdeaba6de1877258731f53ddf996002e Reviewed-on: https://gerrit.libreoffice.org/936 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com>
2012-11-13Avoid global static dataStephan Bergmann
...that (indirectly) allocates memory via rtl/alloc.h, thereby causing the rtl_cache_wsupdate_init thread to be spawned before main, as on Mac OS X that would interfere with the code in sal_detail_initialize to close all file descriptors >= 3 -- on Mac OS X the pthreads implementation makes use of KQUEUE file descriptors. * This commit removes enough global static data to make ui-preview work again on Mac OS X (where it crashed at startup when the main thread closed the KQUEUE fd used by pthreads implementation threads). gengal uses further static data (at least from module sb), so needs further clean-up. * Avoiding global static instances derived from class Application required the introduction of vcl/vclmain.hxx. * That the vcl library was linked against the static vclmain library (which only provides an implementation of main) appears to me to be a historic relic (all executables should either include a SAL_IMPLEMENT_MAIN or link against vclmain), so I removed that. Change-Id: I048aa616208cb3a1b9bd8dcc3b729ba1665729bd
2012-11-12Another attempt at fixing icu linkage as externals.Michael Meeks
2012-11-12Un-break accidental mis-merge, or somethingTor Lillqvist
Change-Id: I13146dc6d1d854dd620f79f2f7e7b22f8bdb71b2