Miklos Vajna (Consultant Software Engineer, LibreOffice)
LibreOffice Writer has a huge amount of features, and sometimes one feature is inconsistent with an other one, or the way a similar feature is implemented in an other application, e.g. in Calc or Impress. The talk will mention how table selection got improved, how the UI now allows you to reject a spelling error, how Writer can now create .dot files and similar improvements. Come and see where we are, what still needs to be done, and how you can help.
Wednesday from: 13:30 ~ to: 14:00
Inconsistencies Fixed in Writer
Kohei Yoshida (Software engineer at Collabora)
4.2 releases were perhaps most memorable in my whole LibreOffice history. I will discuss how that experience went; what I expected, and what actually happened, what were the pitfalls and how they should be handled in the future, and how all of that experience will affect the future maintenance of this code base going forward.
Wednesday from: 15:00 ~ to: 15:30
Tor Lillqvist (Software engineer at Collabora)
If you read the instructions for submitting apps to the iOS App Store very carefully, you will find it mentioned that the executable in an app must be less than 60 MB in size. (The size limit of other files included in the app is so high, if there even is one, that it is not likely to be a problem. But note that all executable code must be in the single executable. No dynamic libraries are allowed.) This restriction is very easy to miss. It poses a problem for meaningful apps that use LibreOffice code to load, display, and perhaps modify and save documents. Not because such an app would necessarily actually invoke anything close to even 50 MB of code from LibreOffice, but because of the large amounts of code and data that gets linked in anyway. This talk describes some of the more or less extreme measures introduced when that restriction was noticed, in order to get below the limit.
Wednesday from: 16:00 ~ to: 16:30
Squashing the beast into 60 MB Cage
Bjoern Michaelsen, Markus Mohrhard (Software Engineer, Collabora)
Roundtable on unittests, continous integration and test-driven development. What tools do we have right now (testsuites, tinderboxes, code analysis, gerrit, etc.), which tools do we need? How do we foster a culture of tests on this legacy codebase? This session invites all contributors to brainstorm on these questions.
Wednesday from: 16:30 ~ to: 17:30
Slides not available yet
An overview of the new 3D model support in Impress. LibreOffice uses more and more OpenGL solution behind the user interface, but now it appears for the users in a direct way. With the new 3D model support we can display any 3D scene in our slideshow. In this talk I will demonstrate how these models look like on the slides and on what ways can we play with them during our presentation.
Wednesday from: 17:30 ~ to: 18:00
LibreOffice is a large codebase and building it takes a lot of build time and disk space. This talk will present some tools and ways that can help reduce them (ccache, icecream, split debug info and others).
Thursday from: 09:00 ~ to: 09:30
LibreOffice Building Tips and Tricks
Michael Meeks (General Manager, Collabora Productivity)
Beginners often find it hard to get into the codebase and work out where pieces of code are, and/or where they should be. I'll present a graph of the internal modules' dependencies and try to explain some of the basic building blocks the code is constructed from. Come and find out how the pieces of LibreOffice go together, and help me puzzle out some of the more obscure and mystical module names.
Thursday from: 09:30 ~ to: 10:00
Slides not available yet
I am not the author of drawinglayer - and it appals me how on one hand the drawinglayer became a core technology of LibreOffice, and on the other, how little information about it is available, understandable, and shared inside our community. This talk will summarize my experience with drawinglayer, and will attempt to break down the drawinglayer complexities into smaller pieces that can be useful for every LibreOffice developer.
Thursday from: 10:00 ~ to: 10:30
drawinglayer : What Should You Know about It
Tomaž Vajngerl (Software engineer)
In LibreOffice we extensively test ODF and OOXML formats (import, export and round-trip). Other formats, especially common vector graphic formats, aren't tested as much as they could be. We need to improve that.
Thursday from: 10:30 ~ to: 11:00
Techniques Used for Testing of HTML, SVG, WMF/EMF Formats
Michael Stahl (Software Engineer at Red Hat, Inc.)
As anybody who uses remote UNO connections is aware, the legacy code-base of LibreOffice is riddled with subtle concurrency bugs. This talk is an airing of grievances and investigation into the nature of the problem, with the aim of providing an estimate as to how doomed we are, exactly.
Thursday from: 11:00 ~ to: 11:30
LibreOffice is known as a Swiss Army knife of file formats. This is mainly du to the impressive number of import filters integrated since the project was born. This hands-on will give a quick overview about different frameworks that can be used by import filters within LibreOffice. It will also guide the audience through an implementation of a dummy file-format importer using the librevenge framework. The result of this workshop will be a skeleton library that can be used to write an import filter for your preferred file-format.
Thursday from: 11:30 ~ to: 12:00
Slides not available yet
Adam Fyne
(Interoperability Team leader, CloudOn / Member of the Board of Directors, The Document Foundation)
When working together on documents, users tend to choose to work with the same tool that their colleagues use so as to be compatible and avoid format conversion. This helps traditional leading office tools like Microsoft Office to create stickiness and attract all the users to their dominating file format. To disrupt this cycle it is not enough to allow importing of formats like OOXML into LibreOffice. Only by making LibreOffice truly compatible with Microsoft Office OOXML format, will we allow users to work with LibreOffice without having to be concerned about the office tools chose by their colleagues. In the past year, CloudOn has invested tremendous resources to improve the way LibreOffice imports and export DOCX documents. In this talk we are going to discuss the work that CloudOn, alongside Collabora, Igalia & Synerzip have put into LibreOffice Writer in the past year to support OOXML better, different mechanisms which have been introduced into Writer to allow for better preservation of objects & methods to test thousands of files. In addition, a comparison which has been done between LibreOffice and GoogleDocs will be presented. Topics of Discussion
Thursday from: 13:00 ~ to: 14:00
Slides not available yet
Michael Meeks (General Manager, Collabora Productivity)
A BOF session, where developers can get together to chew over the next big opportunities for improvement in the code-base, and catch up with status on existing re-factorings. Several areas of work will be highlighted, from re-using LibreOffice code, to threading and rendering infrastructure, VCL widget lifecycle and more.
Thursday from: 14:00 ~ to: 15:00
Slides not available yet
Tomaž Vajngerl (Software engineer), Tor Lillqvist
Handling a mobile application is quite different from a user's perspective than a desktop application. LibreOffice being a desktop application did not have the infrastructure not the user experience that is expected from a mobile application. This talk presents the making of LibreOffice on Android which is an attempt of a LibreOffice mobile application. In the first part of the talk we will present the lower-level work: adapting LibreOffice to Android platform and interfacing with an Android Java application. The second part is about the higher-level work: creating "LibreOffice on Android" application based on Mozilla Fennec code.
Thursday from: 15:00 ~ to: 15:30
Markus Mohrhard (Software Engineer, Collabora)
In this talk we will discuss how to use OpenGL in Libreoffice. Historically OpenGL was a build requirement that made it difficult to distribute features based on OpenGL. With some of the new development and support for OpenGL in vcl it is easier than ever. The talk will detail how to use OpenGL and how to use the modern OpenGL support based on shaders and OpenGL 2.0+.
Thursday from: 16:00 ~ to: 16:30
Slides not available yet
Eilidh McAdam (Open Source Software Developer and Consultant)
Mail merge is most often required by organisations such as government bodies and businesses. As a consequence, it hasn't had a lot of attention compared to issues faced by individual users. I'd like to talk about how it works in LibreOffice, the problems faced by users and recent improvements made to the feature.
Thursday from: 17:30 ~ to: 18:00
Shachar Binyamin (Product Manager, CloudOn)
For CloudOn, this is the story of the ultimate document creation experience for mobile. You know that annoying problem of not being able to use your fingers to manipulate and create rich content in documents? You know that frustration you feel when you have extremely limited space to read and review documents on tablets and phones? You know the problem of accessing, editing and sharing documents on mobile? Well, we feel the pain from these problems as do our users. We took on the challenge of solving these problems and we believe we have created a tool that is magic, fast and fun. Shachar will talk about how CloudOn defined, designed and developed a successful application that users care about on the Libre Office core. Topics that Shachar will cover:
Friday from: 09:00 ~ to: 10:00
Slides not available yet
The talk would discuss CloudOn's effort over the last year, to use libreoffice, so to power a full touch office experience for mobile devices. Talk would focus on writer and iOS, with respect to the following:
Friday from: 10:00 ~ to: 11:00
Slides not available yet
Sushil Shinde (Sr. Software Engineer, Synerzip Softech Pvt Ltd)
OOXML is a widely used file format. Many people, organizations, schools etc. use OOXML file formats. Currently Libreoffice can read/edit/save OOXML file formats. But there are many open bugs for writer OOXML interoperability. Many features are either not supported or not handled properly. We can fix them by studying XML values from docx files. Currently many files gets crashed while opening on LO and if LO opens them properly then it corrupts some files while saving. I will cover some best practices to improve interoperability. I will also showcase improvements in features which are widely used. Topics will be covered in presentation.
Friday from: 11:00 ~ to: 12:00
Easy Hacks to Improve Writer - OOXML Interoperability
Jacobo Aragunde (Software Engineer, Igalia)
The purpose of this presentation is to provide participants with a basic understanding of LibreOffice accessibility. It will begin with a brief introduction to accessibility support, including the challenges assistive technologies are meant to address and how they are able to do so through the implementation of accessibility APIs. With this background having been established, the remainder of the session will be spent examining the specific case of LibreOffice: which accessibility backends are implemented and how the architecture is designed to support multiple backends while maximizing code reuse, making the addition of new backends easier. The presentation will conclude with a discussion of the current health of LibreOffice accessibility supported by an analysis of bug trends and repository statistics.
Friday from: 13:00 ~ to: 13:30
Overview and Status of LibreOffice Accessibility
Our widget framework, VCL, provides LibreOffice with many widgets you can use in the dialogs, and other user interface elements, like buttons, list boxes, etc. But sometimes you need to create a custom widget – one that behaves & appears in a special way. This talk will describe the essentials of creating custom widgets, what methods to implement, and how to plug it into the dialogs and other user interface elements.
Friday from: 13:30 ~ to: 14:00
We run the development version of LibreOffice through the static analysis coverity tooling on a regular basis. This lightning talk presents the current status, overall trends and common pitfalls on taking coverity warnings at face value.
Friday from: 14:00 ~ to: 14:30
Coverity and LibreOffice, Current Status
Markus Mohrhard (Software Engineer, Collabora), Bjoern Michaelsen
Testing is a central part of the development process. In this talk we will discuss the various techniques used in the Libreoffice code base and how to use them. All the concepts will be discussed with examples from the Libreoffice code base. Additionally we will discuss the benefits of a test driven development environment.
Friday from: 14:30 ~ to: 15:00
Slides not available yet
László Németh (Software developer, LibreOffice consultant)
LibreLogo.org is dedicated to the easy, Logo-like programming environment of LibreOffice for turtle vector graphics. The talk provides a brief glimpse into the motivations, results and future plans of developments of LibreLogo and LibreLogo.org, and it shows the best illustrations of the upcoming LibreLogo picture book. Link: http://www.librelogo.org
Friday from: 16:00 ~ to: 16:30
Stephan Bergman (Software Developer at Red Had, Inc.)
Modern C++ compilers like Clang and GCC are more and more becoming tool sets that can be individualized and adapted to the needs of a specific code base. Plugins find bugs in the usage of certain LibreOffice code idioms already during compilation, and help us guarantee some invariants about the code that in turn allow us to modify it with confidence. Runtime support to precisely detect various causes of undefined behavior is becoming ever cheaper and easier to use. Mix in evolving C+11 support, and we are on a good way to stay ahead of our ever-growing code base. This talk will give an overview of what is available in our tool box, and demonstrate how to leverage it effectively.
Friday from: 16:30 ~ to: 17:00
Markus Mohrhard (Software Engineer, Collabora)
This talk discusses the development in the chart module in the last year with a special focus on 3D charts. Some of the new features like property mapping, time based charting and 3D scene support will be discussed.
Friday from: 17:00 ~ to: 17:30
Slides not available yet
Matus Kukan, Michael Meeks (General Manager, Collabora Productivity)
Come hear how Matus Kukan and I significantly accelerated XML parsing using the XFastParser interface in LibreOffice; see the befores and the afters, hear about some of the other sillies in OOXML parsing, and hear about what is necessary to do in the ODF filters to make use of this.
Friday from: 17:30 ~ to: 18:00