Issue 100

2nd March 2008 by Danny Allen

This Week...

Work on WebKit integration, the ability to access Plasma data engines in Plasmoids rendered through WebKit, and a HDDtemp daemon data engine are added to Plasma, plus work on Plasmoid packaging and KRunner. Items can now be dragged from the Kickoff menu to the desktop or the panel. More work on syncing Akregator with online reader services. A GUI for declinations in Parley. Support for DGML tags in Marble. Genuine progress in the KTankBattle game. General improvements and the removal of the Helix engine in Amarok 2. A visual redesign of the KGet "Web Interface", with added translation capabilities. Continued work on KPresenter slide transitions, and KCron. Work on importing and exporting shortcut configurations in KControl. The "three stars per character" password mode returns to KDE 4 (from the KDE 3 series). Various speed optimisations across KDE applications. Ligature moves to "unmaintained" status. KDE 4.0.2 is tagged for release.
Nikolaj Hald Nielsen reports on recent work on Amarok 2 (with the upcoming approach of the first Alpha):
Its been little while since I wrote a nice long update about the state of Amarok 2, and we have been getting a few complaints that there is not enough ews being posted, so I will try to remedy that here. And I have a nice pile of screenshots ready for you! :-)

First up though, we have decided to put a feature freeze in effect starting at the end of this month. This is the first small step towards an eventual release of Amarok 2.0, and hopefully it will help us get it ready sooner rather than later. This also means that we are at the point where bug reports actually start to become useful. More on this in the coming weeks I am sure!

So, whats new in the land of Amarok 2. Lots actually. First of all, I have tried my hand at some small but quite visible modifications to our svg theme, and I personally thinks the results are very promising. I just need to figure out what do do about the volume slider...


And of course, the theme still adjusts itself to the system color theme:


At Magnatune.com, we have been adding free OGG streams along side the existing MP3 streams. Of course Amarok should also benefit from this, so I finally got around to implementing a stream selection GUI. This also allows people with slow or unstable internet connections to select the lo-fi MP3 streams:


I think I can reveal, that as an added bonus, people who decide to purchase one of Magnatune.com's upcoming memberships will be able to enjoy OGG streams in a really nice quality :-)

A lot of work has gone into the Last.fm service and integration. The bulk of the Amarok 2 Last.fm service was originally done by Shane King, but this week there has almost been a competition about who could do the most cool things with the Last.fm service. This however also led to a slight case of "interface wars" as we currently cannot decide between buttons and tree views for the different streams, but I am sure we will figure something out eventually :-) Right now the Last.fm service looks (I am warning you, it is not pretty...) like this:


A really nice feature that was implemented by Dan Meltzer (aka. Hydrogen) is the ability to right click any artist in your local collection and add a Last.fm stream of simmilar artists directly to the playlist:


I have spent some time adding capabilities that will allow any track or stream with special actions that only makes sense when that track or stream is playing to make these actions available throughout the interface. Most notably, when listening to a Last.fm stream it adds the "love", "skip" and "ban" actions to a small sub toolbar next to the play controls:


This small toolbar and the background is completely invisible when playing tracks that do not have any special "now playing" actions. The same actions are also added to the tray menu (and when right clicking the currently playing track in the playlist):


Last.fm is becoming really well integrated, but the great thing about the way it is done is that there is almost no Last.fm specific code anywhere but in the Last.fm plugin, which can be completely disabled. This means that any other service can use the same interface elements to achieve simmilar results. Last.fm is simply the first one to use these capabilities. It also means that Amarok 2 is in no way dependent on Last.fm being available. I think that this independence is very important. It allows us to work with many different services and companies without anyone getting control over the core of Amarok.

And this is personally what I see as the main strong point of Amarok 2. We are positioning ourselves to be able to work with and integrate content and services from a multitude of sources without the fear of what happens if one of these services stops existing, turns horrendously evil, or tries to assert undue influence over the direction of Amarok. And with reports coming in from our crew at CeBIT about the huge interest in Amarok, it looks to be a really interesting future.

Now, if we can just get this 2.0 out the door soon... :-)
In case you wonder what I've done this week, I will show you some screenshots of the progress of Mailody this week.

One important thing preventing me to switch Mailody4 was the fact that I could not use attachments yet. In KDE3 times we used KFileIconView to display the attached attachments in the composer. After a rename to K3FileIconView, in the end it needed to be removed from the KDE repository, so I had to comment out the functionality in Mailody. To refresh your mind, this is how it looked in Mailody3:


I requested on IRC what I could use to let it look the same and some advised me to use a QListView with a Flow LeftToRight. I tried that, and after an evening fiddling with settings and adding the needed context menu (open / delete) and hooking it into the composer, it resulted in:


It's almost the same, so the average user will not see the difference, but still it was a couple of hours work. But as it is a proper Model/View, there is now the option to make it all different without much work in the future. I like the column based layout from the old one more then the fuzzy positioning of the new one, but for now this will do. At this stage I'm not prepared to spent hours on it, if I'm even capable of doing that ;-)

The next point was that the pulldown menu's for the identity and mailtransport selection was taking up too much screen estate in the composer. So I made those comboboxes optional. But then you don't have any indication about which identity is being used and you can not change it easily. And then I saw an empty StatusBar ;-). So I added it to the statusbar and made it clickable to be able to switch to another identity or mailtransport. And best of all, it's close to the 'send' button of the composer, so it's natural as well. Here is how it looks:


I know clicking on statusbar items is not really intuitive, but we also have it when viewing messages in the mainwindow, so Mailody users might be familiar. Also that doesn't hide functionality, as the combo boxes are still available. I also know it does not look as slick as the usual Plasma widget, but then again I'm not born for that, so if anyone wants to pimp Mailody, I'm happy to talk to you. Final remark is that the statusbar does not look like a statusbar anymore, no line above it, slightly smaller font, etc. I'll just blame the used style. ;-)

The last feature I implemented this week was a long standing feature request from myself and a co-worker. Simply save all incoming attachments in a certain folder. It's a great feature (first implemented by Eudora as far as I remember), because you don't have to save the attachments from a mail to a certain folder when you need it, it is simply there in a folder (which you can open with your favorite shortcut). Also you might remember after a few months something about a pdf you have received a couple months back. It's simply still there in that folder, while you might not find that e-mail back. I know that folder can grow rapidly in size, but hard-disks are cheap and it is deactivated by default.


The checkbox is really a QGroupBox which is checkable.

Anyhow, that was what I did this week. I'm almost ready to start Mailody4 now, it is going to be the best Mailody release ever for me.
Kapman
This year we experimented with a project starting from scratch, and apparently we had some demand for a copy of an old famous game... hence why we now have Kapman! It's alive and kicking and in a pretty good shape already, so maybe it'll be able to enter the kdegames module for KDE 4.1. Of course, it's all SVG-based, so you can freely resize it (artists wanted!).



KsCD
We also poked the good old KsCD, and our team made quite a lot of improvements. In particular, it is now fully themable using SVG (artists wanted!), and uses MusicBrainz to identify discs. Of course it also got the expected KDE4 refactoring, with porting to Phonon and Solid.



KSirK
KSirK is one of those games we have in playground for quite some time. One of our team has been working on it to improve it up to release quality. It's definitely getting there. The team mainly worked on improving its usability, with visible improvements in my opinion. At least now I feel like I could play with it for hours. :-)



Kopete
Last but not least, this year we got a team working on Kopete. They did an awesome job: it is harder to demo or to make a screenshot for it, but they mainly focused on integrating support for Universal Plug and Play (UPnP) and for the new Windows Live Messenger protocol. On the UI front it looks less impressive, but I'm very proud of this team: they definitely had the hardest project to work on and learned a lot. Since I have no screenshot to offer, here is a picture of today's "Kopete Gang of Four" who attended the hacking session:

From left to right: Maximilien Verdier, Michel Saliba, Romain Castan, Kevin Kin-Foo.


A few words on the hacking sessions...
Of course, after the projects of last year, we kept the good habit of having "KDE Hacking Sessions" in Toulouse, and we now have a few people who attend regularly... the community is definitely growing here. And during the student projects we have an unusual amount of my students showing up. ;-)
All of the above features are taken from blog entries syndicated on Planet KDE (Digest-exclusive content will return next week). Despite the slight blog-related community controversies of the past week, this shows the current strength of our developer community and their free expression of the work which personally excites them. And that excites me.
This is a special issue of the KDE Commit-Digest - not so much for the alternative approach to content, but because the week counter has finally reached triple digits. This is issue 100!

To the few people who have complained that the Digest has recently been "late": I am committed to producing the Digest every week (and have not missed an issue yet, out of 100 consecutive weeks), but I never promised or guaranteed that the Digest would come out on any specific day.

I try to produce the Digest as early as possible, but there are often things (sometimes beyond my control) that prevent this. I will work to my own schedule, which can sometimes be busy. And yes, my exams went fine.

Statistics

Commits 2537 by 238 developers, 7153 lines modified, 1740 new files
Open Bugs 16151
Open Wishes 13728
Bugs Opened 262 in the last 7 days
Bugs Closed 255 in the last 7 days

Commit Summary

Module Commits
/trunk/KDE
622
 
/trunk/l10n-kde4
502
 
/trunk/extragear
350
 
/branches/stable
234
 
/trunk/playground
158
 
/branches/extragear
109
 
/branches/KDE
102
 
/trunk/koffice
95
 
/branches/work
84
 
/trunk/www
49
 
Lines Developer Commits
287
 
Gilles Caulier
133
 
8
 
Pradeepto Bhattacharya
92
 
123
 
Volker Krause
85
 
161
 
Laurent Montel
79
 
196
 
Pino Toscano
74
 
184
 
Aaron J. Seigo
73
 
641
 
Laurentiu Buzdugan
71
 
47
 
Yiwen Mao
47
 
87
 
Dan Meltzer
40
 
40
 
Chusslove Illich
40
 

Internationalization (i18n) Status

Language Percentage Complete
Portuguese (pt)
100%
 
Greek (el)
99%
 
Swedish (sv)
94%
 
Japanese (ja)
93%
 
Low Saxon (nds)
87%
 
German (de)
86%
 
Polish (pl)
86%
 
Estonian (et)
86%
 
Dutch (nl)
86%
 
Brazilian Portuguese (pt_BR)
85%
 

Bug Killers and Buzz

Person Bugs Closed
Leonardo Finetti
50
 
David Faure
35
 
Luboš Luňák
24
 
George Goldberg
17
 
Pino Toscano
13
 
Thomas McGuire
11
 
Urs Wolfer
11
 
Peter Rockai
11
 
Nicolas Ternisien
9
 
Gilles Caulier
9
 
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 J. 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

Age

Contents

  Bug Fixes Features Optimization Security Other

Accessibility

     

Development Tools

     

Educational

  []    

Graphics

  []    []

KDE Base

[] [] []   []

KDE-PIM

[] []    []

Office

  []    []

Konqueror

     

Multimedia

[] [] []   []

Networking Tools

  []    []

User Interface

     

Utilities

  []    []

Games

  [] []   []

Other

     []

There are 102 selections this week

Bug Fixes

KDE Base

Vincenzo Di Massa committed changes in /trunk/KDE/kdebase/workspace/libs/plasma/widgets/tooltip.cpp:

Delete the property on the parent widget :-)

My first bugfix, yay!

Daniel Teske committed changes in /trunk/KDE/kdelibs/kio/bookmarks/kbookmarkimporter_ns.cc:

Fix importing of Firefox bookmarks. Does the minimal changes.

The importing code is dead ugly, but it at least now it works again for a simple file.

KDE-PIM

Allen Winter committed changes in /branches/KDE/3.5/kdepim/korganizer/kodaymatrix.cpp:

finally solve the hellish can't build with enable-final bug.

gotta hate X11.

Jarosław Staniek committed changes in /trunk/KDE/kdepim/kmail:

Fix for maildir storage problems. This makes KMail/Windows usable.

- use native separators for utime() (windows)
- writing index: close input stream before renaming the file (windows)
- check result of rename

Multimedia

Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src/context/applets/wikipedia:

As the Wikipedia applet also uses QWebkit, it needs the same "do not crash when you get deleted" fix

Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src/context/layouts:

Heavy handed fix to keep Amarok from crashing when resizing the ContextView.

The issue basically comes down to the fact that a LayoutItem can only have one child layout, and any layouts that are added beyound the first causes the previously added one to be deleted.

This in turn casused the pointers in the list of layouts kept by ContextLayout to become invalid (The last entry is always valid though...)

So for now, copletely disable support for multiple collumns.

Features

Educational

Frederik Gladhorn committed changes in /trunk/KDE/kdeedu:

start gui for declinations, nothing working so far :)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 778739
Frederik Gladhorn committed changes in /trunk/KDE/kdeedu:

declinations gui basically works, beware, sofar declinations are neither read nor written from/to xml

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 778843
Frederik Gladhorn committed changes in /trunk/KDE/kdeedu/parley/practice:

possible way to layout things - use svg rects

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 778918
Torsten Rahn committed changes in /trunk/KDE/kdeedu/marble/src/lib/geoscene:

- Adding some DGML tag support ...

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 19 more) Revision 779902
Anne-Marie Mahfouf committed changes in /trunk/KDE/kdeedu/ktouch/keyboards:

new keyboard layouts, thanks to Pavol Pitoňák, awesome work!

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 780062

Graphics

Gilles Caulier committed changes in /trunk/extragear/libs/libkipi/libkipi:

libkipi from trunk (KDE4) : image collection selector widget is not supported as well by the library. implementation is delegate to kipi host application to be more adapted to the host model/view used to support image collection.

For digiKam, this is want mean than the new image collection selector support fully the album/tag treeview !

<a href="/issues/2008-03-02/files/newkipiimagecollectionselectorwidgetKDE4.png">http://digikam3rdparty.free.fr/Screenshots/newkipiimagecollectionselectorwidgetKDE4.png</a>;

Gilles Caulier committed changes in /trunk/extragear/graphics/digikam/digikam:

new pure Qt4 classes used to replace Q3ListView classes for digiKam folder model/view. Not yet suitable.

Diffs: 1, 2, 3, 4, 5 Revision 779591

KDE Base

Marco Martin committed changes in /trunk/playground/base/plasma/applets/calendar:

A very simple calendar with a KDatePicker, at the moment seems to be some ugly drawing problems

it's not built with everything else for now.

Diffs: 1, 2, 3, 4, 5, 6 Revision 778717
Zack Rusin committed changes in /trunk/playground/base/plasma/applets/webapplet:

bind plasma dataengines and commit a hello world plasma web applet that uses the time data engine

Diffs: 1, 2, 3, 4 Revision 778954
Aaron J. Seigo committed changes in /trunk/playground/base/kconfig:

kconfigbackend plugin stub and start of a test for it

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 778968
Aaron J. Seigo committed changes in /trunk/KDE/kdebase:

Keyword improvements from William Hilton; thanks! =)

Diffs: 1, 2, 3, 4, 5, 6 Revision 778971
Petri Damstén committed changes in /trunk/playground/base/plasma/engines:
Luboš Luňák committed changes in /branches/KDE/4.0/kdebase/workspace/ksplash/ksplashx:

Optionally specify number of animation repeats.

David Faure committed changes in /trunk/KDE/kdelibs:

Support for XDG spec mimeapps.list instead of old ugly profilerc file.
(cf kde-core-devel email 23-Feb-2008, "ok for backporting" answers welcome :)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 12 more) Revision 779354
Rafael Fernández López committed changes in /trunk/KDE/kdebase/workspace:

Animations enable/disable system wide. TODO: Do a proper GUI for the style KCM and the animations feature.

Diffs: 1, 2, 3 Revision 779390
Peter Penz committed changes in /trunk/KDE/kdebase/apps/dolphin/src:

When a grouping per date is done, per default the granularity is one month. This patch increases the granularity for the last month:
- "Weeks" are used for the last 4 weeks excluding the current week.
- "Days" are used for the current week.

Additionally some cleanups of the code has been done, as the method DolphinModel::data() was too long already.

No backport will be done as new strings are introduced. The patch has been reviewed by Rafael Fernández López.

Marco Martin committed changes in /trunk/KDE/kdebase/workspace/plasma/applets/kickoff:

Add Drag and drop of entries from kickoff to desktop or panel (at the moment only to kickoff, traditional menu still to come) done by subclassing the kickoff models and the applications model is now in kickoff namespace as the other models

Aaron J. Seigo committed changes in /trunk/KDE/kdebase/workspace/libs/plasma/tests:

little test app so i can play with the applet browser a bit easier

Sebastian Kügler committed changes in /trunk/KDE/kdebase/workspace/libs/plasma/widgets:

Icons now fade in the background animation. They also learnt to react on color theme changes. Some codingstyle changes as the icing on the cake.

The fade-in effect can be switched off with Rafaels new feature, btw.

Diffs: 1, 2, 3 Revision 779804
Kevin Ottens committed changes in /trunk/KDE/kdebase/workspace/plasma:

Show all plugged devices on session startup.

Diffs: 1, 2, 3, 4 Revision 780007
Zack Rusin committed changes in /trunk/playground/base/quasar/src/core:

start implementing graph iteration mechanism

Diffs: 1, 2, 3, 4, 5 Revision 780122
Aaron J. Seigo committed changes in /trunk/KDE/kdebase/workspace/libs/plasma:

add the ability to install packages from files. needs a UI review by another pair of usability sensitive hands. there are still issues, such as lack of double click interactions and feeble feedback on error and success. but it works, now we can pollish.

Diffs: 1, 2, 3, 4 Revision 780460
Kevin Ottens committed changes in /trunk/KDE/kdebase/workspace/plasma/applets/kickoff/ui:

New highlight on hover for items in kickoff:
- use only a full width outline
- icons are bigger for the hovered item
- text is bold on the hovered item

Also fixed a few of the size management braindamage from the original code, trying to remove some of the magic values.

Diffs: 1, 2, 3, 4 Revision 780663
Robert Knight committed changes in /trunk/KDE/kdebase/apps/konsole/src:

Allow selection of the new line character at the end of the last line of the selection. When the cursor goes beyond the end of the text on the last line of the selection, a new line character is added to the text sent to the clipboard.

This behaviour is consistent with Konsole in KDE 3.5

Michael Jansen committed changes in /trunk/KDE/kdelibs/kdeui/dialogs:

- Copyrights
- Add the possibility for KShortcutEditor to import / export configurations. In contrast to saving it's settings these take into account global shortcuts.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 780779
Michael Jansen committed changes in /trunk/KDE/kdebase/workspace/kcontrol/keys:

First shot at importing / exporting Shortcut Configuration. Also known as schemes.

- Barely working. Use on your own risk
- SelectSchemeDialog is my first. Please help me improve
- The added kksrc files are from kde3. They work only in half because some Shortcuts have changed their name. Bad selection for a id.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 14 more) Revision 780782
Maks Orlovich committed changes in /branches/work/kjs-frostbyte/kjs:

Provide some backwards compatibility typedefs and method aliases, so KHTML and katejscript can build w/o any changes w/both kjs-frostbyte and branch/trank.

Diffs: 1, 2, 3 Revision 780900
Siraj Razick committed changes in /trunk/playground/base/raptormenu/plugins/ui:

Nuno Ui Plugin

Diffs: 1, 2, 3, 4, 5 Revision 780989
Urs Wolfer committed changes in /trunk/KDE/kdelibs/kdeui:

Get three stars per char password mode back from KDE 3.
Add password mode to unit tests.

Diffs: 1, 2, 3 Revision 781126

KDE-PIM

Didier Hoarau committed changes in /branches/work/akregator/onlinesync/akregator/src/feedsync:

GUI samples added

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 4 more) Revision 778890
Marc Mutz committed changes in /trunk/KDE/kdepim/kleopatra/commands:

Allow presetting filenames, and allow more than one file to be imported at a time (hope dirmngr can cope)

Volker Krause committed changes in /trunk/KDE/kdepim/akonadi:

Beginning of the standard actions framework, so far covers create/sync/copy/delele collection as well as showing the collection properties dialog.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 3 more) Revision 779310
Frank Osterfeld committed changes in /branches/work/akregator/onlinesync/akregator:

empty plugin with KCM for online reader support, and necessary changes in Akregator core

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 10 more) Revision 781016

Office

Jan Hambrecht committed changes in /trunk/koffice/kpresenter:

implemented another page effect: fourBoxWipe

It feels very wrong to change KPrPageEffect and KPrPageEffectDocker when adding a new page effect.

I think it would be better if the particular effect strategy would return the subtype string which then gets picked up by the page effect docker via the effect factory.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 778822
C. Boemann committed changes in /trunk/koffice:

Create a new infrastructure called KoDataCenter, which is an abstraction of stuff like KoImageCollection.

In the future other datacenters cvould be audiocollections or animationcollections.

All apps are modified to use this new way by asking all shapefacturies to create any KoDataCenters that they might need.

This makes the imageshape work with load and creation, but saving is still not implemented so do save documents with images in them or you'll end up with broken files.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 25 more) Revision 779650
Carlos Licea committed changes in /trunk/koffice/kpresenter:

Finally implement the IrisWipeBase (thanks Thorsten, although I still don't understand why what I did wasn't working), now all other IrisWipe can be implemented just by reimplementing setShape() and drawing the shape around the point (0,0).

Just one issue remains:
how make sure thet the shape is big enough to cover the whole screen without scaling over and over and asking if the whole screen is overlapped, for an example of this problem see the Diamond effect.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 9 more) Revision 779981
Thomas Zander committed changes in /trunk/koffice/plugins/dockers:

Did some work on making the shapeSelector come closer to the goals outlines in the wiki.
Its got a reasonably useful zooming-ui now ;)

The Plugin.cpp doesn't actually add the factory right now, though.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 26 more) Revision 780542

Multimedia

Thierry Bastian committed changes in /trunk/kdereview/phonon/ds9:

improved video renderer: it can now use opengl even when embedded (on the graphics view)
- fixed some crashes with media types
- improved the volume effect wrt media type support

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 11 more) Revision 779061
Sovanramy Var committed changes in /branches/kscd/isi-kscd/kdemultimedia/kscd:

Resolved conflicts on svg pictures, added MusicBrainz upload (with direct use of libMusicBrainz, TODO see if libkcddb can improve the management), temporary resolved musicbrainz problems when no connection.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 779698
Maximilian Kossick committed changes in /trunk/extragear/multimedia/amarok:

initial version of the new cdda support

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 780336
Mark Kretschmann committed changes in /trunk/extragear/multimedia/amarok/src/context/CMakeLists.txt:

Make context plasmoids work for systems without plasma desktop. We simply have to install the plasma service files always.

Networking Tools

Joris Guisson committed changes in /trunk/extragear/network/ktorrent/ktorrent/gui.cpp:

Add pause resume option to system tray icon

Urs Wolfer committed changes in /trunk/KDE/kdenetwork/kget:

Complete rewritten design of webinterface.
Thanks to Mensur Zahirovic (Nookie) for the great mockups!

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision 778825
Urs Wolfer committed changes in /trunk/KDE/kdenetwork/kget/extensions/webinterface:

Make webinterface translatable.

Joris Guisson committed changes in /trunk/extragear/network/ktorrent/ktorrent:

Use KNotify system for notifications instead of own hardcoded one with KPassivePopup. Also make this configurable using the standard configure notifications dialog.

Helmut Schaa committed changes in /branches/work/knetworkmanager/knetworkmanager-0.7/src:

Allow adding and removing devices and update the according device trays

Diffs: 1, 2, 3, 4, 5, 6 Revision 780175
Joris Guisson committed changes in /trunk/extragear/network/ktorrent:

Expanded torrentcreator dialog to make it possible to create torrents with webseeds

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 780301
Michel Hermier committed changes in /trunk/KDE/kdenetwork/kopete/protocols/irc/libkirc:

Commit my work, still not usable.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 9 more) Revision 780742
Charles Connell committed changes in /trunk/KDE/kdenetwork/kopete:

Automatically resize main window based on size of contact list
Allow user to switch this on/off and change resize anchor position

Utilities

Nicolas Ternisien committed changes in /trunk/KDE/kdeadmin/kcron/src:

* Re-enabled printing (mostly work)
* Add radio button to modify and choose the displayed crontab (current user, system crontab, or other users crontabs (for root))
* Continue some class renaming

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 13 more) Revision 778943
Nicolas Ternisien committed changes in /trunk/KDE/kdeadmin/kcron:

* Rename some classes
* Completely reimplement printing feature
* Fix a bug in adding tasks and variables

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 21 more) Revision 779396
Nicolas Ternisien committed changes in /trunk/KDE/kdeadmin/kcron/src:

First implementation of the option which displays all users crontab in the same view

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 9 more) Revision 779937
Nicolas Ternisien committed changes in /trunk/KDE/kdeadmin/kcron:

Last implementation of the All Crontab view
Fix multiple bugs due to the add of the new view

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 15 more) Revision 780092

Games

Sacha Schutz committed changes in /trunk/playground/games/ktank/ktankbattle:

ALPHA 0.1
-KGLEngine:
* KGLAnimItem added for have animation sprite
* KGLGraphicsConfig for setup graphics games, like fullscreen or window mode.
* KGLPhysicsEngine can compute some simple collision
* KGLItem can use Eigen matrix OR GL matrix
* Licence added

-KtankBattle
* New Sprites
* Now bullets can bounce
* Cursor added (currently not good position).

- BUGS
* Cursor position is not good
* Crash when we close the window?
* Compilation doesn't work with my cmakekde (Cannot find ui_kglgraphicsconfig.h").

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 38 more) Revision 778753
Nicolas Brisset committed changes in /trunk/KDE/kdegames/ktuberling/pics:

Hi,
adding this Christmas theme is my first commit for kdegames (I have used my KDE svn account only for kst up to now), and I'm actually quite happy about it, as I've been working on that new theme with my 10-year old son. He's quite thrilled to make his first contribution to KDE - not bad at 10 :-)

I hope I haven't broken anything with this commit. The theme was actually ready in December (which would have fitted better for a Christmas theme!) but after some discussion on kdegames-devel it was decided not to include it to avoid upsetting translators. I've asked again recently and it seems it is OK to commit it now, so here it comes.

Some notes:
- I've used a .svgz format because those files can become pretty big otherwise (even though we've always tried to keep objects as simple as possible for performance reasons), and I was wondering whether we shouldn't do this for other themes as well for space/bandwidth reasons
- some things are not rendered as well by Qt as by inkscape, hopefully that gets improved at some point (but even so it is quite OK I think)
- among the recent themes, the pizzeria one seems to suffer from some drawing artefacts (at least here) and is also quite big. I don't know how much of an issue that is and whether it could be fixed easily, though.

Diffs: 1, 2, 3, 4 Revision 779699

Optimization

KDE Base

Sebastian Trueg committed changes in /trunk/playground/base/nepomuk-kde/tagcloud:

More speed optimizations. Still too slow for many tags though. Drawing 440 text items is slow. Maybe use QGraphicsItem?

Diffs: 1, 2, 3, 4 Revision 780833

Multimedia

Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src/context/containments:

Disable Max's optimization workaround. It turns out the with the new extremely simple svgs, actually rendering the svgs is about 30 times faster than resizing the large master image. Except for very first time (where I guess the renderer is initializing itself) but this makes no difference as that would happen when pre-rendering the master image as well.

Maximilian Kossick committed changes in /trunk/extragear/multimedia/amarok/src:

do not update the GUI more than necessary

Amarok starts in 3 seconds with hot caches on my machine now, about twice as fast as two days ago.

We should do this more often :)

Games

Stefan Majewsky committed changes in /trunk/kdereview/kdiamond/src:

Move from using one QTimeLine and QGraphicsItemAnimation per diamond to global animators for each move direction. (Proposed by Aaron Seigo, many thanks for this hint.)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 779884

Other

Graphics

Tom Albers committed changes in /trunk/extragear/graphics:

Move Ligature to the unmaintained area. It fails to build and it is unmaintained and no response to the kcd-thread.

Gilles Caulier committed changes in /trunk/extragear/graphics/digikam/digikam:

* start to port digiKam drag object containers to pure Qt4
* polish tree folder view implementation about drag & drop

Diffs: 1, 2, 3, 4, 5, 6 Revision 780236

KDE Base

Riccardo Iaconelli committed changes in /trunk/KDE/kdebase/workspace/libs/plasma/desktoptoolbox.cpp:

Make the desktop toolbox ignore zoom-ins and zoom-outs, and therefore always remain visible and clickable.

Fix celeste's "bug". :-)

Shall it always remain on the top-right corner? I'll let the panel-devel folks decide.

Zack Rusin committed changes in /trunk/playground/base/plasma/applets/webapplet/sampleitem.cpp:

certain funky individuals might not be named "zack" so /home/zack/projects/kde might not exist on their systems.

to adjust code for those weirdos change the path to something that works

Urs Wolfer committed changes in /trunk/playground/libs/webkitkde:

Port the WebKit part to the current Qt 4.4 snapshot. Now I am able to surf in Konqueror with QtWebKit!

It is not really usable at the moment because there are still some glitches / missing features.

I left out KWebNetworkInterface for the moment because I could not find a way to port QWebNetworkInterface (seems to be missing?).

Diffs: 1, 2, 3, 4 Revision 779763
Aaron J. Seigo committed changes in /trunk/playground/base/plasma/applets/webapplet:

2 AppletScripts and a PackageStructure. sounds like a bad Hugh Grant movie.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 780030
Michael Jansen committed changes in /trunk/KDE/kdelibs/kdeui/dialogs:

Honor KActions "globalShortcutAllowed" and "shortcutConfigurable".

If the shortcut is advertised as not configurable by the developer, do not allow editing at all.
If the shortcut is not advertised as globalShortcutAllowed by the developer, do not allow setting of a global shortcut.

That breaks a lot of global shortcuts. They are opt in. I will fix them.

And it told me that Kate advertises it's "About Editor Component" as a global shortcut. Thanks for the testcase. But where is the sense in that?

Diffs: 1, 2, 3 Revision 780104
Riccardo Iaconelli committed changes in /trunk/extragear/plasma/applets/fuzzy-clock/fuzzyClock.cpp:

Disable selecting the timezone if 'Use local timezone' is checked.
Patch by Hans Chen, which makes his first contribution to the project.

Welcome to the KDE development! =)

Sebastian Trueg committed changes in /trunk/playground/base/nepomuk-kde/resource-visualization:

The contact gui item can now work without Akonadi by simply using the information from the Nepomuk store (NCO)

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 780208
Aaron J. Seigo committed changes in /trunk/playground/base/plasma/applets/webapplet:

three plugins that work: webkit with plasma APIs (e.g. you can reference data engines directly from your javascript), dashboard (built on top of the webkit plugin) and the dashboard package structure (does install, open from zip, open from directory)

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 780465
Matthew Woehlke committed changes in /trunk/KDE/kdelibs/kate/utils:

Since no one has objected, let's try this new way of calculating default colors; it should work adequately for both dark and light color schemes (unlike either of the previous attempts that had problems with one or the other).

Dan Meltzer committed changes in /branches/work/woc:

Create a directory to store branches related to the Plasma port to Widget On Canvas

Riccardo Iaconelli committed changes in /branches/work/make-krunner-gefa:

Make a branch to make krunner Good Enough For Aaron™.

Dan Meltzer committed changes in /branches/work/woc/kdebase-plasma:

Commit initial work on the port to the qt4.4 technologies

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 15 more) Revision 780698
Riccardo Iaconelli committed changes in /branches/work/make-krunner-gefa/workspace/plasma/desktoptheme:

Add (and install) svg for the new krunner interface.

KDE-PIM

Thomas McGuire committed changes in /trunk/KDE/kdepim/libkdepim/komposer:

Remove Komposer. It is unused and not even built, and therefore just avoidable work for translators.

Jarosław Staniek committed changes in /trunk/KDE/kdepim/kleopatra/utils/gnupg-registry.c:

UNICODE is the default setting on both msvc 2k3 and 2k5 (what means RegOpenKeyEx expands to RegOpenKeyExW).Explicitly switch to ANSI versions of WINAPI functions, e.g. RegOpenKeyEx->RegOpenKeyExA.

We use the approach with ANSI functions in kdesupport/kdewin32 too.It is safe to use ANSI functions as the args are already char*.Should be applied upstream, too.

Office

Fredy Yanardi committed changes in /trunk/koffice:

Move Add/Select bookmark functionality from TextTool to KWord

TODO: ODF loading/saving for bookmarks

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 7 more) Revision 780832
Johannes Simon committed changes in /trunk/koffice/kchart:

After committing only the dummy files of the new classes, this commit integrates the new API into KChart.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 23 more) Revision 780898

Multimedia

Mark Kretschmann committed changes in /trunk/extragear/multimedia/amarok/HACKING:

Add my .vimrc to HACKING, which is optimized for Amarok. Should be helpful to new contributors; and also mxcl asked for it.

Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src:

Quite a bit of work on the svg graphics. Trying something quite different for the toolbar and the context view backgrounf. Much simpler and quick to render, and also much more "Zen".

The svg tinter has also been upped to tint 100% meaning that there is no residual "grayness" left in the svg but everything is using the system colors.

Work in progress, let me know what you think!

Diffs: 1, 2, 3, 4, 5 Revision 780599
Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src:

Fixes to the svg theme. Much better contrast on light color themes without screwing up the dark themes. As it no longer relies heavilly on transparancy,it should also render much faster.

Diffs: 1, 2, 3, 4, 5 Revision 780825
Dan Meltzer committed changes in /trunk/extragear/multimedia/amarok:

Remove the helix engine

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 82 more) Revision 780975
Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src/playlist/PlaylistClassicView.cpp:

Just playling around with Bonne's new clasical playlist column. What we need to make this usable is a gui to somehow select which collumns should be shown.

Dan Meltzer committed changes in /trunk/extragear/multimedia/amarok/src:

Port everything that still exists away from CollectionDB. Some of it has been disabled until we have the necessary support in CollectionManager for it. Also remove ScanController. It's no longer used

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 31 more) Revision 781170
Dan Meltzer committed changes in /trunk/extragear/multimedia/amarok/src/collection:

Port the collectionscanner back to using taglib instead of kfilemetainfo. It didn't take much time to notice how slow kfilemetainfo was for lots of scanning.

We may in the future want to switch to strigis xmlindexer, but this works well for now.

Diffs: 1, 2, 3 Revision 781173

Networking Tools

Albert Astals Cid committed changes in /trunk/extragear/network/kio_gopher:

Port kio_gopher to KDE4 now you can browse gopher:// pages on Konqueror, obsolete protocol on today's bleeding edge technology!

Diffs: 1, 2, 3, 4 Revision 780932
Charles Connell committed changes in /trunk/extragear/network/kopete-cryptography:

Use kcfg system rather than custom config abstraction

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 781164

Utilities

Laurent Montel committed changes in /trunk/extragear/sysadmin/kiosktool:

Now all is converted to uic4

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 779003
Éric Bischoff committed changes in /branches/extragear/kde3/utils/keurocalc:

Moving to KEuroCalc 1.0.0 for KDE 4

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 4 more) Revision 779588
Éric Bischoff committed changes in /trunk/extragear/utils/doc:

Added documentation for KEuroCalc

Diffs: 1, 2, 3, 4, 5, 6 Revision 779910
Eike Hein committed changes in /trunk/extragear/utils/yakuake/KDE4FAQ:

Add note about problems with the kwin fade out effect.

Nicolas Ternisien committed changes in /trunk/KDE/kdeadmin/kcron/src:

Convert KCron to kcm_cron, and integrate it per default in SystemSettings / Advanced / System: Task Scheduler. Don't hesitate to specify an other path if this is not correct

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 3 more) Revision 780561

Games

Stefan Majewsky committed changes in /trunk/kdereview/kdiamond:

* Make the border padding bigger to make all diamonds appear inside of the board.
* Adjust the move animation's update interval to increase performance.

Other

Dirk Mueller committed changes in /tags/KDE/4.0.2:

KDE 4.0.2 tag

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision 780207
Benoît Jacob committed changes in /branches/work/eigen2:

Relicense --> dual-license LGPL3+/GPL2+

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 38 more) Revision 780267
Matthew Woehlke committed changes in /trunk/KDE/kdesdk/scripts:

updates to svn{back,forward}port: more "standard" usage information, more portable/liberal detection of -h/--help, branch specification (backport, optional, default still 4.0) or read-from-actual-url (forwardport), proper argument quoting / use of "$@" (hopefully now safe for files with spaces), be more picky about what is "yes" when asking to commit, other minor stuff...

NOTE: POSIX states that 'test' with more than three arguments is not portable, and it's right; the old code could do something like 'test -z -gt -o -gt = -h -o -gt = --help', which is an error; the correct way (as stated many times on bug-bash) is to use && and ||, not test's -a/-o. Also use '[', as it looks nicer and I'm not aware of any reasonable shell these days that lacks [ as a built-in (even Solaris /bin/sh, which is *not* POSIX-compliant, has it), and have used it in my own must-be-portable scripts for ages.