Talks and Slides by Collabora at FOSDEM 2022

FOSDEM 2022 – The Talks and Slides from the Collabora Team

Whether on-site in Brussels or as an online event like the last two years, FOSDEM is and remains the largest and most important gathering of Open-Source developers in Europe. We’d like to express our gratitude to the community and the organisers. The Collabora team gave numerous talks in the LibreOffice Technology devroom. Missed a presentation? Below you will find links to all videos and to the downloads of the slides.

 

Gülşah Köse

LibreOffice Technology devroom

OOXML Document Analysis

Collabora developer Gülşah Köse explains how we respond when we receive a problematic OOXML document from a customer and demonstrates the solution to a sample bug. See details

Watch the talk!
Download the slides!

 

Miklos Vajna

LibreOffice Technology devroom

Document Themes in LibreOffice Impress and Elsewhere

LibreOffice has been capable of handling colour palettes on its UI for a while. Meanwhile, the competition introduced document themes, which are a fixed set of 12 colours, to be attached to various parts of documents. See what we have done to bring themes to LibreOffice and find out what still needs doing and how you can help. See details

Watch the talk!
Download the slides!

 

Gökay Şatır

LibreOffice Technology devroom

Canvas For Rendering UX

Gökay Şatır shows why we chose to use Canvas for rendering the UI and the document, and explains the structure we created to execute this task. See details

Watch the talk!
Download the slides!


Mert Tümer

LibreOffice Technology devroom

Editing Simulation

Performance measurements are really challenging. This presentation by Mert Tümer covers how we can achieve reliable and repeatable performance tests by implementing clever tools that simulate realistic use cases. See details

Watch the talk!
Download the slides!

 

Jan Holesovsky

LibreOffice Technology devroom

LibreOfficeKit Recent Developments

LibreOffice can be used by other applications via its C++ API called LibreOfficeKit. Primary use cases for this are document conversion and editing in Collabora Online. The LibreOfficeKit is currently being expanded. Jan “Kendy” Holesovsky talks about these recent developments See details

Watch the talk!
Download the slides!

 

 

Michael Meeks

LibreOffice Technology devroom

Online Performance – Making Collaborative Editing Quicker

Collabora Online has a novel model that re-uses the core LibreOffice Technology to provide rich collaborative editing. Recently, we have been focusing our development on improving the look and feel of document editing. Watch Michael Meeks talk about how Online performance wins are making browser-based collaborative editing quicker. See details

Watch the talk!
Download the slides!

 

Szymon Kłos

LibreOffice Technology devroom

Building Collabora Online UI Based on the LibreOffice Components

JSDialog is a “framework” for sharing UI components between Collabora Online and LibreOffice. It was used to bring the Sidebar, the NotebookBar, and dialogs to the web. It provides native HTML widgets connected to the original LibreOffice code, giving the user rich editing options even on mobile devices. Watch Szymon Kłos‘ talk for a brief summary of what has already been done and how it works. See details

Watch the talk!
Download the slides!

 

Pranam Lashkari

LibreOffice Technology devroom

Collabora Online on Kubernetes – Setup & Deployment

See this talk by Pranam Lashkari for a comprehensive demonstration of how to deploy Collabora Online using Kubernetes. See details

Watch the talk!
Download the slides!

 

Ashod Nakashian

 16:00 – 16:30 – LibreOffice Technology devroom

Collabora Online: Async-Saving Design and Testing

This talk explores the challenge of saving and uploading documents to the storage server in an asynchronous way, to improve performance, user experience and also ensure higher reliability and resiliency. Ashod Nakashian covers both the design and the challenges of testing a highly critical component of a production product.

See details Join video & conversation

Watch the talk!
Download the slides!

 

Henry Castro

LibreOffice Technology devroom

Macro Dialog Feature

Watch Henry Castro‘s talk on the implementation of a Macro Selector Dialog on the client side to execute VBA macros on the server side. See details

Watch the talk!
Download the slides!

 

 

About Collabora Online

Collabora Online 21.11 is our latest enterprise quality release. It’s suitable for large-scale deployment, and comes with SLA, enterprise support with signed security updates as well as interaction with product management, helping to direct our development priorities. Collabora Online integrates flawlessly into Nextcloud, ownCloud, Seafile, and many of the major file sync & share, groupware and hosting solutions. It’s ideal for organizations that want to collaborate on documents, without losing control over them or compromising on privacy. With the ability to host it on your own hardware or to integrate it into a trusted environment, Collabora Online is the ideal online office suite for digital sovereignty. Enterprises interested in using Collabora Online can check out our home page for more information on partner integrations and online demos. Hosting and Cloud businesses that wish to add Collabora Online to their product portfolio can become a partner. For any questions or tailored solutions, do not hesitate to contact hello@collaboraoffice.com.

 

Read More

Collabora at FOSDEM 2022

FOSDEM 2022 – Europe’s largest Open-Source Developers Meeting

FOSDEM 2022 will again take place as an online event. During two days the latest technical achievements of developers from all over the world will be presented. Our team is represented with 10 talks on the different aspects of LibreOffice Technology in the corresponding devroom.

Day 1: Saturday, February 5th 2022

Monica Madon (Canonical), Marius Quabeck (Nextcloud) and Pedro Silva (Collabora)

13:00 – Ubuntu stand

Contributing to Open Source Projects with Ubuntu, Nextcloud, and Collabora

Are you interested in contributing but don’t know where to start? Tag along and be part of the digital sovereign revolution! Everyone is welcome to join.

See details Join video & conversation

 

Gülşah Köse

14:30 – 15:00 – LibreOffice Technology devroom

OOXML Document Analysis

Collabora developer Gülşah Köse, will explain how we respond when we receive a problematic OOXML document from a customer and demonstrate the solution to a sample bug.

See details  Join video & conversation

 

Miklos Vajna

16:00 – 16:30 – LibreOffice Technology devroom

Document Themes in LibreOffice Impress and Elsewhere

LibreOffice has been capable of handling colour palettes on its UI for a while. Meanwhile, the competition introduced document themes, which are a fixed set of 12 colours, to be attached to various parts of documents. See what we have done to bring themes to LibreOffice and find out what still needs doing and how you can help.

See details Join video & conversation

 

Gökay Şatır

 17:00 – 17:30 – LibreOffice Technology devroom

Canvas For Rendering UX

Gökay Şatır will present why we chose to use Canvas for rendering the UI and the document, and explain the structure we created to execute this task.

See details Join video & conversation

 


Day 2: Sunday, February 6th 2022

Mert Tümer

 12:00 – 12:30 – LibreOffice Technology devroom

Editing Simulation

Performance measurements are really challenging. This presentation by Mert Tümer covers how we can achieve reliable and repeatable performance tests by implementing clever tools that simulate realistic use cases.

See details Join video & conversation

 

Jan Holesovsky

 13:00 – 13:30 – LibreOffice Technology devroom

LibreOfficeKit Recent Developments

LibreOffice can be used by other applications via its C++ API called LibreOfficeKit. Primary use cases for this are document conversion and editing in Collabora Online. The LibreOfficeKit is currently being expanded. Jan “Kendy” Holesovsky  will talk about these recent developments.

See details Join video & conversation

 

Michael Meeks

 14:00 – 14:30 – LibreOffice Technology devroom

Online Performance – Making Collaborative Editing Quicker

Collabora Online has a novel model that re-uses the core LibreOffice Technology to provide rich collaborative editing. Recently, we have been focusing our development on improving the look and feel of document editing. Come and hear Michael Meeks talk about how Online performance wins are making browser-based collaborative editing quicker.

See details Join video & conversation

 

William Gathoye

14:00 – Ubuntu stand

Setting up a Nextcloud Instance with Collabora on Ubuntu

Keeping full control over your personal data and documents, is more and more important. Learn how to create your own personal cloud with this easy built-in installation.

See details Join video & conversation

 

Szymon Kłos

 15:00 – 15:30 – LibreOffice Technology devroom

Building Collabora Online UI Based on the LibreOffice Components

JSDialog is a “framework” for sharing UI components between Collabora Online and LibreOffice. It was used to bring the Sidebar, the NotebookBar, and dialogs to the web. It provides native HTML widgets connected to the original LibreOffice code, giving the user rich editing options even on mobile devices. Szymon Kłos will talk for a brief summary of what is already done and how it works.

See details Join video & conversation

 

Pranam Lashkari

 15:30 – 16:00 – LibreOffice Technology devroom

Collabora Online on Kubernetes – Setup & Deployment

See this talk by Pranam Lashkari for a comprehensive demonstration of how to deploy Collabora Online using Kubernetes.

See details Join video & conversation

 

Ashod Nakashian

 16:00 – 16:30 – LibreOffice Technology devroom

Collabora Online: Async-Saving Design and Testing

This talk will explore the challenge of saving and uploading documents to the storage server in an asynchronous way, to improve performance, user experience and also ensure higher reliability and resiliency. Ashod Nakashian will cover both the design, as well as the challenges of testing a highly-critical component of a production product.

See details Join video & conversation

 

Henry Castro

17:00 – 17:20 – LibreOffice Technology devroom

Macro Dialog Feature

Come and hear Henry Castro talk on the implementation of a Macro Selector Dialog on the client side to execute VBA macros on the server side.

See details Join video & conversation


 

 

About Collabora Online

Collabora Online 21.11 is our latest enterprise quality release. It’s suitable for large-scale deployment, and comes with SLA, enterprise support with signed security updates as well as interaction with product management, helping to direct our development priorities. Collabora Online integrates flawlessly into Nextcloud, ownCloud, Seafile, and many of the major file sync & share, groupware and hosting solutions. It’s ideal for organizations that want to collaborate on documents, without losing control over them or compromising on privacy. With the ability to host it on your own hardware or to integrate it into a trusted environment, Collabora Online is the ideal online office suite for digital sovereignty. Enterprises interested in using Collabora Online can check out our home page for more information on partner integrations and online demos. Hosting and Cloud businesses that wish to add Collabora Online to their product portfolio can become a partner. For any questions or tailored solutions, do not hesitate to contact hello@collaboraoffice.com.

 

Read More

Thank you for an exciting 2021!

Looking at what we have achieved together 🤝

At the end of the year, we like to look back at what we have achieved as a team – in cooperation with our worldwide network of partners and the community. The year 2021 was again dominated by the global pandemic. While it had little impact on our work processes, it meant that personal encounters remained very rare.

At the same time, we launched the first COOL Days, a new event that brings together people interested in Collabora Online and LibreOffice technology. Collabora Online, Collabora Office and our mobile apps have all seen major performance improvements and increased functionality this year. At the end of the year, we released CODE 21.11, which previews what our flagship enterprise product, due out in early 2022, will look like. Thank you, for your support this year. See what we have achieved together this year. 💜

🆕 Collabora Online includes new functionalities and better performance 💻

This year Collabora Online has undergone a number of important updates. In addition to interoperability and user experience, there was a strong focus on performance enhancements. Many ground-breaking new functionalities already celebrated their premiere in the 6.4 release branch. With the release of CODE 21.11, more new implementations from the desktop were added.

Collabora Online 6.4 adds ground-breaking features

Pivot Tables in Collabora Online 6.4.x
Select & run macros in Collabora Online 6.4.7
Anchors in Collabora Online 6.4.10
Anchors in Collabora Online 6.4.10

 

⚡️ Powerful new features arrive for Collabora Office on the desktop 🖥️

Collabora Office 21.06 brings enhanced productivity and smooth migration

June 2021 saw the major release of our desktop product Collabora Office. This release brought many UX improvements and smoother document interchange. Collabora Office 21.06 was focused on performance and making migration simpler for organizations. This release introduced a new numbering system, based on the year and month of its release, and many powerful features like a style inspector, better access for extensions and improved PPTX filters and many more.

Improved PPTX import in Collabora Office 21.06
Powerful new Style Inspector tool in the Sidebar of Collabora Office 21.06
Collabora Office 21.06 makes it easier and more convenient to find and install extensions

Collabora Office 6.4 saw many updates and improvements

  • April, version 6.4-33: Printed publications can now make use of Gutter Margins and PPTX import improvements for shaped bitmaps arrive
  • May, version 6.4-39: Improvements on XML import have been implemented
Add Gutter Margins to text documents in Collabora Office 6.4-33
True to the original PPTX import if shaped bitmaps in Collabora Office 6.4-33

🧰 CODE 21.11 provides insights into the upcoming enterprise version 📄

CODE 21.11 is the herald of our new enterprise version to be released next year. The current development edition introduces the full range of new features and performance enhancements for testing. Among other things, it contains the new native sidebar, improved interoperability and a number of new effects for objects such as glow, soft edges or blurry shadows. The numerous performance improvements include asynchronous save, JavaScipt acceleration, more efficient network traffic, and improved multi-user editing. Learn more details in our announcement.

New “native” Sidebar in CODE 21.11
CODE 21.11 includes a new “native” Sidebar
Apply glow and soft edge effects to objects in CODE 21.11
Improved PPTX import/export filters in CODE 21.11

🆕 Many new features for Collabora Office for Android, iOS & Chrome OS📱

Large, user-friendly UI on tablets
CSV Import in Collabora Office on Android
Moving Sheets in Collabora Office on Android
Smart connectors in presentation in Collabora Office on Android
VBA macros in Collabora Office for Android

 

🏠 Small scale work-from-home-solution and ARM64 support 👨‍💼

In March, together with our partners at Ubuntu and Nextcloud, we introduced a work-from-home solution for the Raspberry Pi including the easy-to-use Collabora Online built-in server. In April, we announced that CODE now also officially supports the ARM64 platform.

Canonical, Nextcloud and Collabora deliver work-from-home solution to Raspberry Pi

📰 Amazing news, interesting figures 📈

Over 250 partners worldwide

In 2021, our large network of amazing partners kept growing. We can now rely on over 200 partners from more than 50 countries. We help each other to promote open source, privacy & digital sovereign solutions and re-invest the proceeds into creating great new software. Find a Collabora partner in a special field or area! Or become a partner yourself!

 

CollaboraOffice.com available in four new languages

We continued dedicating a lot of effort to make our website and the information about our products easily available to a larger set of people. This year we implemented translations in Simplified Chinese , Japanese 🇯🇵, Russian 🇷🇺 and Czech 🇨🇿 to the available options on collaboraoffice.com. Thanks a lot to the translators. Also, the community translating Collabora Online kept growing. Would you like to help to translate our software to your language? Join our translation team on Weblate!

collaboraoffice.com is available in new languages, including japanese.

 

Collabora’s Contributions to LibreOffice 7.1 and 7.2

Collabora is part of the ecosystem developing and advancing LibreOffice Technology. Our developers responsible for many commits to the LibreOffice core. Many of the new features in LibreOffice 7.1 and LibreOffice 7.2 like Smart Art improvements, blurry shadows for objects, gutter margins or the possibility to add visible digital signatures to existing PDF files have been implemented by Collaborans. Find more details of our 7.1 contributions in our blog.

PDF signing improvements by Collabora in LibreOffice 7.1

 

Updated LibreOffice growth infographic 2021 📈

We updated the popular LibreOffice growth infographic. Despite the challenges posed by the global pandemic, the statistics around LibreOffice collaboration are impressive. Over 210M active LibreOffice users, over 70M pulls from the CODE Docker image, 500K installs of the Collabora Office mobile apps, and more than 12K code commits from the community and the ecosystem to the LibreOffice code. Have a look at the numbers!

 

🎙️ Together at a distance – a year of online conferences 👏

The major events – foremost the large international conferences – had to take place online due to the global pandemic. Nevertheless, also new events emerged. We were part of the Open Source Day for Enterprises in Russia. For the first time, Collabora hosted the COOL Days, a virtual conference completely focused on Collabora Online. While most conferences took place online, there have also been a few opportunities to meet in person. For instance, in France, at the Open Source Experience and on at the it-sa fair in Nuremberg and some smaller German events like digital + souverän.

A fresh breeze on the calendar – COOL Days 2021

This year we hosted the COOL Days for the first time. A two-day online event that focused exclusively on topics related to Collabora Online. The first day, the Developer Day, focused on technical topics. The second day, the Business Day, dealt with questions of marketing and digital sovereignty. The schedule is available on our website, the videos from the Developer Day can be found in our playlist on YouTube.

FOSDEM 2021 went online

Europe’s largest open-source event had to take place as an online this year. However, this did not stop our team and the open-source community from presenting themselves and their latest developments. Collabora was present with a whole series of talk covering Collabora Online and LibreOffice technology. Find the videos of our FOSDEM 2021 talks and more slides available for download in our blog.

 

“Collabora Online for your documents” by Michael Meeks. Download the presentation!
“How Collabora Online development improves LibreOffice” by Jan “Kendy” Holešovský. Download the presentation!
“Porting LibreOffice to macOS on Apple Silicon” by Tor Lillqvist. Download the presentation!

Collaborans contributing strongly to the LibreOffice conference

In contrast to last year’s joint conference, this year’s LibreOffice conference was hosted solely by The Document Foundation. The Collabora team presented 12 talks this year. All links to the videos and the slides for download can be found in our blog.

Download “Collabora Keynote” by Michael Meeks
Download “PDF and other graphic improvements” by Tomaž Vajngerl
Download “JSDialogs improvements over the past year” by Szymon Kłos

 

💪 A welcoming and vibrant COOL community 🤝

More than a year after moving the work on Collabora Online out of the TDF infrastructure and onto GitHub, we can say that it was a good decision. We have lowered the barriers to participation while increasing the transparency of the project. New, active members have been found, keeping in touch via the Telegram channel, and supporting the work on CODE and Collabora Online. Once a week, always on Thursdays, the community meets for a call.

Users can now easily file issues on GitHub, and the community answers questions from home users in the forum. The minutes of the community meetings can also be found there. Another great way to get involved is to help translate. At the same time, we are happy to be an important ecosystem partner of the LibreOffice community helping to advance LibreOffice Technology.

 

Showcasing our Consultancy work 💻

Our developers have a superb expertise in LibreOffice technology and implement new features and enhancements. This year, we did set up a page showcasing some of those implementations we realized on our client’s request – to the benefit of everyone. Find out more!

 

Presenting the benefits of Collabora Online for educational institutions 👩‍🎓

Scalable, reliable, privacy respecting and secure! Collabora Online is an ideal solution for modern learning environments. We have put together a web page with the many benefits of Collabora Online in educational institutions. Learn more!

 

The Collabora Online SDK ⚙️

Collabora Online SDK describes the main methods that allow you to interact with different Collabora Online components. Find installation guides, frequently asked questions, Post Message API and documentation on exiting integrations and on how to create new ones on our new SDK pages.

Google Summer of Code 2021 ☀️

This year, the Collabora team again provided mentors for LibreOffice projects within the Google Summer of Code. Among the topics mentored were interesting implementations such as the VCL graphics backend, the text style deck and revisions to the SVM format. Detailed information on these and other projects can be found in our GSoC 21 article.

News by Collabora directly into your inbox 📨

This year, we have updated our public newsletter. We made it visually more appealing and lowered the frequency of the mail outs. If you would like to receive regular updates like this one on the news on Collabora Online, Collabora Office and the COOL Days please sign up to our newsletter, that is mailed approximately 6 to 8 times per year.

Tip: keep an eye on our new releases for more new features.

 

Summary

It has been a very busy year here at Collabora Productivity. We enjoy seeing the Collabora Online Community grow and keep on advancing our mission to make open-source rock. We continued giving users privacy and businesses control over their data. We managed to achieve excellent results, and had a good time working on them – despite the challenging conditions that 2021 persisted. The first edition of the COOL Days was a real highlight for us. We have big plans for 2021, and hope there will be more possibilities to meet in person on conferences and on events. Don’t hesitate to get in touch with us, if you’d like to partner with us, or to buy from us. Thank you for the great support this year. We wish you all a Merry Christmas and a Happy New Year!

Thank You!

Read More

Collabora Online Community – our next major release was made more fun and beautiful by the community

Really soon (update: released!) there will be the final CODE 21.11! And we really love to let you know about all the people that did the hard work alongside us that made this release possible and fun!

 

Collabora has invested significantly in bringing a host of new features and functionality to this latest release, and accounts for the overwhelming volume of contributions. However, we want to acknowledge all of our friends and colleagues who helped to contribute not only to this, but also to the underlying LibreOffice technology, you can check out LibreOffice community credits. We cannot thank everyone involved enough for their passionate work. All of our code is open source, and available to the public on GitHub. Would you like to be part of the Collabora Online success story? Check the new website for Online with information, easy hacks and a forum for Online, report issues, and participate today!

On the community front people have been busy, hacking directly in the code and on the UI, helping with translations and improving the community website. Happily we can report successful Hacktoberfests (both last year and this) were a success with newcomers joining in our weekly Hacktoberfest meetings that were preceding our regular community weekly meetings. Those contributions kept raining down during the next weeks, month and make it into this release.

A huge thanks to Gleb Popov (arrowd) for single-handedly ported Collabora Online to FreeBSD. Oh, arrowd also found time to add and setup FreeBSD’s CI Cirrus. You rock!

Thanks to Andreas Kainz for all the many contributions around UI fixes. For all the improvements on Mobile toolbars and Desktop controls. For working on the Notebookbar spec and also for finding time to start helping newcomers :).

Alexandru Vlăduţu (1&1) has been busy making some user flows more discoverable by adding menubar shortcuts and by improving how the user edits an URL via the hyperlink dialog. Alexandru also made it easier to test and switch between multiple documents by creating a demo exactly for that browser/html/multidocs.html.

Now the avatar list is at the top right of the header thanks to Luka Trovic (Nextcloud) and Julius Härtl (Nextcloud) that also has improved the idle document dialog with new style.

Now branding theme is set as dynamic instead of constant string thanks to Julius Härtl. Who has also hacked and fixed CSP header by removing duplicated img-src rules; added the possibility to pass UI default to documents of type drawing and improved menu hide animation in the Classic UI mode.

Thanks to Stavros Kois for fixing a bug where clicking Page... button in Calc (using the Notebookbar mode) would do nothing, and also for working in the follow ups.

With regards to Docker and for those cases when only something in start-collabora-online.sh has changed the docker build was speeded up by moving the add script after the install script, thanks to Erik Habicht. Still related to docker thanks to Marco Marinello for setting the source of dockerfile to Debian Buster to keep things up-to-date.

Thanks to Gabriel Masei (1&amp1) a different UI mode is allowed for different views, this means that the same document can be viewed at the same time by one user: A using the notebookbar mode and by another user: B using the classic mode. To further his work, Gabriel also added support for that to be changed dynamically via post-message and without re-loading the opened view.

On the admin from Gabriel added clean-up metrics regarding resource consuming documents and also added support for lost kits clean-up.

Thank you to Hugo Peixoto for tackling many of those easy hacks related to optimizing startsWith calls on StringVector elements and for removing unused includes (c++). It’s really cool to see how fast you went with your contributions in such a short period of time!

Switching slide format via the dropdown is now possible thanks to the JavaScript bug fix from Alexandru Vlăduţu.

Martin Hoffman‘s first contribution fixed the build.sh bash script that was wrongly deploying core underneath poco’s directory resulting errors later on when doing configure --with-lo-path

Many upstream icons have been updated thanks to Rizal Muttaqi’s contributions. Thanks to Çağrı Gökçe and umutbayramoglu other new icons have been added to mobile and desktop.

New unit test added for skipping ModifiedStatus from deduplication by Gabriel Masei.

The building process was streamed lined with all the occurrences of WebDAVStorage removed by Yunus Bulut. Still in the process of clean-up, this time in the C++ realm, obsolete locking pieces were detected and removed by Shubham Goyal and duplicated include removed by Andrea Gelmini. Many unused variables and duplicated statements were also removed from Python and JavaScript files, thanks to umutbayramoglu and Bayram Çiçek. PelinkKuran was then hunting and fixing all the problems with indentations as per eslint 4.0.0

Functions in JavaScript are not better declared with less repetition and more consistency thanks to Kandarp Patel.

Lastly, text in many places has been improved, typos have been fixed throughout the code by the hand of Andrea Gelmini; Comments have been added directly into code by the hands of Serkan Danışan. Siddharth and codewithvk.

See all of them bellow:

HashAuthorCommit Subject

0115cbc5b Luka Trovic fix feedback for the last saved time over 1 day
32265b7c6 Julius Härtl browser: Only apply header avatars for desktop
0ccbb5704 Julius Härtl browser: cleanup header avatar handling
b31bb2c08 Julius Härtl browser: Adjust header avatars to fit default theme
f9e81b187 Luka Trovic add avatar list to the top right of the header
40c8152ee Julius Härtl browser: Move menubar to a flex-based layout
4c1185be7 Marco Marinello Fix debian dockerfile explicitly set buster as source since is now oldstable
111856f28 Julius Härtl Extract file_path from debug.html and pass other query parameters
fdfdd5909 Gleb Popov loolmount: Mimic the Linux behavior of umount2() on FreeBSD.
cc205d294 Luka Trovic remove xss vulernability
ec2e5e1ec Luka Trovic update idle document modal style
cbe99ee87 Erik Habicht Move adding the start script after running the install script.
b88708aac Gleb Popov Don’t enable SECCOMP by default on !Linux systems.
2716cc715 Gleb Popov Set –disable-setcap as default for !Linux platforms
b948e431f Gleb Popov Use more portable shebang for loolwsd-generate-proof-key script
e45358ab8 Gabriel Masei admin: add resource consuming docs cleanup metrics
5162f91ec Julius Härtl Keep branding theme dynamic
3eab4f70a Julius Härtl wsd: Only add one img-src rule to the CSP header
570c31d1a Julius Härtl wsd: Allow to pass ui defaults for drawings
b2abb5e4a Hugo Peixoto Use tokens.equals() instead of tokens[] ==
aba9bf559 Hugo Peixoto Fix typo in comment
2bdb7ed56 Hugo Peixoto Fix bug in StringVector::startsWith and add tests
8fc9dcadb Julius Härtl leaflet: Fix blocking the menu hide animation
f157b1eec Hugo Peixoto Remove unused Poco/Timestamp include
7bf0ead62 Hugo Peixoto Optimize startsWith calls on StringVector elements
46a7f6ba9 Andreas-Kainz Sidebar fix alignment for LB_SHOW_COLOR, LB_GLOW_COLOR and button2
dae6ab85d Andreas-Kainz Calc Sidebar fix for Number Format Section
f4ec05009 Andreas-Kainz Icon fix for closedocmobile it was to height at mobile insert menu
ab6719695 Andreas-Kainz Mobile Writer Graphic Context
8a8af507f Stavros kois Also add missing parameters
e29cbb281 Stavros kois Fix Page… button on Calc for NotebookBar
12e9ed689 Andreas-Kainz Mobile Sidebar Layout fixes
2f55d9e5b Andreas-Kainz Mobile BottomToolbar add context-Table commands
0e238382f Andreas-Kainz Mobile TopToolbar hide commands that are not available
a3f378e72 M.-Kupriyanov Update ingress.yaml
cb22a86a2 Andreas-Kainz Mobile Sidebar fix some alignments
2c34fdbb1 Andreas-Kainz Mobile TopToolbar Calc acceptformula and cancelformula
cf13964ba Andreas-Kainz Mobile BottomToolbar Calc add commands
c2f50008b Andreas-Kainz Mobile Bottom Toolbar Align Menu
f70824722 Andreas-Kainz Add ContectToolbar functionality
dec8bfedc Andreas-Kainz Sidebar justify-content flex-end for last-child
58599f8cb Andreas-Kainz Icon cleanup
f87628cfe Andreas-Kainz icon cleanup for smaler size
74d2563fa Alexandru Vlăduţu loleaflet: add menubar shortcuts where applicable
eb387cc7b Alexandru Vlăduţu loleaflet: add edit option in link dialog
0b361d1cf Alexandru Vlăduţu loleaflet: add demo for opening multiple docs and switching between them
3018878ae Çağrı Gökçe Create lc_checkboxoff.svg
e0cdc186e Siddharth Copy loleaflet-api.html into code: cursorURL
3dbc2657e Alexandru Vlăduţu leaflet: fix slide format JS bug in presentations
48f91a2aa Thomas Koch use Request.has instead of .find and .end
f50a2c201 Andreas-Kainz Sidebar css fixes
25c8d8b52 Andreas-Kainz Sidebar: expander with is 290px (322px – 2x16px)
20c2ab566 Gleb Popov Remove non-abstract unix socket files on shutdown.
950a5c4d1 Gleb Popov Use more sensible value for #ifdef when checking for abstract unix sockets.
0dd30ba28 Gleb Popov Remove unused private class member.
b3d5a2563 Gopi Krishna Menon Add profilezone around kitPoll function and SocketPoll constructor
9d8619397 Gopi Krishna Menon Log Last Uno 4 Commands During a Fatal Crash
5ba9db184 Serkan Danışan Copy loleaflet-api.html into code: defaultZoom
d21fade7c Hannah Meeks Copy documentation into source code as comments #2160
5ee33d15f Andreas-Kainz Mobile fix left padding insert commands
8429a2df1 Andreas-Kainz Mobile: fontnamecombobox use no left padding at mobile sidebar
9e10f0e53 Andreas-Kainz Mobile remove StyleUpdateByExampleimg and StyleNewByExampleimg from sidebar
2ac99e833 Andreas-Kainz Mobile search fold as first item
48ca25a1b Andreas-Kainz Mobile Sidebar Character remove Grow and Shrink #2488
65db91084 Jerzy Drozdz Added missing class A ip addresses regex to config file.
3d5a85a39 Andreas-Kainz Mobile show border-top ad bottomBar
c035146a8 Andreas-Kainz Mobile explorable-entry use the same padding-left than ui-header
6bc2f8f7f Andreas_K Revert “Mobile explorable-entry use the same padding-left than ui-header”
a362985f4 Andreas-Kainz Mobile explorable-entry use the same padding-left than ui-header
b956a0539 Andreas-Kainz Mobile wrap icons alignment float: left
a0257a60a Andreas-Kainz Mobile AlignToolBar use fixed icon size
84f109d88 Andreas-Kainz Mobile FontWorkShapes same alignment and padding than everywhere
746f2b78c Andreas-Kainz Mobile css remove clear after shadow
19afcbcdb Andreas-Kainz Mobile Calc Property sidebar panel fix number format and cell appearance
6142037a6 Andreas-Kainz Mobile unobuttons no additional padding needed
7040cedd0 Andreas-Kainz Notebookbar shortcuts-bar horizontal center align
7f59a4766 Andreas-Kainz Mobile BottomBar Impress/Draw Align
8dfd9dab6 Andreas-Kainz Mobile BottomBar Calc Align Menu
7bc42ca28 Andreas-Kainz Mobile BottomBar Calc Align Menu
c2e8885ce Andreas-Kainz Mobile fix closedocmobile icon
1841ab66e Andreas-Kainz Notebookbar shortcuts-menu vertical alignment center
d3a16af3c Andreas-Kainz Mobile Impress/Draw share TopBar code
840032b96 Andreas-Kainz Mobile Calc Formularbar arrangement fix
fe5cfbaf1 Andreas-Kainz Mobile BottomBar fix height
3d95c1754 Andreas-Kainz Mobile Icon closedocument fix
8303496ca Andreas-Kainz Mobile add BottomBar for drawing
a73919261 Andreas-Kainz Mobile Impress mobile-edit-button same arrangement than writer
c7b76b164 Andreas-Kainz Mobile TopBar update layout
2c6224d2b Andreas-Kainz Mobile Draw add TopBar commands from Impress
7161e13d5 Andreas-Kainz Mobile Topbar Alignment
ca097c723 Andreas-Kainz Mobile Menubar update
1137aee87 Andreas-Kainz Mobile BottomBar consistency
e8255044c Andreas-Kainz Colibre styles icon update:
9b652a5e4 Andreas-Kainz CSS color-palette vars are within a separate css file
f05769b7c Andreas-Kainz Statusbar use hue-rotate styles svg icons
6adc772fe Andreas-Kainz LibreOffice mimetype icon update and fix for #2407
f595fe790 Andreas-Kainz Notebookbar Cut, Copy commands without label
830f38105 Andreas-Kainz Notebookbar Shortcuts-bar simplify icons and alignment
3b62a9adf Andreas-Kainz Notebookbar Shortcut bar add Fullscreen #2417
a18765503 Andreas-Kainz Notebookbar Tab hover use primary color
4fa8fdc20 Andreas-Kainz Notebookbar add outline for hover commands
71831e273 Andreas-Kainz Notebookbar add commands to File and Layout tab
8914dfae3 Andreas-Kainz Notebookbar Draw/Impress add Layout and Review tab
b8c5c12ab Andreas-Kainz Notebookbar Tablet: remove tab height
2ca514f46 Andreas-Kainz Notebookbar Layout Tab add Sidebar show/hide #2295
9d4b047e9 Andreas-Kainz Calc Formular bar alignment #809
d1bbb6ada Andreas-Kainz Notebookbar.css var color update
3ff42011e Andreas-Kainz Notebookbar: add missing context toolbars #2175
de8a07d57 Andreas-Kainz Colibre icon fix d=”” was wrong cause of copy/paste
6d1045b44 Andreas-Kainz Colibre icon update: property wheel use white background
6b92bd140 Andreas-Kainz Notebookbar fontnamecombobox was one px to low
88c52d166 Andreas-Kainz Calc Formular bar alignment #809
572d1aa48 Gleb Popov Add Cirrus CI configuration for FreeBSD testing.
f12eb8373 Andreas-Kainz Notebookbar: Home tab: positioning direct formatting icons #2085
871669f51 Andreas-Kainz Notebookbar.css remove settings for #table-optionstoolboxdown
735c98473 andreas kainz notebookbar.css use –gray-light-txt-color for dimgray
662205355 Gleb Popov scripts/refresh-git-hooks: Create hooks dir before making links.
3ac539b1c andreas kainz Notebookbar: Tab: Fix vertical alignment
031f71bd8 andreas kainz Notebookbar Writer cleanup id values
77a122b88 andreas kainz Notebookbar Draw use branding color yellow0
6eba1e6fc andreas kainz Notebookbar ScrollButtons height shrink to 72px
df2e0a9d5 andreas kainz Thesaurus work only in writer #2129
53e1c0250 Gleb Popov Use Util::getThreadId() instead of Linux system call.
b5e3fc49b andreas kainz Notebookbar height 72px instead of 84px #2088
1000dab3e Michael Weghorn tdf#129833 android: Move reading file to separate thread
93bc5f608 andreas kainz Text dropdown fit into notebookbar row height
6e79c7b64 andreas kainz Notebookbar.css cleanup unrelated values was removed
369c8b6fc andreas kainz Button dropdown is now 24px in height like all other commands #2088
742cda8b4 Gleb Popov Don’t try use abstract unix sockets on !Linux platforms.
f11ca121a Gleb Popov Use SOL_LOCAL value instead of 0 in getsockopt() calls.
32c3488b9 Gleb Popov Fix a crash in the FreeBSD part of loolmount due to uninitialized variables.
b46c57952 andreas kainz Help icon last-updates update #2026
9c8776ab9 andreas kainz Notebookbar Find and Replace everywhere in Home Tab #2136
8211c3219 andreas kainz Notebookbar Clac Sheet tab was renamed to Layout #2130
495d5d811 andreas kainz Notebookbar: wrapper: vertical center all tabs
1700533c8 codewithvk Copy loleaflet-api.html into code: tileHeightTwips
967505b82 andreas kainz Update Help icons #2026
534813e3e andreas kainz Notebookbar Selected icons and icons + labels design update
7b54f0b30 codewithvk leaflet: show checked status for full screen in menu
4023a118c andreas kainz Notebookbar Draw Tab update #2007
23dc1b2aa andreas kainz Fix insert line and shape icon #2152
b1865b2b5 andreas kainz Colibre icon theme update to correct colors and forms
8a7278f94 andreas kainz Colibre Icons update insertgraphic #2151
3463c2eca Jan Holesovsky Revert “fix #1285 remove elipsis … from NB strings”
961b771ec andreas kainz Notebookbar writer calc remove grow-shrink subgroup
e6c233769 andreas kainz Notebookbar impress – draw home tab update
926686b87 andreas kainz Notebookbar Calc sync tab arrangement wit writer/impress
34b8dee38 andreas kainz update colibre filter icons
4d356ad99 andreas kainz Update Colibre icons
902442d4e Andreas_K Notebookbar Writer/Impress Table Contextual Tab update
584e139bb Andreas_K Notebookbar Calc Sheet and Data Tab update #2007
d267e7ccc Andreas_K fix
04ddf179b Andreas_K Notebookbar Format Tab update #2007
17d49e1a3 Andreas_K Notebookbar Writer Reference Tab update #2007
a1bf84f80 Andreas_K Notebookbar Writer Layout Tab update #2007
f12990a7b Andreas_K Notebookbar Insert Tab update #2007
3dc12fe6e Andreas_K Rename BasicShapes string #2111
647e2bbdd Andreas_K NB File Tabs SaveAs Label similar between apps
faf91d27e Andreas_K NB File Tabs SaveAs Label similar between apps
769c0dca4 Andreas_K NB Calc update Home Tab
850a657a3 Andreas_K fix #2095 NB File Tab update at all apps
a41ab8ff3 Andreas_K fix #1285 remove elipsis … from NB strings
72ab267f0 Andreas_K fix #1611 remove gray background of uno:color command in NB
36047958b Andreas_K add dropdown arrow to color picker
ca682ade8 codewithvk Fix : Notebookbar Labels Decrease font size
49bf42403 Ayhan Yalçınsoy added stdexcept include to fix build error
7bef5b5c2 Ayhan Yalçınsoy eslint:v.bump to 7.0.0
21d514ecf Gabriel Masei admin: add support for lost kits cleanup
201510798 Gleb Popov Add explanation for trick used in WhiteBoxTests::testTime()
5bb2f9368 Gleb Popov Fix testTime tests on libc++/FreeBSD.
c3a3a0d7a Gleb Popov Mark the argument as unused to silence compiler warning.
ed85b0a9d Emil Velikov android: Add support for split APKs to gradle
c9681a246 Emil Velikov android: inline constant gradle variables
c17a24769 Emil Velikov android: remove unused custom gradle variables
be4ab2a90 Emil Velikov android: Fold duplicate gradle settings
f3a22e981 Gleb Popov Port loolwsd-systemplate-setup to FreeBSD.
21bfa19e9 Gleb Popov Fix compilation with libc++
422723cbd Bayram Çiçek removed a duplicate of if statement in TileLayer.js
877ce2faf Gabriel Masei loleaflet: add support for changing ui mode dynamically
d08fda974 umutbayramoglu Remove unused variables
8727db174 Gleb Popov Fix build with libc++: std::min() parameters should be of the same type.
c03940312 Rizal Muttaqin Add download as csv icon
fff344afe Martin Hoffmann fix build.sh: wrong directory after poco install
038c85b8f Andreas-Kainz change default sidebar icon size to use 24px icons (like in toolbars)
d3ff48f65 Andreas-Kainz Sidebar should use .png icons instead of .svg fix #786
79374db3a Andreas-Kainz Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de> Change-Id: I3ce2be9cc6362c09725fe1692e6853f195274211
3a3867e1c Shubham Goyal Resolve #805 : Remove Mutex lock
1f5feb153 Andreas-Kainz Notebookbar: disable commands without gray background
e50a2d8ce Andreas-Kainz Writer NB: Layout tab fix icon size of align commands
c4c30ecc0 Andreas-Kainz add clone and clear to ContextMenu
81a5d029e Andreas-Kainz NB shortcuts-bar vertical alignment update
e6cc492e9 Andreas-Kainz NB Impress home tab align bullet commands
7692247d6 Andreas-Kainz NB Calc home tab align character commands
0396307ea Andreas-Kainz NB Writer home tab align bullet commands
87aff3566 Andreas-Kainz NB update Format Tab
cb27d2cda andreas kainz NB: vertical-align content
d9cadd125 andreas kainz NB: Update writer and impress file tab according to calc #1080
6cceee7e4 andreas kainz NB update: calc file tab: bottom align labels
952b5c021 andreas kainz NB writer: add context-graphic tab
51ba40862 andreas kainz Notebookbar Insert Tab: update writer insert tab
a596e3292 andreas kainz Notebookbar Insert Tab: update calc insert tab
db2280bbb andreas kainz Notebookbar Insert Tab: update impress insert tab
fed8ed59a Gleb Popov Use portable `/usr/bin/env bash` shebang, instead of `/bin/bash` one.
d6de33d9e Gleb Popov configure.ac: Require pkg-config on all platforms except Darwin.
3cea82d6f Gleb Popov configure.ac: Extend some Linux conditionals to the FreeBSD case.
292aa7e9b Gleb Popov Stub out hasAnyCapability for !Linux platforms.
458d2b4ee 22shubh22 Remove unwanted Poco::Timestamp functions
f7d993da7 umutbayramoglu Mobile: Modify ‘insert comment’ icon
b7abd7ef0 andreas kainz TopToolbar Calc textalign menu: add vertical align commands
da5c34183 umutbayramoglu Update insert comment icon
2358b8305 umutbayramoglu Create new icon that replaces the ‘insert comment’ icon
99c9ac172 Gabriel Masei wsd: allow different UI mode for different views
613026a54 Ayhan Yalçınsoy Calc:recalculate command is added at Data menu
d2330390a bayramcicek Port to Util::make_unique for kit/ChildSession
df925222a andreas kainz TopToolbar better arrangement of breaks
054ab5f61 Ashod Nakashian wsd: specialize thread ID serialization
854065200 Gleb Popov Do not try to convert std::thread::id to integer value.
12cd5affc Gleb Popov Reuse __linux__ code path in __FreeBSD__ case too.
f7faaad79 Gleb Popov Replace all `__linux` in CPP conditions with `__linux__`.
78904302d Gleb Popov Do not call non-standard std::thread::id constructor.
3ee1ee0b5 Gleb Popov AdminModel.cpp: Fix build with libc++.
92c0d375e Gleb Popov Port mount.cpp to FreeBSD.
7f0b19baa Gleb Popov map.cpp: Add an implementation of glibc-specific error() function.
8c6cbedd5 Gleb Popov Socket.cpp: Use LOCAL_PEERCRED flag on FreeBSD instead of SO_PEERCRED.
57eab254c Gleb Popov On FreeBSD, link to libexecinfo and libz from base. Require 3rd-party libiconv.
55ed321a1 Gleb Popov Implement SslContext::id() for FreeBSD systems by calling pthread_getthreadid_np().
aa97476f0 Gleb Popov Util.cpp: Do not call setpriority for thread handles on non-Linux systems.
3930ea86a Gleb Popov FileUtil.cpp: Fix building on FreeBSD.
414dd5de5 Gleb Popov Seccomp.cpp: Fix building on FreeBSD.
a90bbc922 Gleb Popov Log.cpp: Extend #ifdef conditional to FreeBSD case.
333a70c05 Gleb Popov Kit.cpp: Fix build on FreeBSD and use cap_enter() to constrain the process rights.
7553c1f2f Gleb Popov ForKit.cpp: Implement haveCorrectCapabilities() for FreeBSD by checking that we are running as root.
ec4d35a53 Ayhan Yalçınsoy loleaflet: eslint v.bump to 6.0.0 #396
4de771751 andreas kainz Calc: menubar update in sheet calc menubar fix #549
e6b31fea6 andreas kainz Clac: add commands to calc menubar format section
1cf11ba05 andreas kainz Calc: add commands to calc menubar view and insert
687d02e5b andreas kainz Add space between drop down widget see issue #350
aa9cfa621 andreas kainz menubar writer tools and insert update
f532a3f4d andreas kainz Shape icon update
8e5354173 kuesji koesnu edited behaviour: if you pass csv input file with –csv parameter you get output in single line with comma seperated format
591a5ac9b kuesji koesnu added `–csv file` argument for taking author list from comma seperated format removed mail addresses from author list
c1df79e22 Ayhan Yalçınsoy loleaflet: Towards eslint 6.0.0 #396 – no-prototype-builtins
d1b13ddb4 andreas kainz Menubar Writer Format section update #433
d1e119b8f andreas kainz Menubar view – move sidebar to other show/hide items
a308453fe Marc Rodrigues Update README.md
d7656402d Jan Dageförde Migrate code to use generic sendError
7206231ed Jan Dageförde Rewrite FileServerRequestHandler::sendError to rely on generic sendError
c543e4415 Jan Dageförde Provide methods that output error headers into the socket
76ef26cf1 andreas kainz Merge branch ‘master’ of https://github.com/CollaboraOnline/online
be953a912 andreas kainz Update file menubar arrangement #433
42c56919b Ayhan Yalçınsoy Remove Poco/TimeStamp.h left-over part-2
c1b8a64fc Ayhan Yalçınsoy Remove Poco/TimeStamp.h left-over
1ef9ad4f5 Ayhan Yalçınsoy Remove Poco::LocalDateTime left-overs
7aae0ddc4 Jan Dageförde Simplify another Util::getHttpTimeNow() in headers
8aaebf9e1 Gleb Popov Add FreeBSD case to autogen.sh
d6dfd80ee ihristova11 chore: bump eslint version to 5.0.0
be98e41c2 Nicolas Christener Fix #391, Add “Actual behavior” to GitHub issue…
166f4b717 andreas kainz icon fix
bb5e11292 Pelin Kuran loleaflet: Bump eslint version to 4.0.0
48c2f217b andreas kainz Issue #213: add css theming support to shape icons
eee61971b Ayhan Yalçınsoy Remove unnecessary escapes for eslint 4.0.0 conformance
e6390089a pelinKuran Fix indentations as per eslint 4.0.0
29251ef43 dilaverdemirel Replaces Poco::DateTimeFormatter to Util::getHttpTimeNow #207
e9252a258 bugrakurt loleaflet: eslint 4.0.0 conformance
c6486d472 bugrakurt loleaflet: eslint 4.0.0 conformance
0f96c51f9 bugrakurt loleaflet: eslint 4.0.0 conformance
10c78cf11 pelinKuran Fix indentations as per eslint 4.0.0
3dc3a70a9 pelinKuran Fix indentations as per eslint 4.0.0
6dd2d4fc1 pelinKuran Fix indentations as per eslint 4.0.0
e9ea83efa Mücahid Aydin pep8 coding style conformance for scripts/unocommands.py
d977d1397 Yusuf Keten port to util::make_unique for wsd
0b5734de6 Buğra Kurt loleaflet: eslint 4.0.0 conformance for Control.Menubar.js,
0f229b841 andreas kainz Fix issue #210: StyleAply drop down menu width
161d5cd34 pelinKuran Fix indentations as per eslint 4.0.0
44006a2a1 dilaverdemirel Fixes some eslint 4.0.0 format rule mismatches #229
084a29504 Alan Verdugo Fixing pycodestyle errors
6ce6e0fbb corleone77 locorestrings style fixed
5452c205e Alan Verdugo Fixing pycodestyle checks
4768baf1d Rizal Muttaqin Update Impress sidebar icons
00cfe2246 Rizal Muttaqin Update icons to match newest Colibre color scheme
21373089c Gabriel Masei Unit test for skipping ModifiedStatus from deduplication
e982a8665 Yunus Bulut Remove WebDAVStorage in Storage.hpp #111
35ad7d426 Yunus Bulut Destroy WebDAVStorage and section #169
9d0154068 Andrea Gelmini Fix typos
6e7f2a1f8 Andrea Gelmini Remove executable bits on gif file
42d835ca4 Andrea Gelmini Fix typo in code
b2360fec3 Andrea Gelmini Removed duplicated include
596b26c7d Andrea Gelmini Fix typo in code
94e737b89 Kandarp Patel Ensure consistent function declaration in TextInput.js
170b7dd0b Kandarp Patel Fix Issue #68 Ensure consistent function declaration

Thanks to all translators Weblate contributions also kept coming with added missing strings left and right:

김주현; Abdul Mukti Nurrohman; Abduqadir Abliz; abidin toumi; Adam Rak; Adolfo Jayme Barrientos; Akhlak Ahmad; Ákos Nagy; Alexandre Brochand; Allan Nordhøy; Andika Triwidada; Andras Timar; Andreas Pettersson; Andrej Shadura; André Marcelo Alvarenga; Andrew Lee (李健秋); Àngels Giménez; Artem; Asier Sarasua Garmendia; Ayhan Yalçınsoy; bact; Baurzhan Muftakhidinov; belkacem77; Besnik Bleta; bormant; bruh; Budi Aryo; ButterflyOfFire; Carlos Moreira; Cédric Valmary; Cheng-Chia Tseng; Christian Kühl; Christian Lohmaier; Còdaze Veneto; Cor Nouws; DaeHyun Sung(성대현, 成大鉉); David Lamhauge; Dimitris Spingos; doanmanhduy75; Donald Rogers; Elisa de Castro Guerra; Eloy Crespo; Eugenia Russell; Ezinne Nnamani; Felipe Viggiano; Flávio José de Siqueira Cavalc; Florian; FW; Gábor Kelemen; George Kitsoukakis; Giacomo Bertolotti; Gökay Şatır; Gontzal Manuel Pujana Onaindia; Harri Pitkänen; HelaBasa; Henry Castro; Hirae; Ihor Hordiichuk; Imanuel Ronaldo; Jan Holesovsky; Jean-Baptiste Faure; Jeff Huang; Jesper Hertel; J. Lavoie; Joachim Vincent; Joan Montané; Jörn Liebau; Karl Morten Ramberg; kees538; K. Herbert; koffevar; Kolbjørn Stuestøl; Kruno; Lars Kirschmann; Leif-Jöran Olsson; Leif Lodahl; liimee; LL Magical; Lukáš Jelínek; Luna Jernberg; Marco Cecchetti; Marco Marega; Marc Rodrigues; Martin Srebotnjak; Masa Murakami; Matthaiks; Mehmet Sait Gülmez; Mert Tümer; Michael Bauer; Michael Wolf; Michalis; Mihail Balabanov; Mike Kaganski; Milo Ivir; Miloš Šrámek; Ming Hua; Mirsad; Modestas Rimkus; Muhammet Kara; Muḥend Velqasem; naniud; Nathan; Naveen; Necdet Yucel; Nguyen Trung Kien; Nguyen Tuan Anh; Nikita Epifanov; Niklas Johansson; No Ne; Oğuz Ersen; Olav Dahlum; Olexandr Pylypchuk; Olivier Hallot; Osoitz; Oymate; pan93412; Paul Roos; Pedro Pinto Silva; phlostically; Piotr Rudzki; Pranav Kant; Quentin Pagès; raal; Reza Almanda; Rhoslyn Prys; Rizal Muttaqin; Rob Pearson; Roman Vasylyshyn; Ron Stephen Mathew; Rybnicek-PCHELP; Saikeo; Samson B; SC; Sebastiaan Veld; Sérgio Marques; Sérgio Morais; Slimane Selyan Amiri; So; Sophie Gautier; ssantos; Stanislav Horáček; Steen Rønnow; Stratos Kostidis; Stuart Swales; Sveinn í Felli; Szymon Kłos; tamer dab; Thais Vieira; Tor Lillqvist; Tymofii Lytvynenko; Unihuppio; uzadmin; Valter Mura; VenetoABC; vpanter; wck317; William Gathoye; wxf26054; Xosé; Yaron Shahrabani; Zhou Nan; Андрій Бандура; Євген Кондратюк; امير محمد العمري; غادة الذياب; வே. இளஞ்செழியன் (Ve. Elanjelian); 日陰のコスモス; 村上正記; 琨珑 锁

This release also marks the very first community smoke test, annouced in many places:

David Negreira; Rodrigo Borges; Jaime Pereira; Gabriel Masei; Peter Hagen; Rob Pearson; BigTwoProduction; Nicolas Christener; Sebastiaan Veld;

Lastly, we also received many improvements from newcomers to the Community website, CollaboraOnline.github.io

Sachin Hatikankan; Marc Rodrigues; Jaime Pereira; noel; LUCANM; Mariana Beldi; PareshHK; Shubham Ingale; Cor Nouws; Philippe Kalaf

Read More

Collabora Online performance wins – an insight into our ongoing work

Optimizing the performance of Collabora Online is one of the central focal points within our current development work. Following improvements in the recent Collabora Online 6.4.10 release, the upcoming 21.11 release will exhibit more of the continuous improvements in this area. The improvements may be noticeably experienced through a variety of daily work done by means of the software. But how exactly does the implementation of massive performance improvements work? It can be compared to solid detective work. Follow us through this search for clues!

Performance improvement for multiple users – a detective story 🔎

In advance of the actual coding, working on performance improvements closely resembles detective work. Simulating multiple users working on the same document, is something that turned out to be feasible with the feature in LibreOffice purposed for displaying a document within different windows (Window > New Window). This was a feature that already existed in LibreOffice predecessor OpenOffice. It may be a rarely used feature on the desktop, but it does mirror the way of collaborative editing with Collabora Online. However, one must then find out how this code scales… The investigator in this story is Collabora developer Luboš Luňák. He was on to something big here, which led to significant performance improvements across various levels, ultimately benefiting all users of LibreOffice Technology. The technical details of his search and subsequent conclusions can be seen on Luboš’ blog.

 

 

Performance wins illustrated 📊

While extensive work continues with its progress, a list of current performance improvements is also available on Luboš Luňák’s blog. The following video of the Collabora Online perf-test – a test routine we use to measure performance in Collabora Online – illustrates the performance improvements of the implementations already made. The test simulates the fast, simultaneous typing of six users in a document (the other five are not visible in the video because they are writing elsewhere in the document). The rigorous test setting, which goes far beyond what is required of the software in everyday use, is ideally suited to visualizing performance improvements. In the video, you can see the performance of Collabora Online before the latest optimizations in the upper excerpt, and the significantly better performance in current versions during (middle) and after optimizations have been implemented (bottom).

Optimizing pathological loads – before/during/after

 

Performance talk at COOL Days 2021 🆒

Collabora developer Luboš Luňák discussed the various performance improvements in Collabora Online during the Developer Day at COOL Days 2021, a conference hosted by Collabora and dedicated entirely to Collabora Online. His talk “Rendering wastage and performance wins” covered the profiling process, described existing performance issues and displayed a variety of improvements at different levels. Technically interested people can find his talk on YouTube. The corresponding slides are also available for download.

Watch the video!
Download the slides!

 

 

Please try out Collabora Online 21.11 – RC 1, and let us know of any workloads which you find have issues so that we may expand our internal testing & benchmarking to include them.

About Collabora Online

Collabora Online is the powerful LibreOffice-based online office that supports all major documents, spreadsheets and presentation file formats, which can all be easily integrated in many infrastructures and solutions. Key features are collaborative editing and excellent office file formatting support. Collabora Online is excellent for enterprises that need a powerful office suite in the Cloud, or on-premises, that protects their privacy and allows them to keep full control of their sensitive corporate data. Collabora Online – built on LibreOffice Technology – enables Hosting and Cloud businesses to include document viewing and collaborative editing functionality into their service offerings.

 

 

Read More