[GSOC] Tiled Rendering, ahunt, Weekly Report 10 / WK30
andrzej at ahunt.org
Mon Jul 28 10:59:09 PDT 2014
On 28/07/14 18:29, Michael Meeks wrote:
> Hi Andrzej,
> Wow - some great work here =)
> On Mon, 2014-07-28 at 10:23 +0200, Andrzej Hunt wrote:
>> * Moved lok_init from shim.c into LibreOfficeKit.h
>> (i.e. killing the static library)
>> ** https://gerrit.libreoffice.org/#/c/10584/
> Nice idea; a few comments in the gerrit commit =)
Yep, I'll try and get a new version prepared.
>> Some screens of calc/impress with images visible are attached.
> Beautiful stuff =) how are the APIs for determining number of pages /
> their page sizes; and toggling the various features there - sheet
> numbers, speaker notes etc. ? =)
Currently only sheet/slide number determination/selection, and document
size determination is implemented (i.e. all the functions that are
actually in LibreOfficeKit.h/.hxx are implemented), still to be added are:
* Toggling between slides and combined slide + notes (there's no direct
way to get /just/ the notes -- but I imagine that just needs a bit of
digging). (Currently we show /just/ the slide.)
* Sheet names
* Getting embedded objects separately.
> Anyhow - encouraging progress ! would like to get more of this merged
> into master; what are we blocking on there for calc eg. ?
* soffice_main: I think is more or less mergeable, but a review would
be nice to make sure I'm not doing anything silly. (This enables
images to be shown in impress and calc.)
* Calc: still needs some more fixing to make sure the normal UI works
(+ some border issues, this seems to be mostly a case of replacing a
hardcoded 1 pixel with pixelToLogic(1)). I'm not really sure how
long this will actually take as the code is quite complex here (but
I've been concentrating on getting the various other pieces to make
writer/impress work well recently).
Also, for completeness sake, the other stuff I still need to do:
* Deal with the lock-file issue: opening a locked file will currently
cause failure (as the unlock dialog fails if cancelled, and headless
mode cancels all dialogs). We'd either need to have separate handling
for LOK, or open files read-only. Not quite sure what's cleverest.
(LOK doesn't support any in place editing of files for now, but I
suspect that's where we want to head with tiled rendering at least.)
** Maybe we could have some sort of callback, so we could show our own
dialog and/or choose to ignore the locked-ness of the file?
* Add better debug output to framework/sfx2, which currently seem to
discard various exceptions, making it impossible to determine why
document loading is failing on some TBs.
* Calc: have some method of determining sheet size when we have text
extending beyond a given cell: currently we take the sheet size
as the max( [Area of cells with content], [Drawinglayer size]), but
if we text that belongs to a cell extending beyond this area then
it won't be counted as part of the sheet (i.e. simplest example
is a single cell with a very long sentence, we will only see whatever
fits into the cell and the rest is cut off / the tiled rendering
client will be unaware that there is text outwith the document
I think it's probably best to concentrate on getting what is in master
working well (i.e. the remaining API surface + soffice_main), after
which I could get back to making Calc mergeable -- not too sure how
important the lock-file issue really is though for realistic use.
More information about the LibreOffice