prev
Issue 108
27th April 2008
by Danny Allen
next


This Week...
Rating support, with a NEPOMUK backend in Gwenview. KStars gets a conjunctions predictor module. Basic XSLT support and a HTML export GUI in Parley. Work on clouds view integration in Marble. Keyboard navigation support in KNetWalk. The start of a new dock window layout in Kooka. Work on tabbed interface user interaction in Dolphin. A paste text snippets applet in Plasma. charselectapplet is deleted, replaced by a Plasma-based equivalent. Welcome/info screen stylings extended from the KDE desktop into KDE-PIM applications and KInfoCenter. Various work, including improvements to the collection and On Screen Display in Amarok 2. Various small features in KTorrent. Initial work on a Krita module for "WaterStudio". KBlocks moves from kdereview to kdegames. Akonadi server and shared components move to kdesupport. "WaterFlow", a library and program to create computational flow chart-based diagrams is imported into KDE SVN. KDE 4.1 Alpha 1 and KOffice 1.9.95.4 (KOffice 2 Alpha 7) are tagged for release.

Thomas McGuire provides a status update on KMail (and KDE-PIM) in KDE 4.1:
As you may know, KMail and the whole KDE-PIM module were not released with KDE 4.0, but they most likely will be released with KDE 4.1. This depends a bit on whether we manage to squash the remaining problems in time.

For KMail, the most work has gone into actually porting it to Qt4 and KDE4. This was a huge effort, since KMail and Kontact have a big codebase, and the porting resulted in many regressions. At the point of the KDE 4.0 release, there were simply too many of those regressions that made Kontact not very usable. We simply didn't have enough manpower to make a release happen at that time, and we could still use more developers to help with coding for the KDE 4.1 release!

We've come to a point where most of the regressions are fixed, and KMail is usable again now. I use it for my daily work with POP3, and don't have any major problems. IMAP also seems to work reasonably well.

The port to Qt4 is almost complete, the only major thing missing is the folder list and the message list, both of which will be taken care of by the SoC project by Szymon Stefanek, who also has exciting plans for a new, more modern, look of the message list.

For the KDE 4.1 release, I mainly plan to stabilize it more and continue fixing regressions. Even though most of the work has gone into porting, KMail will also contain new features. Some I remember off the top of my head are" support for tagging, support for adding links to HTML messages, and some spell checking improvements.

A major new feature of KMail is that it will now also run on Windows and MacOS X, thanks to Jaroslaw Staniek who worked hard on the Windows port. Below you'll see a screenshot of Kontact running on Windows.


Because there were some problems with the way KMail stores its index information, KMail now uses SQLite for that on Windows.

The long term plans for KMail is of course porting it to Akonadi, which will require huge changes to the code, but will finally replace the monolithic and non-crossplatform storage layer of KMail. This will take some time, it is unlikely to happen before KDE 4.2.

Stephen Kelly writes about a shared KDE Rich Text widget:
I've been working on a "rich text" widget for KDE over the last few weeks. This new widget is intended to make it easier for application developers to add a rich text editor in their applications.

While working on adding nested lists and better hyperlink features for KJots, I realised that these features were also missing from KMail. Looking further, I realised that all applications that offer rich text editing implement it separately, supporting a different set of rich text features and introducing their own bugs. A better situation would be to centralise and reuse the code in all of the applications. This means that all applications which use it for their rich text editing have access to the same features and the same bugs (and of course, bugfixes).

The rich text widget has spent a special shortened period of 10 days in kdereview and was moved into kdelibs on Friday. Already, it is being used in KJots, KMail, Mailody, and the KMail signature editor. Although the same rich text features are available to all applications, the application does not need to support the entire set of functionality.

For example, KJots disables the alignment features and does not include an action to remove text formatting. It also adds several additional actions not needed by the other applications. One of my favourite and personal most wanted features is the format painter. It allows the user to copy the text formatting from one part of a document and apply it to another.

Remaining work on this widget includes support for creating and editing tables, better image management and more. There are also two missing icons (insert horizontal rule and insert link) which will hopefully be completed in time for 4.1. If you are an icon artist, or want to give it a try (the horizontal rule one should be simple), get in touch at the kde-artists mailing list to get started.


Adding the rich text support to an application is very simple. For example, to get a rich text widget, toolbar actions and menu items for text formatting (font, size, colour etc), nested list management and editable hyperlinks:

KRichTextWidget* editor = new KRrichTextWidget(this);
editor->setRichTextSupport( FullTextFormattingSupport | FullListSupport | SupportHyperLinks );
editor->createActions( actionCollection() );
setCentralWidget( editor );

The application developer no longer needs to write code to create actions, icons, shortcuts, etc. The actions are ready to use and only need to be specified in the application ui.rc file. Thanks to work by Allen Winter and Stephen Kelly of KMail, the widget can easily be maintained in the future and is fully localisable. If any other KDE or third party developers want help porting to KRichTextWidget, just post on the kde-devel mailing list, or ask in #kde-devel on irc.freenode.net.

In the next in a series of KDE Summer of Code project introductions, Wouter Haffmans introduces KidDraw:
Hello KDE, my name is Wouter and i'm the developer of KidDraw. It once started out as a high school assignment, long ago, written in Delphi. Last year, I rewrote it for Qt 4 for my now 7 months old son. As the name says, it's a simple drawing application for young children. No complicated brushes or tools, just a pen, some colors, a couple of line widths to pick, and that's it. Oh, and of course, one-click saving and loading of images!

At first, I applied for this year's Google Summer of Code to bring KidDraw to KDE. Unfortunately I was not picked, but nevertheless I'll continue to work on KidDraw this Summer to make sure that at least the basic features are working properly. A large part is already done, but as i've been extremely preoccupied with my studies and family lately, it has been too silent for a long time. That will change soon though.

So far drawing works, but saving and loading images is still unimplemented. You can change the color palette, although the colors in the image don't change just yet. Other than that, there is a whole bunch of features that I have in mind for the near and distant future: coloring sheets (i.e. loading a background image), setting an image as desktop background, printing images, connect-the-dots, and much more. There is also a bit of KDE-ifying to be done - it's all just Qt still. Lots of work to be done!


After all the KDE mommies and daddies give KidDraw to their children, I hope other parents will follow soon, followed by inevitable world domination. Those who want to give it an early try, check out playground/edu/kiddraw. The screenshot was made with what's in there right now!

It's great to see Wouter work on his Summer of Code proposal despite not being selected from the highly-competitive pot of submissions to KDE this year - this means that he is certainly not doing it for the money! It's also nice to see new names appear on the top bug killers list (such as James Spahlinger with 47 this week) courtesy of the regularly-organised KDE BugDays.

In other news, Melchior Franz leaves a small note: "It's nothing Earth shattering, but while I fixed and extended KDE's native 'kclock.kss' screensaver in the last days, I noticed that it has now also been ported to Microsoft Windows. There has been an Mac OSX port for quite a while, which got some nice reviews. KDE leading the world. Again. :-)"


Statistics
Commits: 2577 by 235 developers, 5781 lines modified, 1038 new files.
Open Bugs: 16440
Open Wishes: 13941
Bugs Opened: 216 in the last 7 days.
Bugs Closed: 309 in the last 7 days.

Commit Summary
Module Commits
/trunk/KDE
943
/trunk/l10n-kde4
405
/trunk/extragear
236
/trunk/playground
214
/trunk/kdesupport
129
/branches/work
122
/trunk/koffice
108
/branches/stable
105
/branches/KDE
69
/branches/extragear
66
Lines Developer Commits
208
Gilles Caulier
91
91
Patrick Spendrin
81
178
Frederik Gladhorn
72
165
Aaron J. Seigo
68
66
Marc Mutz
66
136
Laurent Montel
61
123
Anne-Marie Mahfouf
55
101
Davide Bettio
48
102
Albert Astals Cid
47
103
Pino Toscano
42

Internationalisation (i18n) Status
Language Percentage Complete
Portuguese
95%
Greek
95%
Ukrainian
91%
Swedish
90%
Japanese
90%
Dutch
84%
German
83%
Chinese Traditional
82%
Brazilian Portuguese
82%
Polish
82%

Bug Killers and Buzz
Bug Killer Number Of Bugs Closed
James Spahlinger
47
Peter Penz
34
Seb Ruiz
24
Oswald Buddenhagen
21
A. Spehr
19
Michael Leupold
18
Bram Schoenmakers
14
Olivier Goffart
13
Luboš Luňák
10
Gilles Caulier
10

Program Buzz
Amarok
  9815
K3B
  4875
KMail
  4840
Kopete
  3320
KDevelop
  2595
Plasma
  2489
Kaffeine
  2037
Kate
  2001
Solid
  1873
Kontact
  1790


Person Buzz
David Faure
  2110
Stephan Kulow
  1749
Aaron Seigo
  1390
Torsten Rahn
  1367
Jonathan Riddell
  1132
Laurent Montel
  1030
Stephan Binner
  782
Thiago Macieira
  668
Zack Rusin
  638
Adriaan de Groot
  631
Commit Countries

Commit Demographics
Sex
94.7 %       Male
7.25 %       (unknown)
1.72 %       Female
Motivation
50.5 %       Volunteer
40.3 %       (unknown)
12.7 %       Commercial
 
Ages
60.7 %       (unknown)
23.8 %       25 to 34
7.90 %       18 to 24
7.37 %       35 to 44
3.35 %       45 to 54
0.491 %       Under 18


Contents
  Bug Fixes Features Optimise Security Other
Accessibility
Development Tools [*]
Educational [*] [*] [*]
Graphics [*] [*]
KDE-Base [*] [*] [*] [*]
KDE-PIM [*] [*] [*]
Office [*] [*]
Konqueror
Multimedia [*] [*] [*] [*]
Networking Tools [*] [*]
User Interface [*] [*]
Utilities [*] [*]
Games [*] [*] [*]
Other [*] [*]

There are 145 selections this week.

Bug Fixes
Educational
Harald Hvaal committed changes in /trunk/KDE/kdeedu/kiten/app:
Added CSS to kiten resultView. Makes things prettier, and also fixes Bug 157320.
Bug 157320: text colour does not obey colour scheme presets
Diffs: 1, 2 Revision 800148

Games
Fela Winkelmolen committed changes in /trunk/kdereview/kbreakout:
Make the random number generator truely random: don't always use tha same seed.
Diffs: 1, 2 Revision 799880

KDE-Base
David Faure committed changes in /trunk/KDE/kdelibs/kparts:
Fix "hide a toolbar in konqueror, then switch tabs -> the toolbar shows again (unless you waited for the autosave timer to kick in)", as reported by Anders Lund (a month ago, on k-c-d). With unit test.
Diffs: 1, 2, 3 Revision 800799

Luboš Luňák committed a change to /branches/KDE/3.5/kdebase/ksysguard/ksysguardd/Linux/cpuinfo.c:
"While the internal buffer /proc/cpuinfo is read into is 32k is size, reading these 32k in a single chunk is not possible: Only up to a page worth of information is being returned in a single read (reading stops as soon as the full block for a subsequent CPU wouldn't fit into the buffer space remaining in the page anymore).

The effect is that only 5 or 6 CPUs (depending on the exact size info for one CPU has) get their frequency displayed (and the respective sensor offered for selection) on x86/x86-64 (where the page size is 4k).

Consequently, multiple reads (until zero bytes are read) must be issued to obtain all information."
Diff Revision 801043

KDE-PIM