Status of LibreOffice for Android and iOS

Here’s a quick status update on LibreOffice for Android and iOS (iPhone/iPad).

LibreOffice is an application for desktop platforms, including Linux, macOS and Windows. The Document Foundation, the non-profit entity behind LibreOffice, is currently focused on delivering the best experience on the desktop. (There is also LibreOffice Online, a cloud-based version of the suite, for use in web browsers.)

While The Document Foundation doesn’t currently offer an Android or iOS version of LibreOffice, there is a LibreOffice-based product in app stores from Collabora, one of our certified developers and ecosystem members:

(More apps will be added to this list as they are developed and released.)

For more technically-oriented users: our developer community has been working on a mobile app, LibreOffice Viewer for Android, which also includes experimental editing support. This is not yet ready for widespread usage, but work is ongoing. (Binary builds are also available on F-Droid, but may not represent the latest state of the code.) If you’re familiar with Android app development, we’d appreciate your contributions!

Improvements in LibreOffice’s PowerPoint presentation support

LibreOffice’s native file format is OpenDocument, a fully open and standardised format that’s great for sharing documents and long-term data storage. Of course, LibreOffice does its best to open files made by other office software as well, even if they’re stored in pseudo-“standards” with cryptic and obfuscated contents. Compatibility with PowerPoint PPT(X) presentations is therefore a challenge, but developers are working hard on improvements…

In September 2019, we announced an initiative to improve the support of PPT and PPTX files in LibreOffice. A summary of achievements was published later that year. Now it is time for another review.

Everyone is invited to participate in the PowerPoint support initiative, either in development or testing. If you are interested in joining, please send an email to ilmari.lauhakangas@libreoffice.org.

Import/export

nd101 (PPT/X team):
Preserve table background colour when importing PPTX file

Table before nd101’s fix
Table before nd101’s fix
Table after nd101’s fix
Table after nd101’s fix

Preserve text position when importing PPTX file

Text position before nd101’s fix
Text position before nd101’s fix
Text position after nd101’s fix
Text position after nd101’s fix

Ayhan Yalçınsoy:
Export the scaling handle of custom shape


Gülşah Köse (Collabora):

Import table style in PPTX

No table style before before Gülşah’s fix
No table style before before Gülşah’s fix
Table style correct after Gülşah’s fix
Table style correct after Gülşah’s fix

Missing bullet in Smartart

Extra margin on second list level in SmartArt

Missing bullet and extra margin before Gülşah’s fix
Missing bullet and extra margin before Gülşah’s fix
Bullet and margin correct after Gülşah’s fix
Bullet and margin correct after Gülşah’s fix

Tamás Bunth (Collabora):

Chart labels in PPTX appear as “[PERCENTAGE]”

Chart labels before Tamás’s fix
Chart labels before Tamás’s fix
Chart labels after Tamás’s fix
Chart labels after Tamás’s fix

Performance

Gülşah Köse (Collabora):

Presentation does not move forward in Linux (not smooth in Windows)

A big thanks to everyone who helped out! We look forward to further updates.

LibreOffice Macro Team: progress report

Macros help users to automate common tasks in LibreOffice. In September 2019 we announced a new team in our community to work on macro support. A progress report was published in November 2019, so let’s review everything that happened since then.

If you are interested in contributing to the macro team (development, testing or documentation), we’d love to hear from you – please send an email to ilmari.lauhakangas@libreoffice.org and we’ll get in touch.

Wiki docs

Thanks to Nathan Ullberg, many wiki articles previously only available in French can now be read in English as well. Nathan also updated existing articles and created an article about manipulating LineShape objects in Impress. Detailed lists of his work can be found on his wiki user page.

Alain Romedenne worked alongside Nathan with the macro articles and translations. He added LibreOffice Basic cheatsheets from Jean-François Nifenecker into the wiki and created a new article concerning input/output to screen with Python. Alain also started creating syntax diagrams for LibreOffice Basic.

Code contributions from macro team members

Andreas Heinisch:

Alain Romedenne:

  • Tests for VBA Enum statement, VBA Err object raise method and LibreOffice Basic Property Get/Set

Code contributions from honorary associate members

Mike Kaganski (Collabora):

Samuel Mehrbrodt (CIB):

Jan-Marek Glogowski (CIB):

Caolán McNamara (Red Hat):

Stephan Bergmann (Red Hat):

  • Various internal improvements to stability

Help content

Improved by Alain Romedenne:

Added by Alain Romedenne:

Improved by Mike Kaganski (Collabora):

Improved by Stephan Bergmann (Red Hat):

Thanks to everyone who worked on these tasks! Everyone is welcome to join our community and get involved – just email ilmari.lauhakangas@libreoffice.org and we’ll get back to you.

Announcing the LibreOffice Help editor

News from the documentation community: The Help project of LibreOffice underwent a major revamp in the last couple of years, with the introduction of the browser-based Help replacing the old Writer-Web solution. Still, editing the Help XML files (XHP) continued to be very hard for any volunteer or skilled developer, due to the specifics of the XML dialect and time required to be proficient in writing Help pages, which continued to be a major block for any individual.

To address the issue, we developed an online editor to assist and make textual editing quicker for any Help writer, by featuring the possibility of rendering the help page at once, at the click of a button. Also, we implemented a series of checking, including XML validity and the verification of ID unicity, crucial for translation.

Editor mains screen
Editor main screen with page loaded

The Help editor is available at https://newdesign.libreoffice.org/xhpeditor/index.php and contains features that greatly improve and simplify the XHP editing process. For instance, the menu allows users to write content in plain text and the wrap each text segment into the proper XHP tag. For example, after writing a paragraph in plain text, select the text and choose menu Paragraph – <paragraph> to wrap the text into a paragraph tag with the benefit of adding a unique identifier for the paragraph, which is vital for the translation process of LibreOffice Help.

Another nice feature is the editor autocompletion, which allows user to type only the start of a tag name and the editor suggests the rest of the name, sparing the energy spent in typing the whole tag name. When adding any tag to the text, the autoclose feature adds the closing tag automatically. Users can also press F11 to display the editing area in the whole browser area, enlarging the editing space, or even press Ctrl+F to open a search and replace window in the editor.

Page verification
Help page verification

You can open and save a local XHP file and select Tool – Render page to have it displayed in the browser area. Or you can copy the XHP plain text and paste in the editor area to continue edition. The XHP editor uses CodeMirror, a popular JavaScript editor with many, many interesting features.

Detailed instructions and a short User manual are available in the wiki page https://wiki.documentfoundation.org/DocumentationHelpEditor and can also be accessed from the editor Help menu. To read the XHP dialect reference , use menu Help > XHP Reference.

We hope the editor will encourage volunteers to address the challenge of writing and updating the Help pages. We are eager to receive suggestion and contributions to the editor project. Come and join us!

LibreOffice power feature: join text boxes after importing PDFs

Although PDF is primarily used as a read-only format, there are tools for editing PDFs – and indeed, many people pay quite a bit of money for these tools, such as Adobe Acrobat Pro.

But there are alternatives! LibreOffice Draw provides a powerful PDF editor, for free, and since LibreOffice 6.4 it has a great feature to speed up editing: the ability to consolidate (join) multiple text boxes. This is especially useful if you’ve imported a PDF, and the text content is spread across multiple text boxes, making it hard to work with.

Let’s see it in action. Imagine you’ve opened a PDF document in LibreOffice Draw, and there are lots of separate text boxes, like this:

This is fiddly to work with – wouldn’t it be great if you could join all of these text boxes together, to edit them as a single chunk of text? Well, in LibreOffice 6.4, you can. Just select all of the text boxes, using the shift key while selecting them, then right-click and choose Consolidate Text in the context menu:

Now, the three text boxes are joined into one, so you can edit the text as a single item:

Download LibreOffice and try it out!

See the online help for more tips and guides, and Ask LibreOffice if you have any questions!

Our new extensions and templates page is getting ready!

Our old Extensions and Templates Website has worked well over the years. It is one of the key and most frequented websites of the LibreOffice project, as it enables users to enhance the functionality of LibreOffice with add-ons and plug-ins, while providing an easy way for authors to improve LibreOffice.

We’d like to express a special thanks to Andreas Mantke for implementing, designing and maintaining it in first place! It was his initiative to come up with such a website and he has spent countless hours over the past years to maintain the site to the benefit of our community. Kudos and thank you so much for your help and dedication!

As we look forward, we’ve been thinking about how to progress, while building on some of the other technologies we use.

After research and evaluation of various options, we’ve made the decision to update the website and base it on SilverStripe, the content management system we use for the main LibreOffice website. Our goals include:

  • Streamlined design
  • Improved usability for authors and users
  • Make extensions very prominent
  • Make it easy to localise in many languages

In the last few months, we’ve been working on a new site and workflow, and today we’d like to share the current progress, and provide some information on what’s going on under the hood. Christian Lohmaier talks about the new website, which will be available soon…


Initial setup

We decided to use a much more reduced and simplified setup for this. With fewer tools to maintain, the easier it is to add improvements along the way.

We’ve made the decision to go with SilverStripe, since that is a CMS we are already familiar with since we are already using it for our main website. It has a Model View Controller design that is easy to grasp and extend by anyone who knows some PHP and html and CSS.

The separate backend (administrative interface) and frontend (what a visitor using the site sees) allows us to streamline the workflow and improve error handling.

Having the data completely decoupled from the representation will allow us to revamp the site as new ideas come along or potential problems will surface. One of our goals is to simplify the user interface and also allow for translation and localization of both the extensions as well as the whole site from the very beginning. Extension maintainers can translate their listing into the language of their main target language.

Discoverability

Similarly, users told us that they wanted their extensions to be even easier to discover, so for this we decided to go with a curated list of tags as the main categorization/classification. We learned from other tag-using systems (like ask) that freeform tags would require a high level of discipline from content creators to not create too specific or too similar tags to make for a useful search tool.

Having a curated list of tags also allows for translation of the tags, further improving the experience for our non-English speaking endusers. This also will allow us to get rid of the rather arbitrary split into templates and extensions, but rather have a more targeted listings.

And since we’re already using SilverStripe in combination with TDF’s Single Sign-On solution, current users of our SSO can easily access the new site.

Creating and editing

To illustrate the keep-it-simple approach, here is what an extension maintainer would see once logged in to edit or create an extension entry:

And here’s what creation of a new entry would look like:

While some people might think that this is not the most exciting user interface, and that it also boxes the user in, well: that is the whole point about it!

Just like on the current site, we kept the concept of having a main extension entry along with individual releases that might be limited to a certain language or a specific operating system:

Moderation

The new sites provides some features also for extension moderators with a more expansive admin interface in which they would have access to reports and where they can add and maintain the list of available tags, and do other similar tasks.

In the next post we’ll dig a little deeper into the more technical stuff like the data model and templating systems. That will then provide the required knowledge to not just give feedback on the current design (both visual as well as from a low-level perspective), but already provide concrete improvements in form of patches.

As we’re a volunteer-driven, community project, we really appreciate any help – so if you want to give us a hand, join our website mailing list and drop us a line. We look forward to hearing from you!