Issue 83

4th November 2007 by Danny Allen

This Week...

Krushing day concludes with focused bug fixing for the KDE 4.0 release. Work on various "runners" in Plasma, with general work on applets and the addition of binary and fuzzy clocks. Constraints support in the Step physics simulation package. Work on icons across KDE Games applications. Support for the Scalix groupware server in KDE-PIM. Entry editing improvements in KOrganizer. Improved Blu-Ray format support in K3b. Solid gets support for Video(4Linux) devices. Kopete uses Solid for network detection and support of audio/video devices. Various progress across KOffice.
Following on from the menu introductions of last week, Siraj Razick introduces another of the menu options for KDE 4, Raptor:

One part of the vision of the Raptor team is to create a menu that combines the strengths of 3 ways to launch programs:
  • The overview one has with menus.
  • The speed one has by using console (if one knows the name).
  • The possibilities of the search capabilities a system can offer.
As a launch menu is often used, it is a very visible element of a desktop system. Thus, our vision includes an “eye-candy”, beautiful presentation of this central launch menu.


We want to make the best menu possible, and allow the fastest possible way to launch applications. We eventually want a menu that is focussed on the user and his tasks, not on the computer and his structure. And we want the menu to find items for us, not look for them ourselves.

Or put shortly: we want it simple, fast, user-oriented and beautiful

Current menus

Since the implementation of KMenu, different launch menu approaches have appeared:
  • KBFX.
  • Tasty Menu.
  • Kickoff.
  • The SUSE Linux Enterprise Desktop GNOME "Slab" menu.
Let's start with KMenu. KMenu's strength is that its concept is well-known. The programs are sorted in a hierarchical structure, and it's basically a menu like the menus in programs. The downsides are quite well-known also: you can lose your position in it by moving the mouse some pixels away of the mouse-path, the mouse-paths are too long, and honestly, it doesn't look very nice.

The four menu types above share one common idea: we have to reduce the distance a user has to move the cursor for faster usage of the launch menu. All 4 do that in the same way: the menu is limited to a certain area, no longer moving out of that area (though SUSE Linux Enterprise Desktop Gnome Menu does it only partially, by not displaying everything and opening a window when you want to see more applications).

So in our view, all of those 4 menus improve the user experience significantly. However, this doesn't go far enough.

Concept of Raptor

To further shorten the mouse paths, Raptor only uses one panel. The idea is that we want to give an overview, but are ready to sacrifice a little bit of it and instead want to interpret the user's past behaviour to calculate what he probably wants.

Search and usage database

This is implemented via a usage database. When a user e.g. searches for “ko” (type ahead, no “enter” necessary), the menu displays it as following, with Konqueror already preselected:

This is because it searches for “ko” and afterwards compares the result with following table (which is very simplified, as I won't describe the algorithms used):


So the accessibility of the most relevant items is the fastest, as it's already preselected, and the 3 most relevant items are displayed bigger. The reason to display Kopete, Kolf, Kontact and Kooka as smaller items is to be able to display more items on the restricted area. If further, less relevant items exist, they can be accessed by using the scroll areas.


This usage database is also used when browsing, not only when searching. So when a group is selected, the items are displayed according this rule.

Raptor also uses another approach for grouping the items. The traditional approach is creating categories by asking “what are the programs?” which leads to categories as “utilities”, “office suites” and so on. Raptor's approach is more centred on the question “what does a user want to do?” which leads to categories “Play” (e.g. music, videos, slideshows), “Configure”, “Browse” (e.g. the web, the filesystem and so on) and “Produce”. As indicated before, the items are prioritized by means of the usage database and then arranged accordingly.

In the upper left corner of the menu one always sees where one is currently in this structure.

By clicking on the parent group (here the typewriter for “Produce”), one always changes back to the content of that group. As alternative, one could also just click the “up” arrow to change into the parent category.


I think one can safely say that every user has a set of “favourite” applications. For me, those are Firefox, Kopete, Writer and the GIMP.

In Raptor, those favourites are represented by the yellow star. When I'm in “Draw”, I can drag-n-drop the Gimp icon onto the star and thus add it to the favourites.

By clicking the star, the content in the panel changes to my favourite applications.

Position on the desktop

As you might have noticed, all these pictures show Raptor on the bottom and centred. This – of course – is not the only possible position for it. Of course one is able to select the way it is aligned. We just liked the balance of having it in the middle, but you are free to place it in the lower right corner, as you might be used to do.


Now we come to the current state of Raptor: not finished. Our team is quite small, so if someone wants to join us, feel free to contact Siraj Razick to get a more detailed view on the open issues. Siraj is on the panel-devel mailing list.

Two plugins, applications (for the traditional grouping of apps) and TOM (Task Oriented Menu, including an editor for grouping without restructuring the applications for other menus) are pretty much done. A part of the presentation is ready, too.

The usage database is not yet implemented, and the favourite applications part is still open. A further plugin for disks/CDs/USB-sticks etc. is planned, but work hasn't yet started there.

Thank you for your interest.
Allen Winter announces another upcoming development in the KDE 4.0 release schedule:

For planning purposes, we thought you'd like to know that the next Tagging Freeze is coming Tuesday 13 Nov at midnight.

The freeze is to make life easier for the tagging of the next Development Platform release and only affects:
  • kdesupport
  • kdelibs
  • kdepimlibs
  • kdebase/runtime and kdebindings.

The application modules (kdepim, kdenetwork,etc ) are not covered under this particular freeze.

So, plan accordingly.

Allen, KDEPIM Release Dude


Commits 2377 by 239 developers, 7968 lines modified, 1067 new files
Open Bugs 14946
Open Wishes 13256
Bugs Opened 312 in the last 7 days
Bugs Closed 178 in the last 7 days

Commit Summary

Module Commits
Lines Developer Commits
Allen Winter
Pino Toscano
Laurent Montel
Volker Krause
Gilles Caulier
Oswald Buddenhagen
Thomas McGuire
Aaron J. Seigo
David Faure
David Jarvie

Internationalization (i18n) Status

Language Percentage Complete
Portuguese (pt)
Swedish (sv)
Greek (el)
Japanese (ja)
German (de)
Chinese Traditional (zh_TW)
Spanish (es)
Dutch (nl)
Brazilian Portuguese (pt_BR)
Estonian (et)

Bug Killers and Buzz

Person Bugs Closed
Thomas McGuire
Aaron J. Seigo
Seb Ruiz
Oswald Buddenhagen
Tommi Tervo
Pino Toscano
Pierre Ducroquet
Gilles Caulier
Lukas Appelhans
Peter Penz
Program Buzz
Person Buzz
David Faure
Sebastian Kügler
Stephan Kulow
Matthias Kretz
Adriaan de Groot
Allen Winter
Waldo Bastian
Aaron J. Seigo
Boudewijn Rempt
George Staikos

Commit Countries

Commit Demographics




  Bug Fixes Features Optimization Security Other



Development Tools

[]     []


[] []    []


  []    []

KDE Base

[] [] []   []


  [] []   


  [] []   []




  []    []

Networking Tools

  []    []

User Interface

[]     []


  []    []


[] [] []   



There are 105 selections this week

Bug Fixes

Development Tools

Andreas Pakulat committed changes in /trunk/KDE/kdevplatform/plugins/classbrowser/kdevclassbrowser.desktop:

Fix the .desktop file to load the class browser. One can't just make up properties, you have to use those that KDevelop knows about and that are associated to the category you chose.

The profile-system needs work.


Jason Harris committed changes in /trunk/KDE/kdeedu/kstars/kstars/data:

Fixing bug #151206: updating ephemerides for comets and asteroids.

The new ephemerides are also available via the "Get New Stuff" action.
I am not porting to the 3.5 Branch, because it would break the strings freeze. 3.5 users can simply use the GNS action.

TODO: make the file-parsing code more robust so that the comets dat file can be used as published by JPL, without formatting changes.
This used to be the case, but JPL changed the widths of their columns, which breaks ouur fragile column-based parser.

Anne-Marie Mahfouf committed changes in /trunk/KDE/kdeedu/khangman/src:

the timer config is now applied on "Already Guessed" tooltip
don't start a new word after applying config
remove obsolete comments

Thanks to jstubbs4 on IRC #kde4-krush for testing!

Albert Astals Cid committed changes in /trunk/KDE/kdeedu/kgeography/src:

krushing day
Use a zoom icon when zooming, that fixes "Selecting zoom when placing state on a map leaves the cursor as the state to be placed"

Diffs: 1, 2, 3 Revision 732314

KDE Base

Maks Orlovich committed changes in /trunk/KDE/kdelibs/khtml/html/html_formimpl.cpp:

Don't crash on tabbing around the login boxes on due to trying to get a widget pointer out of a RenderFieldSet.

Thanks to Njaard for reporting.

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

Fix crash in KIO::decodeFileName when the filename ends with a '%'. Reported by bjwebb, spotted by Maksim; squeeze() suggested by frerich; unit-tested by me :)

Diffs: 1, 2, 3 Revision 730832
Thiago Macieira committed changes in /trunk/KDE/kdelibs/kio/kio/connection.cpp:

Detect when the socket has disconnected and mark us as disconnected too.

This fixes the bug in which ioslaves would spike to 100% CPU usage.

Rivo Laks committed changes in /trunk/KDE/kdebase/workspace/kwin:

Prevent multiple fullscreen effects from becoming active at the same time as discussed on kwin ml

Diffs: 1, 2, 3, 4, 5 Revision 731717
David Faure committed changes in /branches/KDE/3.5/kdelibs/kdecore:

You cannot messup prettyURL in ways that break its definition. Its definition is KURL(u.prettyURL()) == u.

The security issue has to be fixed in a better way.

Aaron J. Seigo committed changes in /trunk/KDE/kdebase/workspace/krunner:

* prevent crash on show/hide of options
* get button text right

probably have to disable the animation until Qt4.4 comes out due to horriffic, horriffic flicker.

Frerich Raabe committed changes in /trunk/KDE/kdebase/workspace/krunner/interface.cpp:

- Do a final match() before handling the entered string.

It was very easy to confuse krunner by typing a bit quickly (I can type stuff like 'plasmoidviewer knewsticker' reasonably fast); krunner was always only handling the string which I typed up to the last match timer timeout (which ticks at 5Hz) before pressing Return.

I entered 'plasmoidviewer knewsticker'

and it often tried to do run

'plasmoidviewer kn'

or once even only


Germain Garand committed changes in /trunk/KDE/kdelibs/khtml:

more event handling fixes:

* introduce more subtle/timed logic to decide how to route wheel events to subwidgets or to the view. It works much more nicely this way as there is no more need for the user to focus an element before being able to scroll using the wheel. This is close to the Gecko behaviour, I'd describe.

* properly translate mouse wheel events (gah! that was the deeper reason for most of wheel event problems)

* remove test of the widget rectangle for mouse wheel events. As it turns out, I was just turning around the untranslated mouse wheel event bug.

* make listbox & textarea widget not propagate wheel events to the view once either end of them has been reached by scrolling.

* rewrite & factor out the code computing the widget placement on the root view; place it in KHTMLWidgetPrivate.

Diffs: 1, 2, 3, 4, 5, 6 Revision 732399
Allen Winter committed changes in /trunk/KDE/kdelibs/kio/kio/connection.cpp:

Don't crash. This fixes a lot of different bugs throughout KDE4.
I don't think this is the best solution, but nobody else has stepped up to fix it the right way yet. And it is a annoying crash.

User Interface

Luboš Luňák committed changes in /trunk/KDE/kdeartwork/kscreensaver/kdesavers/Flux.cpp:

Handle properly display height/width ratio.
Patch by Mike Mulvanny.


Pierre Ducroquet committed changes in /trunk/KDE/kdegames/konquest:

This is a fix for the bug #149411 (Multiple planets are blinking when selected by keyboard)

The problem was that the selected planet wasn't remember when selected with the keyboard, but this code is quite complex (too many objects doing their own work apart), it'll have to be cleaned up later.



Vladimir Kuznetsov committed changes in /trunk/playground/edu/step:

Initial work on constraints implementation. StepCore now requires GMM++ library.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision 732047
Vladimir Kuznetsov committed changes in /trunk/playground/edu/step/step:

constraints support (but still no initial correctness checking and no support for collisions).

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


Marcel Wiesweg committed changes in /trunk/extragear/graphics/digikam/digikam:

Add a new class ScanController which replaces the old ScanLib.

The new class takes care of scanning, the initial database setup, and complete collection scan, all moved to a separate thread.

This brings:
- progress info for the schema updating
- scanning is moved from the kioslave into the main process, which allows much better control (and some signals from the CollectionScanner in the future)
- all separated in its own thread, while the initial methods wait in an event loop for the process to finish.
I prefer this to processEvents().

Pino Toscano committed changes in /trunk/KDE/kdegraphics/okular:

Make it possible to choose the size for the icons in the sidebar, by choosing it in the popup menu of the sidebar itself.

Cyrille Berger Skott committed changes in /trunk/playground/graphics/krita-plugins/filters/SwarmingNoise:

add a swarming noise to krita-plugins

Diffs: 1, 2, 3, 4, 5 Revision 732012
Mike Fenton committed changes in /branches/work/kst/portto4/kst/src/libkstapp:

Addition of DataWizard. Includes all function GUI aspects as well as object creations as much as they are currently working.

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

KDE Base

Jon de Andres Frias committed changes in /trunk/playground/base/plasma/widgets/listview:

Improved the scroll system, now it works with pixel precision, instead of items. Needs to fix some bug with scroll. What's about a scrollbar??

Diffs: 1, 2, 3, 4 Revision 730414
Tobias Koenig committed changes in /trunk/KDE/kdebase/workspace/plasma/applets/kickoff:

Implement the 'Lock the screen' menu entry

Diffs: 1, 2, 3 Revision 730437
Will Stephenson committed changes in /trunk/KDE/kdelibs/solid:

Add Solid support for Video[4Linux] devices, patch reviewed on k-c-d

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 9 more) Revision 730449
Andriy Rysin committed changes in /trunk/KDE/kdebase/workspace/kcontrol/kxkb:

- modularity for kxkb widget
- fix i18n for libxklavier
- fix some issues with kcm UI
- improve plasma applet

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 11 more) Revision 730855
Aaron J. Seigo committed changes in /trunk/KDE/kdebase/workspace/plasma/runners/webshortcuts:

make /tmp,, etc... work.

David: i notice that konqueror is still the default file manager via KRun? would it make sense to have a KToolInvocation::invokeFileManager(QString)? how do make it so that KRun::runUrl opens the default associated app with inode/folder for directories? (i have dolphin with that association, but KRun still doesn't Do The Right Thing) and finally, how do we make dolphin the default association for inode/folder? (i'm not familiar enough with the new mimetype system =/)

Maks Orlovich committed changes in /trunk/KDE/kdelibs/khtml:

I've been told shadows are "easy", so add all the bindings and state management for them, so if someone were to feel like implementing them, they could just do the graphics.

Meanwhile, add some missing exception-raising checks, fix some bugs in color parsing, and implement the missing isPointInPath with Fredrik's help.

(Also fix the licenses BSD->LGPL in html/html_canvasimpl.*, since I merged code over from LGPLd ecma/kjs_context2d.*. I suck for not noticing this sooner and presuming the two would be the same, coming in at the same time)

Diffs: 1, 2, 3, 4 Revision 731204
Fredrik Höglund committed changes in /trunk/KDE/kdebase/workspace/krunner:

Make it possible to move the krunner window by clicking on an empty part of it and dragging the mouse.

Jeremy Paul Whiting committed changes in /trunk/KDE/kdebase/workspace/kcontrol/colors:

only show one of duplicate resources in user folder and system folder, also use .colors extension on scheme files now, also only ask to overwrite if it will really overwrite something, still need to make the icon update on save though...

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 731587
Davide Bettio committed changes in /trunk/playground/base/plasma/applets/binary-clock:

Now you can decide to show or not seconds on the clock.

Diffs: 1, 2, 3, 4 Revision 731806
Matthias Kretz committed changes in /trunk/KDE/kdebase/runtime/knotify:

reviewed by Gof: instead of using only one AudioOutput use one output per MediaObject. This is currently the only way to have multiple sounds play at the same time. Also removed the delayed play() invokation which did not solve/workaround the real problem when for some yet unknown reason Phonon-Xine deadlocks.

John Tapsell committed changes in /trunk/KDE/kdebase/workspace/libs/libksysguard/processui:

Initial commit of renice dialog

Diffs: 1, 2, 3, 4 Revision 732155


Jonathan Marten committed changes in /trunk/KDE/kdepim/kmail:

Make the "How does this work? link in the folder- and identity-templates dialogues available at all times, even if the checkbox is turned off.

Improve the wording of the resulting help displayed.

Diffs: 1, 2, 3, 4 Revision 730309
Jonathan Marten committed changes in /trunk/KDE/kdepim/kmail:

Add the "With custom template" entries to the "Reply" and "Forward" menus in the standalone message reader window (menubar and popup), to make them consistent with the main window menus.

Split out the menu generation from KMMainWin into a new class CustomTemplatesMenu to allow for this.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 730317
Tobias Koenig committed changes in /trunk/KDE/kdepim:

Add support for Scalix groupware server (forward port from enterprise branch)

Adapted groupware dbus interface path to '/Groupware'

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 56 more) Revision 731418
Mike Arthur committed changes in /trunk/KDE/kdepim/korganizer:

Add alignment and strikethrough options to WYSIWYG editor.

Mike Arthur committed changes in /trunk/KDE/kdepim/korganizer:

Add lists to WYSIWYG editor and "intelligent" rich text selector button.

Diffs: 1, 2, 3 Revision 732293


Marijn Kruisselbrink committed changes in /trunk/koffice/shapes/musicshape:

improve the way multiple connected music frames are handled. now mouse events should more or less work correctly

Diffs: 1, 2, 3 Revision 730343
Boudewijn Rempt committed changes in /trunk/koffice/krita:

Port Krita to the nice, shiny new (well, it's more than a year old, but I'm finally at this place in my todo list) KoProgressUpdater api. There are some todo's left, marked with XXX_PROGRESS. And showing/hiding the progressbar in the statusbar isn't implemented yet.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 88 more) Revision 731171
Sven Langkamp committed changes in /trunk/koffice:

ported Karbon to the gradient resource server and fixed some casting problems

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

Add new feature, 'hotspots'. This is usable by apps to set a position on the ruler the user can then drag.

Diffs: 1, 2, 3 Revision 731951
Thomas Zander committed changes in /trunk/koffice/libs/kotext/styles:

Support new features, character spacing and word spacing.

Marijn Kruisselbrink committed changes in /trunk/koffice/libs/guiutils:

add first basic implementation of a collapsible dock widget. This can be used in two ways; either you can replace

QDockWidget with KoDockWidget to get a collapsible dock widget, or you can continue using QDockWidget and add a setTitleBarWidget(new KoDockWidgetTitleBar(...)) call to set a title bar widget that should be identical to the default tile bar except that it has one additional button on the far left that can be used to collapse the dockwidget.

Diffs: 1, 2, 3 Revision 732080
Sebastian Sauer committed changes in /trunk/koffice/kspread/plugins/scripting/scripts:

added vCard import script.

Diffs: 1, 2, 3, 4 Revision 732476


Harri Porten committed changes in /trunk/KDE/kdebase/apps/konqueror/src/konqcombo.cpp:

As requested on #kde4-krush, wished by myself very often and okayed by David: select the whole URL on double-click. Stopping on word-boundaries and requiring a triple-click does not make much sense for URLs.


Leo Franchi committed changes in /trunk/extragear/multimedia/amarok/src/context:

make engine work (yay!)
make current engine keep aspect ratio by actually setting the geometry, not just m_size

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

Lots of work on album grouping in the playlist. Now handles ragging around stuff a lot better and does not expand each end every collpased group every time a minor change is made. There are some fairly fundamental changes in here, so it will need thourough testing

Diffs: 1, 2, 3, 4 Revision 730369
Christian Esken committed changes in /trunk/KDE/kdemultimedia/kmix:

Implement merging of soundcard profile with user preferences.
Use CheckBox for "mute", instead of icon button (kde-usability).

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 731070
Sebastian Trueg committed changes in /branches/extragear/kde3/multimedia/k3b:

More Blu-Ray support

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 18 more) Revision 731288
Sebastian Trueg committed changes in /branches/extragear/kde3/multimedia/k3b:

Blu-ray copy works (sort of)
Blu-ray data projects work (sort of)
Blu-ray writing with both growisofs and cdrecord work (cdrecord does not fully support Blu-ray yet though, so I disabled it)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 11 more) Revision 731395
Jeff Mitchell committed changes in /trunk/extragear/multimedia/amarok/src:

Generic Solid StorageVolumes can now be autodetected (in the plugin manager only, other places later) if they have a .is_audio_player file at their root, like Banshee uses. Yay. Also do some renaming of slots and uid->udi.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 731512
Matthias Kretz committed changes in /trunk/playground/multimedia/phonon/controlwidgets:

experiment with a small widget that shows the current volume. still missing is the ARGB visual...

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 731696
Jeff Mitchell committed changes in /trunk/extragear/multimedia/amarok/src:


All media detected by Solid::StorageAccess will now be autohandled by Amarok if .is_audio_player is in the root. Changes in mount status are now handled. You must have the patch available at <a href=""></a>; and apply to kdelibs until (hopefully) kdelibs Solid API is changed.

Diffs: 1, 2, 3, 4, 5, 6 Revision 731784
Sebastian Trueg committed changes in /branches/stable/extragear/multimedia/k3b:

Allow the burning of files bigger than 4 GB with an appropriate genisoimage or mkisofs version.

Do only reload before verification if necessary.

Diffs: 1, 2, 3, 4, 5, 6 Revision 731898
Maximilian Kossick committed changes in /trunk/extragear/multimedia/amarok/src/collection/sqlcollection:

port sqlcollection to the new schema.
building the collection and playing tracks works again, although there might be a few incorrect sql statements left.

delete your collection.db and rebuild your collection. oh, and amazon album images work now:)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 731989
Christian Esken committed changes in /trunk/KDE/kdemultimedia/kmix:

Layout corrections. Selecting controls works again. View configuration gets saved properly again (at least for the first soundcard). Integrated new icons.

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

Networking Tools

Will Stephenson committed changes in /trunk/KDE/kdenetwork/kopete:

Use Solid for AV device detection, so webcams can be hotplugged and Kopete will be able to detect them at runtime. Not functional yet due to fixes needed in the underlying videodevice code.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 730451
Will Stephenson committed changes in /trunk/KDE/kdenetwork/kopete:

Use networkstatus from Solid instead of half-ported networkstatus from KDE 3. Change the 'Connect automatically on startup' behaviour option to 'Connect automatically', responding to network status change events as well as on startup.

Offline mode is now handled in Kopeteapplication, instead of using the 'magic' ManagedConnectionAccount class. Show a widget in the status bar indicating offline.

Note, there are no real network status applications in KDE 4 yet. Instead, use kdebase/workspace/solid/networking/tests/networkingservice to fake network disconnection.

Diffs: 1, 2, 3, 4, 5 Revision 730476
Urs Wolfer committed changes in /trunk/KDE/kdenetwork/krdc/main.cpp:

Try to recover unusable URLs (e.g. if the protocol is missing). Default protocol is VNC if none is set (this was also the default in KDE 3 times...).

Roman Jarosz committed changes in /trunk/KDE/kdenetwork/kopete/protocols/oscar:

Allow user to change server side aliases.


Ivan Čukić committed changes in /trunk/extragear/plasma/applets/lancelot/app:

Computer section models
* Places
* Devices* System services

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 15 more) Revision 730793
Frerich Raabe committed changes in /trunk/KDE/kdenetwork/knewsticker:

- A bit of news feed management, you can add and remove feeds. It's pretty ugly at the moment and it doesn't work very well in some cases. I'm just not sure whether I will go on like this or whether I will decide on a totally different configuration GUI. Decisions, decisions!

Diffs: 1, 2, 3, 4, 5, 6 Revision 731541
Frerich Raabe committed changes in /trunk/KDE/kdenetwork/knewsticker:

- Configurable scrolling speed; restrict the repainting interval to 25ms. If we want a higher speed, the stepping width is increased (so that e.g. it scrolls two pixels per update instead of one).

Diffs: 1, 2, 3, 4 Revision 731563
Ivan Čukić committed changes in /trunk/extragear/plasma/applets/lancelot/app:

* window type not menu
* composite support* test of Plasma applets inside Lancelot

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 7 more) Revision 731928
Frerich Raabe committed changes in /trunk/KDE/kdenetwork/knewsticker:

- Factor out the scrolling item view into a file of it's own so that I can add the 'paging' item view (which hopefully doesn't make Dirk sick) more easily.

Diffs: 1, 2, 3, 4, 5 Revision 732018
Frerich Raabe committed changes in /trunk/KDE/kdenetwork/knewsticker:

- A "paging" item view which scrolls one item in (with a slightly visible deceleration of speed when coming in, and accelerating when moving out) shows it for a few moments, then scrolls it out again and shows the next one.

Dirk had this idea and the people in the office agreed that it would be nice, including Rainer who uses a Mac. And who am I to argue with Mac users about good-looking GUIs?

Diffs: 1, 2, 3 Revision 732022
Frerich Raabe committed changes in /trunk/KDE/kdenetwork/knewsticker:

- Make the display style (scrolling or paging) and a few options configurable. Brrr, this configuration dialog is SO ugly.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 732346


Johannes Bergmeier committed changes in /trunk/KDE/kdegames/ksudoku/src/shapes:

* Added variant TinySamurai
* removed unused *.tar for existing variants

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 730473


KDE Base

Aaron J. Seigo committed changes in /trunk/KDE/kdebase/workspace/krunner:

* adapt to new api
* introduce a small delay on search so we don't end up searching constantly, improves performance dramatically


Tobias Koenig committed changes in /trunk/KDE/kdepim/kmail/kmfilteraction.cpp:

Lazy initialization of the Phonon::MediaObject, makes startup of kontact a lot faster...


Cyrille Berger Skott committed changes in /trunk/koffice/krita/plugins/viewplugins/panorama/

reenable the Harris detector, it's way faster, and gives good enough result (it would be interesting to use the ZNCC descriptor with the Hessian, as it seems that it is descriptor generation which is slow in hugin's code)


Andreas Pakulat committed changes in /trunk/KDE/kdegames/ksudoku/src/gui/gamevariants.cpp:

Improve the speed a lot by not calculating the exact font size. Width is set to the rectangle anyway and for the height the font-height is a good approximation.


Development Tools

Dirk Mueller committed changes in /trunk/KDE/kdewebdev/klinkstatus/src:

remove K3StaticDeleter to fix the build. Why does it take 11 days for anyone to care about it? ;(

Diffs: 1, 2, 3, 4 Revision 731383
Hamish Rodda committed changes in /trunk/KDE/kdevplatform:

Virtual rewrite of the class model. Saves the parent pointers in a much easier to use fashion than the rewrite in between this one and the initial commit (yes, this is version 3, and yes I've had enough of pointers for the moment)

I think painting may be slow because we re-create KIcon every time it's requested, will investigate..

Diffs: 1, 2, 3, 4 Revision 731665
Michael Pyne committed changes in /trunk/KDE/kdesdk/scripts/kdesvn-build:

Before I go to bed, fix some minor speling errors in the comments.

And also, start on work to allow kdesvn-build to be used as a sort of module for integration with a unit testing framework. I've been pretty good about avoiding brown-paper-bag bugs, I'd like to be able to keep it up.

Hamish Rodda committed changes in /trunk/KDE/kdevplatform/plugins/classbrowser/classmodel.cpp:

Wow, the icon loading was the culprit for the terrible performance of the class model - go figure.

Disable showing of icons until it can be figured out why it is a problem... any ideas?


Jason Harris committed changes in /trunk/KDE/kdeedu/kstars/kstars/kstarsinit.cpp:

Usability fix for the "Start/Stop clock" action.

In 3.x, we used a custom "ToggleAction" class that allowed us to change the icon of the action from Play to Pause when it was toggled.

Some people found this confusing (does the Play icon mean it's currently playing, or that it will play if you click it?).

In trunk, the icon toggling hasn't been working, so it's been even worse: the icon is always "Pause", with no indication of what state it's in.

Now, the icon is still always Pause, but we are using KToggleAction, so that when the clock is paused, the button has a "pressed" look.

So, you press the button to pause the clock, and un-press it to start it again.


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

update. New KDE4 libs (beta3) is more stable. few crash disapears

KDE Base

Harri Porten committed changes in /trunk/KDE/kdelibs/kjs:

Integrated JSC r23930 although we don't really know what this is about as it is about an Apple-internal rdar problem report. Patch can't hurt either.

Frerich Raabe committed changes in /trunk/KDE/kdebase/workspace/plasma:

- A little program for running plasma applets in a window of their own; makes developing plasma applets nicer since this makes it unnecessary to restart the desktop all the time when installing a new version of an applet. Invoke this like 'plasmoidviewer clock' or 'plasmoidviewer knewsticker'.

Two known issues:
1.) Plasma::Containment::addApplet seems to return something no matter what.
I would have thought it returns a null pointer when given some bogus plugin name, so that I can do my own error handling. Instead I get an ugly 'The object couldn't be loaded' dummy applet.

2.) The size of the viewer window is wrong for many plasma applets; this is because they appear in an animation (which starts very small). It works correctly for KNewsTicker since KNT simply hardcodes a size hint :-}

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

some useful debug output, which helped me realize just how badly we need PanelLayout ... and perhaps just how broken BoxLayout is? hm.

David Faure committed changes in /trunk/KDE/kdebase/workspace/kwin/kwinbindings.cpp:

Fix Ctrl+Del calling kill window - I need my Ctrl+Del in xemacs to delete a word forward :)

This appears to have been introduced by r568780, which turned META+CTRL+Del into CTRL+Del to "only use 3-modifiers shortcuts in the code"; it now uses the kde3 shortcut instead, ctrl+alt+esc, which should be okay since the point of r568780 was really to avoid META I think.

Kevin Ottens committed changes in /trunk/KDE/kdelibs/kio:

After all having KFileItem explicitly shared is not a good idea. Reverting this, and adjusting KDirLister instead so that we ensure the case is updated correctly.

"approved by dfaure"(tm) (interesting got approval for a patch and its revert :-p)

Diffs: 1, 2, 3, 4, 5 Revision 730738
David Faure committed changes in /trunk/KDE/kdebase/runtime/knotify/main.cpp:

Nice one - "yeah I'm the maintainer, but send all mails to the previous maintainer :)"

Josef Spillner committed changes in /trunk/KDE/kdelibs/knewstuff/knewstuff2/ui/kdxsbutton.cpp:

- routing all internet traffic to josef is a bad idea

David Nolden committed changes in /trunk/KDE/kdelibs/kate/completion/expandingtree:

While moving the keyboard-cursor downwards in the completion-list, and when the item should be partially expanded, show that information ABOVE the selected item instead of below.

This way, the actual text of the selected item does not change its position when it is selected, which should be easier on the eyes. Now let's test that's true. :)

Diffs: 1, 2, 3, 4 Revision 730897
David Faure committed changes in /trunk/KDE/kdelibs/kdecore/tests:

More tests of the new KPluginLoader/KPluginFactory stuff. How could this stuff have been written without any tests?

Now tested:
old loader, old plugin
old loader, new plugin
new loader, new plugin
... guess what's next

Diffs: 1, 2, 3, 4, 5 Revision 730999
David Faure committed changes in /trunk/KDE/kdelibs/kdecore/tests:

new loader, old plugin: works.
But the old loader tests show memory leaks.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 731001
Frerich Raabe committed changes in /trunk/KDE/kdelibs/kdeui/fonts/kfontchooser.cpp:

- Use some maximum font size for the slider; it defaults to INT_MAX so moving the slider just a little bit immediately resulted in insane font sizes (which in fact, for some reason, made my font dialog window a few thousand pixels wide).

I'm sure everybody has an opinion on what the maximum size selectable via the slider should be. I chose 128.

Maks Orlovich committed changes in /trunk/KDE/kdelibs/khtml/ecma/debugger:

I was going to look through this to help me bootup my brain, but realized it was missing quite a few i18n calls. So I am dumping this in ASAP so it actually has a chance of being properly i18n'd, and cutting away the possibility of UI elements needing extra strings...

This also makes source loading and a few other things sort of work, but it needs a LOT of work to be usable. Hopefully someone else can do it ;-)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 731248
Aaron J. Seigo committed changes in /trunk/KDE/kdebase/workspace/libs/plasma:

massive change to AbstractRunner API, but now at least it is hopefully future proof and we won't have to change it in BIC ways after 4.0

introduces two new classes: Plasma::SearchContext and Plasma::SearchAction

benefits include:
- well, future proofing =)
- the ability to eventually allow runners that mutate the search
- multiple exact matches per runner
- 'executing' of informational runners (useful for, e.g., the calculator)
- being able to centralize expensive operations such a KUriFilter actions
- simplifies writing runners *dramatically*

Oswald Buddenhagen committed changes in /branches/KDE/3.5/kdebase/kdesktop:

DPMS-dependend has a rather strange double-meaning:
- the original meaning is the question whether the autolocker should be disabled when dpms is disabled by some application (tv, media player, etc.). i think we decided that this option makes absolutely no sense - everybody wants it on. therefore i'm deleting this meaning.
- the new meaning introduced by aleXXX actually makes sense: screen savers are usually cpu burners which have little point in running when dpms kicks in. however, there are savers like SETI@home, etc. that should not be suspended.

Diffs: 1, 2, 3 Revision 731374
Matthew Woehlke committed changes in /trunk/KDE/kdelibs/kio/kio/kfileitemdelegate.cpp:

Don't use background colors from other sets to draw text, both violate correct use of color roles. Instead use the normal text color at 60% alpha.

Davide Bettio committed changes in /trunk/playground/base/plasma/applets:

Added binary clock.

Diffs: 1, 2, 3, 4, 5, 6 Revision 731560
Sven Burmeister committed changes in /trunk/playground/base/plasma/applets/fuzzy-clock:

adding fuzzy-clock

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


Inge Wallin committed changes in /trunk/koffice/kchart/kdchart:

Move KChart over to KDChart 2.1.

This fixes several bugs and improves performance.

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


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

A (hopefully last) go at renaming remaining occurances of amaroK and AmaroK. This touches all the desktop files as that seems to be most of whats left.

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

Delete the sad attempt at a coverbling applet, I'm sure I didn't do it right and it'd be easier to do from scratch by someone who understands opengl

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

Networking Tools

Dirk Mueller committed changes in /trunk/KDE/kdenetwork/kopete/plugins/CMakeLists.txt:

reenable on 64bit platforms. whatever the problem is, it is better ending up getting fixed than being papered over

User Interface

Matthew Woehlke committed changes in /trunk/KDE/kdebase/workspace/kcontrol/colors:

Add the current "default" colors as a scheme, just until we have actual "default colors" pseudo-entry. This way hopefully people will stop thinking BeOS will be the default in KDE4 :-).

NOTE: we do not actually have the final 'default' scheme yet.

Matthew Woehlke committed changes in /trunk/KDE/kdebase/workspace/kcontrol/colors:

commit "Wonton Soup" color scheme, the one I have been using for ages in KDE3 and ported to KDE4, because several people on #oxygen really liked it and encouraged me to do so :-)

Stefan Monov committed changes in /trunk/KDE/kdebase/runtime/kstyles/oxygen/helper.cpp:

changing slab thickness to 0.45 as 30 people confirmed on nuno's blog :)


Chris Howells committed changes in /trunk/extragear/plasma/applets/frame/frame.cpp:

Allow a minimum time of 1 seconds - I find 10 seconds *waaay* too long and get extremely bored waiting for the next image to appear.

Robert Knight committed changes in /branches/work/kickoff-simple-menu:

* Add a branch for an alternate simple hierarchical menu built on top of the Kickoff core.

Robert Knight committed changes in /branches/work/kickoff-simple-menu/simple-ui:

Initial import of a KMenu-based item view for Qt models (MenuView) and a derivative which uses this to create a menu which displays installed applications (SimpleUi) as per the old KDE 3 K-Menu.

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