This week I made most of LOK methods, except one or two, asynchronous. These methods are now being called in separate thread, and are not blocking the UI at all. You can check the code at my feature branch : feature/gsoc-tiled-rendering.
One important function that I am still not able to call in separate thread is drawing the tiles on the screen. The gtk passes the cairo contexts whenever 'draw' signal is emitted. The drawing works fine if I use this cairo contexts in a synchronous way, but my hack to reference the cairo context, and then use this in separate thread seems to be in vain. I need to look for a more elegant way to handle cairo contexts, and use them asynchronously. I have currently pushed the WIP patch to the branch also that shows my efforts towards making the tile painting asynchronous. After testing the widget a bit after these commits, these, except the last WIP one, do not seem to produce any regression for the widget. Next Steps: I will do more research on using cairo contexts asynchronously, and then gradually move over to the integration part. -- Regards, Pranav Kant http://pranavk.me _______________________________________________ LibreOffice mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice
