Archive for the ‘Last Week in KOffice’ Category

Last Week^WMonth in KOffice — August

Monday, September 6th, 2010

It’s been some time since the last update — about 650 commits, in fact, over a period of four weeks. sometimes real life issues get in the way of producing timely updates, and now there have been so many commits that I’m not going to try to give you blow-by-blow account of what happened! But there are quite a few highlights! Last week was also the last week new features could be added to KOffice, since we’ve entered the hard freeze period for the 2.3 release. We’ve also seen two people newly come to our community who are working on bringing KOffice places where it never was before: the medical market and Meego, proving KOffice’s incredible versatility.

Releases

FreOffice was released and anyone with an N900 can easily install it — and then has access to a very impressive mobile office suite. It’s the only free software (or open source) mobile office suite. It’s the only mobile office suite that is OpenDocument-based, but it still has filters that provide import capabilities for Microsoft Office files. It provides document creation and editing as well as viewing with a user interface optimized for mobile devices. And there are plenty of fun features, like moving between slides using the accelerometer, virtual keyboard support for Indic languages:

And a host of other incredible cool features — if you have an N900, you have to give it a try!

KOffice 2.2.2 was released, the last version of KOffice 2.2. It contains a number of nice bug fixes and is pretty stable, but don’t let yourself be seduced into using 2.2 instead of the 2.3 alphas and betas that we will soon be releasing: we need you to help us test 2.2!

Looking at the work done since 2.2, it’s clear that KOffice 2.3 will be a really cool and solid release, with especially an incredible amount of improvement to the import filters and ODF compatibility but also to text layout, animations in KPresenter, a new mind-mapping shape and much more. Soon, we will open a branch for continued feature development — life never stops — but almost all our effort is now focussed on fixing bugs and getting rid of release blockers.

OOocon

Inge Wallin, Jos van den Oever and Suresh Chande attended the OpenOffice.org conference in Budapest and . Inge sent a detailed report to the KOffice developers mailing list.. Short version: it was a blast. We did quite well, and especially the RDF demo in FreOffice was a big success. To quote Inge:

I and Suresh Chande from Nokia gave a presentation about semantic metadata in ODF, stored in RDF triples. … We also showed a demonstration where a document was
loaded into KWord and we added a vcard (name, telephone number, …) to the
document and then saved it to a file. The file was then transferred to
Suresh’ N900 mobile phone where he showed it using FreOffice and then picked
up the vcard and the telephone number and placed a call to my mobile phone
withing dialling any number. This drew a few raised eyebrows. :-)

Read more about the demo on the FreOffice blog!. FreOffice even made the Hungarian national television.

Inge and Jos also participated in the interoperability demo, where KOffice did much better than at previous sessions.

Development

Andreas Hartmetz has made it possible to link KOffice with the gold linker — which is potentially significant news for the KOffice hackers, since linking KOffice takes almost more time than compiling it, and gold should be much faster.

Boudewijn Rempt implemented a QGraphicsItem-based canvas for KPresenter and Kivio, now the “Big Three” all can render in a QGraphicsView-based system.

Christoph Goehrlich gave a lot of love to the spell checking plugin of KOffice, and now it’s possible to enable and disable the red squiggles and there’s a context menu where you can select alternatives.

Cyril Oblikov put the final touches to the treeshape plugin; loading, saving and configuration is now implemented. This was a Google Summer of Code project, but we are very glad that Cyril has indicated he intends to stay around and keep working on KOffice!

Gopalakrishna Bhat added editing and searching to the spreadsheet module of FreOffice

Jean-Nicholas Artaud added a slide sorter to Kpresenter

Jos van den Oever improved the loading performance of KOffice across the board.

Lassi Taneli Nieminen, Carlos Licea and Sebastian Sauer worked together on the DOCX import filters, especially the PPTX filter and improved those a lot.

Marijn Kruisselbrink not ony got himself engaged during his stay in California, but also doubled the loading speed of KSpread, started an XLS export filter plugin and experimented with directly importing XLS to KSpread — all KOffice applications except Krita always first write out the converted file as ODF and then load it, and this bring a significant peformance with it.

Pramod Soganegopalkrishnabhatt implemented a new HTML export filter for KWord.

Rahul Das implemented OpenGL based slide transitions for the presentation part of FreOffice.

Sugnan Prabhu implemented two very impressive features: the first is an implementation digital signatures for ODF files:

The other new feature is RDF support in FreOffice. This was demoed to great acclaim in Budapest at OOocon. This video is well worth watching! You can load a document in FreOffice, select a name and then proceed to make your N900 call that person.

Of course, there were many more commits by many more people, adding stuff, fixing bugs, improving performance or just the looks of the code — this was just a short tour of the highlights of August

Last Week in KOffice — Week 31

Tuesday, August 10th, 2010

Last week was chiefly memorable for a very happy occasion: KOffice release dude, pigment guru and Krita hacker Cyrille Berger married Hanna Scott (who also has contributed to KOffice and attended sprints) in Kalix in Sweden! Congratulations! Inge Wallin was present as well.

Also, we are expecting a new release of FreOffice Real Soon Now. It will contain so much goodness from the students from Bangalore — FreOffice has become a very powerful mobile office suite — and the only one that is fully Free Software.

Code

Carlos Licea implemented code to read tables in PPTX documents.

Casper Boemann fixed a crash that occurred when laying out text with copied elements. He then spent a weekend making table handling in KWord more robust by using shared data pointers instead of old-fashioned pointers.

Christoph Goerlich continued working on the autospell feature, fixing display of mispselled words when the autospell feature is turned off.

Cyril Oblikov, despite the absence of his mentor, Cyrille, who was otherwise occupied, went on with his tree shape, adding a gui to control the shape — and fixing a number of bugs.

Cyrille Berger celebrated his impending marriage by adding a new color engine to KOffice, based on the brand new LittleCMS 2 engine. Despite some teething troubles, most things already work correctly, and KOffice might very well be the first application to support lcms2!

Dag Andersen added code to KPlato to check possible bookings when calculating start/end time also for other constraint types than ASAP.

Gopalakrishna Bhat, working on FreOffice, fixed a crash that occurred when closing a word document, polished the font size selection interface, added saving confirmation on window close if the document is modified, fixed another crash when opening first a presentation then a word processing document and finally added display of row and column headers to the spreadsheet view.

Lassi Taneli Nieminen added basic support for reading embedded OLE objects in MS-OOXML format files, then extended that to support OLE objects in PPTX files, added support for extracting PDF data from those OLE objects, re-anbled support for dropcaps for DOCX, and fixed some problems with hyperlinks in DOCX files.

Manikandaprasad Chandrasekar cleaned up the code for the Google Docs support.

Marijn Kruisselbrink fixed wheel event handling in KSpread, fixed a bug where text that didn’t fit in a cell would cause an infinite loop, fixed loading of documents where there were graphics anchored to a cell, improved loading speed in many ways and fixed a crash.

Matus Hanzes fixed several issues with the display of backgrounds in KWord.

Matus Uzak addes support for nexted fields, hyperlinks referring to floating or inline picture and bookmarks in fields to the DOC filter.

Oli Schuller fixed some places where we had broken the build on Windows…

Pratik Maheshkumar Vyas added editing to the spreadsheet part of FreOffice, including rich text and cut, copy and paste. Then he added a new tool for formulas to the spreadsheet part, slide transitions to the presentation part, fixed a bug where the slidemotion dialog (which lets you associate slide changes with the accelerometer of your N900) would crash, added saving support for ODS files (spreadsheets) and made it possible to create presentations from scratch.

Robert Mathias Marmorstein made it possible to create plugins for text variables and show those in the menu.

Sebastian Sauer fixed a crash in KSpread, added unit tests for the XLS filter and made the XLS filter use libmso (which is a way cool library designed by Jos van den Oever for parsing the binary Microsoft file formats).

Sugnan Prabhu fixed the display of page numbers while navigating a spreadsheet, as well as the display of the zoom level. Then he fixed a problem that occurred when typing capital letters after a double click while editing.

Thomas Zander committed several fixes for the pagespread layout feature of KWord, adding unit tests to verify this code, making it possible to remove page spreads from a document (i.e., turning a page spread into ordinary pages), fixed the painting of page spreads, the printing of page spreads, improved layout speed a bit.

Last Two Weeks in KOffice — Week 29 and 30

Thursday, August 5th, 2010

I’m late with the update on the development news from KOffice, but then, that will happen now and then… Marijn and me were in Bangalore for these two weeks, working on making KOffice render to a QGraphicsView-based canvas and meeting with the people working on FreOffice. We ended today with a nice Nokia-sponsored dinner for the whole Bangalore mobile office team, the interns and Marijn, Jos and me. It’s now Jos’ turn to spend two weeks in one of the craziest and most amazing cities I’ve ever been. It’s now past midnight, and Marijn and me, we’re waiting for our flight back home.

The first group of interns at Nokia is now almost through. Another, smaller, group will start soon and there might be more activity. And let’s hope that the current crew won’t melt away when the pressure of finding a day job after their studies becomes pressing! FreOffice really is totally unique, being the only free office suite that is designed for mobile platforms, and is still tightly integrated with the desktop version. There are lots of cool, innovative and fun things going on, and here’s what makes it all even more exciting: it’s free software, there is no fork from KOffice and everyone can join in coding.

Code

At 303 commits, we improved the commit rate over week 28 and, all in all, these have been very productive weeks with lots of exciting things happening in KOffice and FreOffice.

Adam Celarek fixed a bug in the handling of tablet events by the color selectors, greatly improving their usability.

Adam Pigg ported the Kexi project list view from its current Qt3/KDE3 based implementation to the modern model/view framework of Qt4.

Ana Beatriz Guerrero López fixed building Karbon on the ARM platform.

Benjamin Port implemented saving of text animation and fixed a crash when animating shapes.

Björn Breitmeyer made bubble and scatter charts work, fixed the loading of bubble and scatter charts from ODF documents and finally implemented support for loading these charts from Microsoft 2007 format files.

Boudewijn Rempt implemented support for using QGraphicsWidget instead of QWidget as a base for KOffice canvas classes. This makes it possible to render an office document in a QGraphicsScene — KWord and KSpread have already been extended to support this, and support for KPresenter is underway. This also opens the way for even more canvas technologies, making KOffice much more future-proof

Carlos Licea implemented support for presentation comments in .PPTX files by creating a complete new shape. This includes conversion, loading from ODF and saving to ODF, as well as initials support, display and editing of the contents!

Casper Boemann, hacking from Helsinki this time, improved support for converting hyperlinks from .DOC documents, fixed a crash in the layout of tables, improved the loading of tables that occur after a list and of lists that occur after a list, implemented vertical alignment support, fixed (together with Inge Wallin) character anchors to also support above-baseline and middle-of-baseline positioning, improved the performance of the layout engine, improved the quality of text layout, fixed another crash in the layout of tables, fixed the placement of inline images, if those images are the only thing on a line, fixed whole-word dropcaps in a justified paragraph, implemented support for default tab distance, improved continued list numbering and finally made frames that have no runaround specified work correctly.

Christoph Goerlich, a new face in the KOffice community, implemented disabling background spell-checking. Welcome!

Cyril Oblikov improved the interactive movement of connected shapes and improved switching between tree layouts.

Dag Andersen fixed a crash in KPlato that occurred when loading a project that used a scheduler that no longer exists. He also implemented handling of appointments in the context of scheduling of resources. Finally, Dag implemented a check for possible bookings when calculating start/end time for constraint types than other than ASAP.

Gopalakrishna Bhat added editing of multiline bullets and numbered lists to FreOffice. He fixed pasting of text when the clipboard is empty and finally made it possible to save ODT documents using a Maemo-compliant user interface.

Inge Wallin started improved support for EMF files and WMF files.

Jaroslaw Staniek before going on a well-deserved holiday, implemented support for large memo fields in Kexi.

Johannes Simon improved colour handling in KChart and implemented showing of markers in bubble and scatter charts.

Laurent Montel, the former maintainer of KPresenter, dropped by to clean up some code, as is his occasional wont. Memory leaks and broken ui files were like corn before his sickle.

Lukáš Tvrdý improved the resource server (used as a central place to hand out patterns, gradients and things like that) to make it possible to delete a resource from the server without also removing a file from disk.

Marijn Kruisselbrink implemented a QGraphicsWidget-based canvas for KSpread, fixed memory leaks in the .XLS filter, improved memory usage there as well, fixed some very scary code in the style handling in KSpread, which fixed a crash, improved the speed of loading spreadsheets with many shapes, fixed compilation on ARM, fixed a crash when loading sheets with charts in the topleft corner, fixed saving of sheetnames with special characters, fixed loading of documents that contain grouped rows or columns, fixed the display of bottom-aligned text (even when rotated), fixed the drawing of rotated text, fixed the loading of ancient files (Excel 95…) with rotated text, improved support for urls in cells (note: you cannot have rich text and a url in the same cell), improved display of text in the row and column headers, implemented support for editing a sheet from FreOffice, improved the XLS filter to no longer use a home-cooked QString equivalent, fixed escaping of sheetnames and finally fixed handling of mousewheel events. I know Marijn did sleep, because I got up in the morning before him, but I suspect him of secretly hacking all night long!

Matus Hanzes fixed loading of the master style of tables in ODT. He also implemented support for whole-page backgrounds in KWord.

Matus Uzak improved support for loading bookmarks from DOC documents.

Pramod Soganegopalkrishnabhatt committed the first version of an XLST-based ODT to HTML filter.

Pratik Maheshkumar Vyas implemented editing small-caps text in FreOffice, added an icon for setting the accelero-meter based options for giving presentations, added finger scrolling in the spreadsheet view and implemented undo and redo for editing.

Sebastian Sauer improved support for loading lists from Microsoft Office 2007 files, fixed aligmnet defined in master slides when loading PPTX files, ported loading pictures from XLS documents to use the MSO ODraw library implementation and fixed a crash when loading XLS documents.

Sugnan Prabhu implemented support for adding, removing and moving slides in FreOffice.

Sven Langkamp added an Okular generator for all files support by KPresenter: this means that Okular can now render .PPT, .PPTX and .ODP. He also improved support for colorspaces when loading gradients.

Thomas Zander improved the startup dialog: it now remembers last used units and improved support for page spreads in KWord.

Thorsten Zachmann fixed an assert that occurred when loading ODT files with horizontal or vertical connections.

Next week

The Google Summer of Code is nearing its end, so next week should see the final — officially — phase of Cyril and Ben’s work. We all hope they will continue on their projects, of course!

Last Week in KOffice — Week 28

Wednesday, July 21st, 2010

Week 28 proved to be a very busy week, with about 120 commits and a nice spread all over KOffice and FreOffice.

Code

Arjun Asthana committed the first version of a collaborative editing mode for FreOffice — a KOffice first. We have had a Google Summer of Code project before that promised collaborative editing, but that never came to anything.

Benjamin Port improved the saving of object animations in KPresenter

Boudewijn Rempt removed some unused code in KSpread when working on a plan that should make it possible to use KOffice not just on QWidget-based surfaces, but also QGraphicsView (and who knows what else). Boudewijn started on QGraphicsWidget-based canvas for KSpread as a first proof of concept. QGraphicsView started out as a canvas class where thousands of graphical objects could be inserted into a graph, shown in many views and interacted with. A bit like KOffice’s flake library, actually — but these days it is also used as the foundation for alternative widgets sets and user interfaces, and the KOffice community decided in Essen it wants to be part of that as well.

Carlos Licea implemented conversion of Comments from PPT files for KPresenter, as well as an extension to ODF to make it possible to actually load those comments. ODF itself doesn’t really have an equivalent, so we use the officeooo namespace for these comments. Carlos also implemented saving the comments to ODP files.

Casper Boemann worked mainly on the DOC filter: he fixed a crash when loading styles, implemented support for loading drop caps from DOC documents and improved handling of character styles. There was some discussion about what to do when the paragraph that starts with a drop cap has fewer lines than the drop cap is high. Looking at other applications, OpenOffice then shrinks the size of the drop cap, Scribs starts the next paragraph under the dropcap and MS Word and In Design continue the next paragraph next to the drop cap, keeping the paragraph indentation, and the issue at had was which example KOffice should follow.

Cyril Oblikov fixed a number of bugs in his treeview Summer of Code plugin.

Cyrille Berger improved the API of KoCanvasController, following a change that broke his out-of-tree maintained flake-based Braindump application. Cyrille is also our release dude, and despite being busy moving house, he managed to push out the KOffice 2.2.1 bugfix release.

Dag Andersen added the concept of resource teams to KPlato. This is one of the big improvements Dag intented to develop for KOffice 2.3 and it’s great to see the feature land!

Gopalakrishna Bhat fixed a bug where FreOffice would hang when giving a presentation, and fine-tuned his presentation highlighter tool. He also added a dbus interface to the presentation tools in KPresenter (like draw and highlight) to KPresenter itself. This means you can control KPresenter during a presentation: combined with a bluetooth demon that knows this api, you can control your presentation using your N900. Imagine walking around on stage, drawing on your N900 and the sketch shows up on the screen, or moving to the next slide by giving your phone a good old shake!

Inge Wallin improved support for importing embedded documents from Microsoft Office 2007 documents, made the headers and footers imported from PPTX presentations work better and fixed some regressions caused by his breakneck speed of development.

Jaroslaw Staniek committed a patch by Pavel Heimlich that made it possible to compile Kexi again on Solaris.

Manikandaprasad Chandrasekar came back from his well-earned holidays and committed a new plugin for KOffice: google-docs integration. This means you can check the documents you have in the “cloud”, open them in the relevant KOffice application as ODF, edit them and save them back. All the creature comforts of KOffice and all the warm sharing fuzzies of Google!

Matus Uzak worked mainly on the DOC import filter. He improved the loading of floating pictures, implemented handling cell padding for tables, improved the handling of master pages and continuous section breaks and the wrapping of text around tables.

Pavol Korrinek implemented support for diagonal borders in the DOC import filter.

Pratik Maheshkumar Vyas did janitorial duties on FreOffice, cleaning up in general. He fixed a number of bugs and optimizations,

Sebastian Sauer fixed issues with loading font sizes in PPTX documents, fixed a crash in the handling of lists in KOffice’s core text handling library and committed a final fix for improving list indentation.

Srihari Prasad GV continued working on the new html-odf import/export filter. Their new approach, suggested by Jos van den Oever involves using xslt transformations following the direction of the webodf project.

Sugnan Prabhu implemented navigation through slides in the slide preview in FreOffice.

Sven Langkamp fixed the erase composite op so it cares about the selection mask, added a warning when the user tries to overwrite an existing pdf file and finally fixed the loading of background images from ODF documents.

Thomas Zander committed the first version of his text-on-shape feature. This is not finished yet, since he notes that loading and saving are still suboptimal alignment and autogrow are not implemented yet. He fixed a bug in KWord where the cursor could disappear of the screen.

Release

KOffice 2.2.1, a bugfix release of the 2.2 series was duly released on Thursday. KOffice 2.2.2 is scheduled for August/a> and will probably be the last bugfix release for KOffice 2.2.

Last Week in KOffice — Week 27

Tuesday, July 13th, 2010

Week 27 was Akademy Week Inge, Marijn, Jaroslaw, Benjamin, Jean-Nicholas and Boudewijn all attended Akademy. FreOffice, the mobile KOffice application was mentioned during Valtteri Halla’s Keynote. Someone in the public asked what Nokia/Meego was going to do with their “fork” of KOffice. But this is the amazing thing: there is no fork of KOffice. FreOffice is developed right inside the KOffice source code repository and used the KOffice core libraries and applications unchanged to create the world’s first and only free and open source mobile office application. Inge gave a well-received presentation on KOffice and there were a number of KOffice BoF sessions, mostly concerned with the way KOffice works both on the desktop and on mobile platforms.

Code

We had about 90 commits to KOffice, excluding Krita, in week 27. Last week I have tried to order the news by component, but that didn’t work out for me: it took too much time, so this time I’ll do it by committer again. Lots of lovely stuff happened!

Benjamin Port add text animation. Loading works now, and for rendering visibility, rotation, width, height, x and y are supported. It’s now possible to make text in KPresenter appear paragraph by paragraph! Very nice milestone for Benjamin’s Summer of Code project. Read all about it in his blog

Carlos Licea started work on reading OLE objects in XLSX files, showing the preview for EMF files embedded in XLSX, made it possible to store OLE and EMF objects and their preview images so they can be saved out again and finally implemented the saving, nicely finishing this feature in under a week.

Casper Boemann improved support for loading drop caps from .DOC documents. Improved support for dropcaps in KWord itself is still pending review.

Cyril Oblikov made it possible to move mindmap trees from parent object to parent object and implemented four types of layout for the tree: OrgUp, OrgDown, OrgLeft, OrgRight.The layout can be selected pressing <1>, <2>, <3>, <4> while the tool is active. Good progress on this front, in other words.

Cyril’s Google Summer of Code mentor Cyrille Berger fixed a deadlock in pigment when colorspaces were used from multiple threads.

Dag Andersen fixed glitches in the performance chart in KPlato, fixed the progress dialog and improved date/time accuracy.

Gopalkrishna Bhat re-enabled the presentation tool for FreOffice — there was some commit confusion earlier, but if you bould FreOffice you can use it now..

Inge Wallin fixed a number of bugs in the vector shape, which is used to show EMF graphics loaded from Microsoft documents

Marijn Kruisselbrink improved the speed of loading .XLS files a lot during Akademy.

Miroslav Nohaj made KWord text tables support the “exact row height” property loaded from .DOC documents. He also fixed a deadlock in the picture shape, where some pictures would never be shown if you zoomed in on a page in KWord. He also implemented support for loading extra-short month formats from .XLS and and .XLSX

Pavel Korinek fixed the display of overlapping images with the run-through attribute set. He also implemented support for the .DOC “special-border” feature

Pramod Soganegopalkrishnabhatt and Srihari Prasad GV committed the initial work on a new HTML filter for KWord. The current HTML filter was never ported from KWord’s proprietary file format to ODF, and is no longer operational, so a new filter is very welcome!

Pratik Maheshkumar Vyas committed editing functionality to FreOffice. This functionality is already in the newly released FreOffice you can install on your n900!.

Sebastian Sauer implemented automatic decimal place adjustment in KSpread, fixed loading embedded and nested lists in KPresenter and finished by fixing the indentation of list items in KPresenter and KWord.

Stefan Nikolaus fixed clearing the cell contents when hitting delete in KSPread and re-enabled the alignment actions.

Thomas Zander fixed a problem with printing text and improved the speed of text layout.

Thorsten Zachmann optimized the loading of character styles, fixed the display of dates in KPresenter and added a new feature: you can now load a set of images in KPresenter and have slides generated automatically for each image.

Releases in Week 28

On Tuesday, Mani Chandrasekar released a new version of FreOffice for the n900. I can confirm that the upgrade is pretty painless! And there is much cool stuff in here.

This week, KOffice 2.2.1 will also be released with a host of useful bugfixes. Debian packages are ready already.

Last Week in KOffice — week 25 and 26

Thursday, July 8th, 2010

I am writing this in a sweltering college room in Tampere, where we are having the annual KDE e.V. meeting. In response to the previous issue, it was suggested that it might be nice to group the activity by application, so let’s try that this time! (Note after writing: this about triples the time I need for Last Week in KOffice, so I’ll revert to work-done-by-person for the next issue.)

These two weeks saw 278 commits (excluding Krita), which is a pretty nice level of activity!

Cyrille Berger has also tagged KOffice 2.2.1. There are quite a number of nice bug fixes in there that improve on KOffice 2.2.0. It will be released next week!

(more…)

Last Week in KOffice — Week 24

Monday, June 21st, 2010

Week 24 was a very active week for KOffice. Apart from Krita, there were 114 commits, plus considerable activity on reviewboard.
Some work has been done on collecting information for users who are interested in installing KOffice, but more’s needed. And we’ve got a list of who is who and works on what now, it only needs
to be sorted, converted and added to KOffice.org.

This report in this format is a bit experimental for KOffice, so don’t hesitate to give me your feedback! This time, I’ve sorted by committer in alphabetical order, but I might change to describing the changes by topic.

Code

Google Summer of Code student Benjamin Port was amazingly productive, making Thorsten Zachmann, his mentor, very happy. Read his blog! Benjamin is working on implementing animation of objects on pages. This is a huge task, since ODF incorporates the SMIL standard for animations, and that’s a big document. Ben implemented support for SMIL duration, translations and keytimes — and fixed crash in page navigation. Another thing Ben committed was a sophisticated HTML export option for presentations.

Cyrille Berger made the colorspace registry thread-safe.

Dag Andersen improved the translatability of KPlato. One amazing thing about being part of KDE is all the translations there are. Translators really should get more kudoes, so here’s a cheer for the translators and their hard work!

Inge Wallin improved support for Stock charts, reorganized KChart: the application is not really alive, but the chart plugin is, and that’s now grouped with the other shape plugins, like the text shape. Finally, Inge improved support for loading slide layouts, master pages and backgrounds for .pptx presentions.

Jaroslaw Staniek improved support for image boxes in Kexi and backported Kexi fixes to the 2.2 branch.

Jean-Nicolas Artaud fixed some problems with loading documents with bookmarks in the Microsoft .doc format.

Johannes Simon fixed a bug in the charting library, discovered by Dag Andersen.

Lassi Taneli Nieminen worked on the .docx filter: headded support for ordinal numbered lists, improved footnote support (correct numbering for footnotes still needs to be implemented in kword), improved loading of comments and improved endnote support.

Marijn Kruisselbrink added support for loading horizontally justified alignment to the xls filter — and to KSpread, since KSpread didn’t support that yet.

Matus Uzak added support for manual page breaks to the .doc filter and fixed some bugs in the ODF the .doc filter emits.

Michael Drueing stepped in and has started fixing compile errors with Microsoft’s Visual C++ compiler. This is very welcome!

Pavol Korinek created a small workaround for a bug in OpenOffice: OpenOffice doesn’t save the background of an object if it’s default (and default is a weird blue in OpenOffice). We have a special class, KoOdfWorkarounds where we store all the compatibility code needed to be interoperable with OpenOffice — and in the future other applications that write buggy ODF. This is not an indictment of OpenOffice: all code contains bugs, we just try to play well together.

Sebastian Sauer implemented loading of charts in .docx and .pptx documents.

Former KSpread maintainer Stefan Nikolaus has returned to KOffice hacking with a vengeange! In week 24, he fixed painting of the row and column titles, right mouse button interaction for the row and column titles, right-to-left (RTL) layouts, improved autoscrolling, improved the RTL support of the Cell tool, fixed drag-and-drop in RTL sheets. He restored the “Insert series…” functionality, fixed sheet repainting, improved cell validation, and fixed the Goal Seek dialog and command.

Thorsten Zachmann made it possible for KPresenter to load extra attributes for page transitions, added a fade-over-color page transition effect, improved the loading performance of paragraph styles and fixed undo of deleting objects.

That’s it!

For this week. More next week!

Last Week in KOffice — week 23

Thursday, June 17th, 2010

Last Week in Krita is quite a success, whenever I get a chance to update it, so it seemed like a good idea to do the same for KOffice: keep everyone who is interested, developers, contributors, users — everyone — up to date on what is happening in the KOffice community. I don’t promise it will be exactly every week that I will post these updates, but like for Krita, I will try to do it really often. Me, by the way, is Boudewijn Rempt. I’ve been a KOffice developer since 2003, Krita maintainer since 2004, I’ve been release dude until Cyrille Berger took over the baton.

So, without further ado, hot from the sprint: what is happening in KOffice!

Sprint

The KOffice community tries to join up twice to year for some intensive face to face hacking, discussions and socializing. The first sprint of this year was in Essen Horst, in the wonderful Linux Hotel. Now this is an environment that does a hacker good! Sunshine, free soft drinks, beer and wine, a lawn, a cosy dining room, a great hack room, wonderful bedrooms, great connectivity and quite close to Deventer, where I live. Not that that is the most important thing, but it is easy to reach.

There were slightly under twenty people. Friday was mostly socializing and some patch review. Saturday was tough: we had a meeting from 9:00 AM to 18:00 PM with only a break for pizza. Sunday again was a day for hacking, and for discussing smaller items.

You can read the meeting minutes on the developer wiki. The minutes are very rough, so I’ll present the gist of it here.

First, we honestly and fearlessly recognized that despite the recent spate of KPresenter love, we don’t have many users for KOffice. We even discussed whether we care about having lots of users, because that might conflict with a desire to hack for fun, which is a valid goal for a free software project.

It’s not even impossible that FreOffice, the KOffice-based Office Viewer for Maemo, has almost as many as the desktop version of KOffice, if we consider KPresenter, KSpread and KWord. Two sessions were devoted to this issue: first we spent identifying reasons for the lack of users, and secondly we created a list of high-priority missing features. Some things have already started being implemented, like a draft for a good page about downloading/installing KOffice. Other things are much more long term. And people don’t use stagnant software, so we’ve started, well, this series of articles.

Second, with equal candour we asked ourselves why so many parts of KOffice have so few developers. This is a big worry: while there are some 40 regular contributors, there are also many components. Applications like Kivio have been dormant for ages. Karbon has been a one-man show for years. KPlato ditto. And while the number of developers has grown, it is mostly because people are paid directly or indirectly to fix issues in KOffice that are vital to make the mobile variant a success. Here, too, we didn’t plug our heads in the sand ostrich-wise, but came up with a list of recommendations. The first issue, the sometimes rather difficult patch review process has been made explicit and streamlined. Another thing is that people don’t get interested in hacking on something that’s perceived as dormant, we hope this series of articles will get people interested. Read the minutes for the full, rather unedited, list.

Thirdly, we were wondering about platforms and portability. And not just portability between Windows, X11 and OSX — though that has its own challenges — but by making it possible to have different interfaces on top of the KOffice engine. Right now, FreOffice uses KOffice internally, but has a custom interface. In the future, we might want to put a web frontend on top of KOffice, running the engine in a server. Or something else altogether. A promising platform where KOffice could play a role is Meego, for instance, were KOffice could provide services to apps. We’ve been hacking on KOffice for more than ten years, and would like our work to remain relevant in the future. So this issue is vital, and everyone present committed to making KOffice much more portable and reusable. Nokia is a great help here and have promisted to document all the issues they had when putting a new face on top of the KOffice engine.

This really was the most important part of the Saturday discussions, and it can be summarized as:

  • 2.3 is for users. Let’s make it so!
  • we want to make it fun to hack on KOffice
  • KOffice should go places!

Of course, everyone prefers hacking to discussing, and Sunday we had some good technical discussions and equally good hacking! Not to mention pizza on the lawn! This was easily the most positive, productive and fun KOffice sprint in years. And like usual, we even forgot to toast to the release of 2.2!

Thanks go to the KDE e.V. and its sponsors for sponsoring this sprint and to Alexandra Leisse and Inge Wallin for organizing it!

Summer of Code

Six people are working on KOffice Google Summer of Code projects. Cyril and Marc have had a slow start: both have had some projects and exams to finish. But Cyril has already been bugfixing and Marc has started for real this week. Cyril is working on a mindmapping application, while Marc is creating a transform tool for Krita.

Adam Celarek has committed the first version of his new color selection dockers. These are also useful in Karbon and KPresenter. Pentalis and Dmitry’s work is more deeply focussed on Krita agin. Both have been committing like mad!

Bad News about Karbon

Karbon is one of the little-known jewels of KOffice. It’s a full-featured vector drawing application with support for SVG and ODG. There is all kinds of cool stuff — even filters on vector objects are possible. I’m a raster kind of guy, so my vector foo is extremely limited, but people tell me that it is very usable — it performs well, has the right features and usability-wise it’s quite good. And after the initial development by Rob Buis last century, it was mostly developed by one person: Jan Hambrecht.

However, Jan has had to stop his involvement in KOffice, so Karbon is the third orphaned application in KOffice, after Kivio and KFormula. And this application is really cool and a lot of fun to hack on! So, if anyone is seeking fame eternal and a really cool hobby, don’t hesitate to contact the KOffice developers on #koffice on freenode.not, the forums or the koffice-devel mailing list.

Next…

Next week I’ll start doing an overview of code changes as well.