Issue 101

9th March 2008 by Danny Allen

This Week...

Support for alternate direction layouts (vertical, horizontal) in Kickoff. Improvements in the Device Notifier applet, with support for window icons in the Pager Plasmoid in Plasma, with the "Trash" applet moving into kdebase, the "Luna" applet moving to extragear, and the "Contacts" and "Converter" runners moving into kdereview. Support for online play (using the GGZ network) in the KSquares game. A new default theme for the KSame game. More maintenance work in Kooka. Better interaction between Okular and the KDE text-to-speech system. Full support for colour schemes in the interface of Digikam. Lots of old bugs fixed in the mimetype configuration dialog of Konqueror. Continued work and optimisations in KHTML. The start of the ability to extend GUI's with scripting actions using Kross. KRatingPainter becomes a global way to manipulate ratings throughout KDE. A "Konsole" mode and "Web Interface" are added to KTimeTracker. Long-awaited support for inserting signatures at the top of email replies in KMail. The ability to store all attachments in a specified directory, and a status bar are added to Mailody. KOrganizer gets a new "Month" view. More work on the "online reader" syncronization project in Akregaror. Work on general Zeroconf support in KDE, and particularly in KRDC. Continued porting of Kommander to KDE 4. The start of moves to make Phonon the only output engine in Amarok 2.
Rivo Laks introduces KGLLib:
KGLLib is an object-oriented OpenGL library built on top of Qt. The main features of KGLLib include ease-of-use, extensibility, and a clean API. The main purpose of KGLLib is to make it easier to develop OpenGL applications for Qt and KDE, and to add OpenGL support to existing applications.

Qt includes its own OpenGL module, so why is KGLLib better? Qt's module is quite limited, as it only provides very basic things. It also doesn't have an object-oriented design, for example there is no "Texture" class which would make some operations easier. Instead, you will need to use OpenGL texture ID's.

KGLLib is divided into two big parts: "core" and "extras". Core includes classes which are useful to a wide range of applications. Examples of this include Texture and Program classes. Core classes are also more stable and complete, having already reached some level of maturity. Extras, on the other hand, also includes parts which are interesting only to a few applications or which are still under heavy development, and therefore we cannot guarantee future binary or source compatibility.

KGLLib is built with extensibility in mind. The existing classes should provide building blocks on top of which additional (sometimes application-dependent) functionality can be developed. Those extended parts could then be contributed back into the KGLLib extras library, so that it could be used by other interested parties. KGLLib depends on Qt, Eigen and GLEW. Probably all the readers already know what Qt is! Eigen is an excellent lightweight library for vector and matrix math, already used in quite a few KDE projects. GLEW is an OpenGL extension library, taking care of initializing OpenGL extensions and function pointers. Together they form a good basis for any OpenGL application.

KGLLib lives in KDE SVN at /trunk/playground/libs/kgllib/. It also has some examples to demonstrate how to use the API to build smaller OpenGL applications. For now, the API documentation for KGLLib can be found at http://freehackers.org/~rivo/kgllib/html/. I'm hoping that KGLLib will become a standard for KDE OpenGL applications. KWin will probably start using it instead of its own little internal OpenGL library. KGLLib is also using some code from the Avogadro project, and it is possible that they'll start using KGLLib after it matures some more.

As a sidenote, I'm looking for a *Cool* name for KGLLib, so if you've got a candidate, let me know!
Didier Hoarau and Frank Osterfeld talk about a project to add online reader syncronization support to Akregator:
With the help of Frank Osterfeld, I'm working on a online reader synchronization module for Akregator. The goal is to synchronize Akregator with online readers such as Google Reader. RSS aggregators are great, but if someone uses different aggregators at home and at the office for example, he might have a hard time to synchronize them manually. As a consequence some people might prefer to use only one (probably "online") reader. That's why (in my opinion) a nice feature for a desktop reader is to make the synchronization easy (between both types of clients).

At first, we would only deal with the list of subscriptions: adding the new feeds, updating the existing feeds (the name and the category for example) and removing (optionally) the feeds that are not in the source. But in the future, it would be interesting to mark the articles as read or at least to mark an article as important if it is present in the other reader. We began the work with Google Reader because the Google API is really simple, but it would be obviously be nice to deal with other readers.



At mid-term, something like this should be based on Akonadi, but as a version of Akregator based on Akonadi won't be released before KDE-PIM 4.2, a simple synchronization of the feed list (as opposed to a full sync, including items/item states) could be implemented on the current codebase and would already be available for KDE 4.1.

From a technical perspective, there is not a lot to deal with. All aggregators include more or less the same set of features. There can be some differences in the vocabulary (for example Google calls "starred" something others would call "important") but that's not a problem. The main difference we have seen so far is the feed hierachy: for example Google uses labels and Akregator uses folders. That's a difference but in such cases the only thing that we need is to agree on a simple mapping rule between both systems.

Statistics

Commits 2412 by 226 developers, 4864 lines modified, 1194 new files
Open Bugs 16175
Open Wishes 13763
Bugs Opened 321 in the last 7 days
Bugs Closed 297 in the last 7 days

Commit Summary

Module Commits
/trunk/KDE
342
 
/trunk/l10n-kde4
262
 
/branches/stable
145
 
/trunk/extragear
114
 
/branches/KDE
97
 
/trunk/playground
82
 
/trunk/kdesupport
57
 
/branches/work
36
 
/trunk/www
34
 
/trunk/koffice
34
 
Lines Developer Commits
243
 
Gilles Caulier
105
 
152
 
Dan Meltzer
55
 
54
 
Yiwen Mao
54
 
50
 
Chusslove Illich
50
 
111
 
David Faure
42
 
99
 
Allen Winter
39
 
59
 
Sebastian Sauer
33
 
57
 
Sebastian Trueg
32
 
31
 
Sergiu Bivol
31
 
36
 
Christian Ehrlicher
29
 

Internationalization (i18n) Status

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

Bug Killers and Buzz

Person Bugs Closed
Peter Rockai
53
 
Thomas McGuire
30
 
Pino Toscano
19
 
Harald Sitter
17
 
Dan Meltzer
15
 
Maks Orlovich
14
 
Luboš Luňák
12
 
Leonardo Finetti
11
 
Tristan Hoffmann
11
 
Peter Penz
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 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 92 selections this week

Bug Fixes

KDE Base

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

I keep hitting KConfig bugs while trying to implement filetypes stuff...

This time: do create the parent directory if necessary. Seems canonicalPath returns empty for a non-existing dir.

Diffs: 1, 2, 3 Revision 781898
Kevin Ottens committed changes in /trunk/KDE/kdelibs/kfile:

React to folder being empty or not when the bookmark icon has a "-full" version.

This allows to react to the trash state for instance.

KDE-PIM

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

Fix the "clean spaces" function in KMail and also fix changing identities - now the signature is properly changed, even if it is a HTML signature.

Changes to KMeditor:
- Add new functions: cleanWhitespace() and replaceSignature(...) + helper functions for those
- Remove some unused virtual functions
- Remove a unused variable
- Small style fixes
- Rename parent to q, as this is the standard
- Small fixes for insertSignature

Changes to KMail:
- Use the new functions of KMeditor and remove own implementations

Changes to KNode
- Follow KMeditor change

Still TODO:
- Move the HTML mode mess completely into KMeditor instead of having 3 different implementations in KMeditor, KMComposeWin and KMCompoerEditor
- Fix the highlighter

Volker Krause committed changes in /trunk/KDE/kdepimlibs/kioslave/sieve/sieve.cpp:

Waiting for the server response might be a good idea instead of just assuming the operation faild if the server is too slow.

Now sieve actually works (and thus also the out-of-office reply stuff).

I'm wondering though why this isn't a problem in 3.5, the code is exactly the same there...

Multimedia

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

Actually.... having to do that for every single service sucks, so lets just fix it for all Meta items that desend from ServiceTrack in one fell swoop!

This should cover all services, perhaps with the exception of last.fm

Richard Moe Gustavsen committed changes in /trunk/kdereview/phonon/qt7:

Fix crash. Better lipsync. Prepared for GraphicsView. And more.

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

Games

Rivo Laks committed changes in /trunk/KDE/kdegames/kollision/mainarea.cpp:

Set the update timer's interval to 20ms (previously 0).

It keeps Kollision from using 100% cpu.

Features

Development Tools

Richard Dale committed changes in /trunk/KDE/kdebindings:

* Added some more Qt 4.4 classes

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 15 more) Revision 781690
Dominik Haumann committed changes in /trunk/KDE/kdesdk/kate/plugins/findinfiles/kategrepdialog.cpp:

* CTRL+C copies the seleted item's url into the clipboard
* tooltips show the url

Graphics

Jonathan Marten committed changes in /branches/work-kde3:

New Scan Parameters. These are named sets of scanner settings which be saved and recalled at any time. So, for example, you could define (among others) sets named "Hi-Res Photo" and "Lo-Res Document" with appropriate scan settings, and switch between them with a couple of clicks.

All operations are available from the "Scan - Scan Parameters..." menu, when Kooka is not in gallery mode.

Originally requested as bug/wish 68530.

Kooka:
* More polishing of "Configure Kooka" dialogue
* Don't clear or unload selected image when renamed, bug 68532
* Keyboard shortcuts for Preview (F3) and Scan (F4)
* New files newscanparams.{cpp,h}, scanparamsdialog.{cpp,h}

libkscan:
* Properly expand data buffer if needed in KScanOption::configLine()

Gaël de Chalendar committed changes in /trunk/extragear/graphics/kgraphviewer/src/part:

- precise selection of edges
- kill without error the current dot process when startting a new one
- rename some methods to avoid lexical hiding warnings
- new message boxes and new whatsthis that were delayed during 4.0 string freeze
- individual attribute changing mechanism
- new signals to inform of the current selection
- compiler warnings removal

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision 781276
Gilles Caulier committed changes in /trunk/extragear/libs/libkdcraw:

libkdcraw from trunk (KDE4) : update internal dcraw to version 8.83. New cameras supported :
- Apple QuickTake 200
- Fuji IS-1
- Sony DSLR-A350
- Pentax K20D
- Nokia N95
- Canon PowerShots A460
- Canon PowerShots A530
- Canon PowerShots A650.

Diffs: 1, 2, 3, 4 Revision 782437
Pino Toscano committed changes in /trunk/KDE/kdegraphics/okular:

More interaction between Okular and the KDE Text To Speech system:
a) "Speak While Document" action to speak the content of the whole document
b) "Speak Current Page" to just speak the content of the currently shown page
c) "Speak Text" action in the right click menu of the editor-like text selection

(a) also implements KPDF's bug #118872.

Diffs: 1, 2, 3 Revision 782497
Gilles Caulier committed changes in /branches/extragear/kde3/graphics/digikam:

digiKam from KDE3 branch : full color scheme theme support everywhere in interface "à la Amarok" (albumgui, lighttable, camera interface, editor, image plugins and kipi-plugins)

A demo is available here: <a href="/issues/2008-03-09/files/fullcolorschemesupport-desserttheme.png">http://digikam3rdparty.free.fr/Screenshots/fullcolorschemesupport-desserttheme.png</a>;

Hans Bakker committed changes in /trunk/playground/graphics/krita2-plugins/experimental:

initial checkin of the spacenav plugin for krita

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

KDE Base

Urs Wolfer committed changes in /trunk/KDE/kdebase/workspace/ksmserver:

* When opening logout dialog from kickoff, an action is already pre-selected. If the user does not do anything, the action will be executed automatically after 60 seconds. i18n stuff reviewed by Chusslove.
* Fix issue with recent Qt 4.4 snapshot: use QPalette for text color instead of HTML
* Fix issue with very long user names: cut them off if they would require more than two lines #157182
* Fix some krazy issues

Stefan Majewsky committed changes in /trunk/extragear/plasma/dataengines/comic:

Initial commit of www.phdcomics.com provider. Coding supported by Tobias Koenig and Josef Spillner.

Diffs: 1, 2, 3, 4, 5 Revision 781322
Sebastian Trueg committed changes in /trunk/KDE/kdelibs/nepomuk/core/ui:

KRatingPainter is now public API. It allows to paint a graphical representation of a rating using any QPainter as well as determining a rating value from a position in a rating paint rect.

It supports all alignment combinations, RTL layout, custom icons or pixmaps, arbitrary resizing, and convenience features such as spacing, maximum rating change, and static methods for quick usage in most common situations.

The straight forward usecase is in a widget: KRatingWidget. It has nearly the same API as KRatingPainter.

I also wrote a nice little testapp which allows to test all features interactively.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 781611
David Faure committed changes in /trunk/KDE/kdebase/apps/konqueror/settings/filetypes:

re-implement and re-enable creating and deleting mimetypes

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 3 more) Revision 781923
David Faure committed changes in /trunk/KDE/kdebase/apps/konqueror/settings/filetypes:

Allow to define new mimetype groups

David Faure committed changes in /trunk/KDE/kdebase/apps/konqueror/settings/filetypes:

Now you can also type a part of the mimetype name in the search lineedit. Label and whatsthis adjusted.

David Faure committed changes in /trunk/KDE/kdebase/apps/konqueror/settings/filetypes:

Add label in right-side widget to show the name of the mimetype being edited. Not too sure about the wording of that label though.

Maks Orlovich committed changes in /branches/work/kjs-frostbyte/kjs:

Pickup JSC storage improvements (work of Darin @ Apple), part 1.
This makes sparse arrays use a hashmap and not the normal property map, which means access to them doesn't require string conversions anymore, making a huge difference on array-heavy benchmarks such as 3d-morph and access-nseive.

Diffs: 1, 2, 3, 4 Revision 782314
Paulo Moura Guedes committed changes in /trunk/KDE/kdelibs/kross/ui:

Introduce a new class Kross::ScriptingPlugin wich extends KParts::Plugin with aditional logic to load Kross actions in the GUI.

One can create .rc files describing scripting actions that Kross can understand, e.g.:

<KrossScripting>
<collection name="file" text="File">
<script name="dummy_script" text="Dummy Script" comment="Dummy Script" interpreter="python" file="dummy_script.py" />
</collection>
</KrossScripting>

This plugin class will append this information to its XMLGUI, i.e., will create a new action named "Dummy Script" in the "File" menu.

There are to additional slots in this class:

virtual void slotEditScriptActions();
virtual void slotResetScriptActions();

The first one edit or create an user actions file, which will override/extends the default script actions.

The second one deletes the user actions file, which has the effect of falling back to the default script actions (if any)

Later, slotEditScriptActions() function can be improved to offer some kind of visual editor similar to Qt Designer.

Besides the possibility of extending applications by exposing a scripting interface, this will allow to extend the GUI with scripting actions which, IMHO, is a very powerful concept.

Diffs: 1, 2, 3 Revision 782676
Will Stephenson committed changes in /trunk/KDE/kdebase/workspace/plasmas/kickoff:

This patch adds the ability to Kickoff to set its layout according to the direction the popup is appearing relative to the launcher button, to improve the ergonomics of kickoff when its launcher is not in the standard position.

Assumption 1: The hardcoded tab order defines a desirable priority order

Goal 1: TabBar alignment is perpendicular to direction of mouse travel from launcher to target, to prevent mousing over non-target tabs and potential unnecessary tab switches

Goal 2 the movie: Tabs are ordered by decreasing priority along the mouse travel vector away from the launcher Constraint: The search widget is different to the tabs and the footer is of lowest priority so these should always be situated furthest away from the origin

This gives vertical tabs when Kickoff is used in a vertical panel, and it reorders the tabs so the Favourites tab is always closest to the launcher, etc.

Paint code still needs fixing to paint tabs right when vertical.

Odd glitch when resizing kickoff on a vertical panel with launcher in SW or SE position, causes the menu to slide off the screen - debug to handle this is left in intentionally.

Thomas McGuire committed changes in /trunk/KDE/kdelibs/kdeui/widgets/ktextedit.cpp:

Allow spellcheck highlighting of richtext content.

This essentially reverts commit 667328:
>Spell checking doesn't work with html

Aaron J. Seigo committed changes in /trunk/KDE/kdebase/workspace/plasma/applets/devicenotifier:

inspired by beat wolf's patch on review board, this makes the device notifier behave a lot better on the desktop (still proxy widget issues to work out, but nothing beyond the ordinary) and now dragging between desktop and panel work properly.

it's a slightly easier and more straightforward approach than what was there before (no "isOnDesktop", which really doesn't make a lot of sense unless one assumes that plasma is a desktop, which is not a safe assumption) and once that was straightened out, beat wolf's patch becomes a lot easier to implement straight forward ...

Davide Bettio committed changes in /trunk/KDE/kdebase/workspace/plasma/applets/pager:

Added window icons support.

Diffs: 1, 2, 3 Revision 783528
Maks Orlovich committed changes in /branches/work/kjs-frostbyte/kjs:

Start using local slots for special variables, for now only in ActivationImp.

JSVariableObject is next. When done, this should simplify the allocation picture, making it much easier to do stack allocation..

Diffs: 1, 2, 3 Revision 783608

KDE-PIM

Thorsten Staerk committed changes in /trunk/KDE/kdepim/ktimetracker:

Adding a web interface to ktimetracker. Adding a konsole mode to ktimetracker.

Thomas McGuire committed changes in /trunk/KDE/kdepim/kmail:

Finally port the following:

- Make it possible to manually insert the signature at the start or at the cursor position
- Make it possible to automatically prepend instead of appending the signature
- Make it possible to disable the signature separator

Based on patch by Scott, many thanks!

Tom Albers committed changes in /trunk/playground/pim/mailody/src:

Add feature which makes it possible to store all attachments in a certain folder. I can't test it currently due to some bug in Akonadi, but I'll do that later on.

Also I need to add a check for an existing file with that name and a md5 comparisation to see if it is the same file, if not, save it with another name, But at least it is a start.

Killer feature from Eudora from the past for me.

Diffs: 1, 2, 3, 4, 5 Revision 783318
Bruno Virlet committed changes in /trunk/KDE/kdepim/korganizer:

Introducing new month view.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 4 more) Revision 783335
Tom Albers committed changes in /trunk/playground/pim/mailody/src:

Add a System Tray, it will need to also hold the unread count on top of it and when you hover it I want the subjects of the unread mails, but that's the next step.

By the way, I thought the X was automatically mapped to minimize to systray, need to find out what's standard for KDE4 and how to implement it.

Diffs: 1, 2, 3, 4, 5, 6 Revision 783550
Tom Albers committed changes in /trunk/playground/pim/mailody/src:

Make the systemtray display the amount of unread messages, needs love from an artist I think.

Diffs: 1, 2, 3 Revision 783562
Tom Albers committed changes in /trunk/KDE/kdepim/akonadi/kmime/messagemodel.cpp:

Add a special role to sort on. This makes it possible to prevent sorting the dates based on the qstring, but on the qdatetime.

iow: now it is grouped by date of the week instead of the actual date.

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

Work on configuration UI and beginning of feed sync in Akregator

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

Office

Dag Andersen committed changes in /trunk/koffice/kplato:

Enable scripting.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 11 more) Revision 781606
Cyrille Berger Skott committed changes in /trunk/koffice:

* introduce an OpenCTL based color space and profile, both of which doesn't do much if at all
* port LMS color space to be based on the not doing much OpenCTL based color space and profile
* move some functions form KoColorSpaceAbstracts to traits (this might have the side effect to allow to use KoColorSpaceAbstracts with channels of different types)

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

Support for dataset color customization + show correct dataset properties on opening the tool widget (i.e., show properties of first dataset in list)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 782739
Cyrille Berger Skott committed changes in /trunk/koffice:

* introduce the first CTL based profile
* start implementation loading of CTL profiles

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

Multimedia

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

Introduce a nice ugly workaround to allow oneclick playing of neighbour radio/personal radio from the lastfm service.

I cannot figure out the proper way to do it so I'll just add buttons to click to do it automagically :)

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

Add a set of default, singleton, meta classes that can be used to give meta tracks a valid pointer for any fields which they in reality dont care about.

Also add a default Composer and Year to all Magnatune tracks.

This fixes a number of crashes, especially in the tag dialog.

Now to add this stuff for all the other services

Diffs: 1, 2, 3, 4 Revision 781288
Jens Bache-Wiig committed changes in /trunk/kdereview/phonon/gstreamer:

Cumulative updates from 4.4.
- Refactored videowidget into render classes
- Basic support for usage in graphicsview
- Some behavior changes:
- Error state with NormalError now behave as stopped state to allow for some recovering.
- MediaObject goes to PausedState instead of stopped on finish
- Some improved stability

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 18 more) Revision 782024
Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src/servicebrowser:

Enable the selection of preferred streaming file type for the Magnatune service. this was mainly prompted by the addition of a new ogg stream by Magnatune, but while I was at it, I also added support for the low bitrate mp3 stream for people on a slow connection.

The gui for this is on the magnatune service settings screen. Ogg is now set as the default as in general mp3 is evil! :-)

NOTE: this requires that the magnatune database is updated or it _WILL_ crash

Also a small general fixes

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

Add a capability to allow tracks to add custom actions to the context menu, and potentially other places, when they are the currently playing track.

Use this to rip out last.fm specific code in the system tray and actually make "love", "skip" and "ban" options available and work.

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

Networking Tools

Jakub Stachowski committed changes in /trunk/KDE/kdenetwork/kdnssd/ioslave:

Make it actually work. Also some changes:
- removed support for helper protocols. They don't belong to ioslave - maybe plasma applet
- use hardcoded protocols. Configurability is good but let's not go overboard.
- added fish:// support
- temporarily removed support for multiple domains (default domain is always used) - kdirmodel does not like listing zeroconf://domain/_ftp._tcp/name from inside zeroconf:/_ftp._tcp/

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

Add AIM/ICQ offline messages support and remove the old ICQ code.
Update ICQ version.

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

New Zeroconf support.
Work by Magnus Romnes. Thanks a lot!

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 783363
George Goldberg committed changes in /trunk/kdereview/decibel/demos:

Add a GUI Textchannel Handler demo

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 783501
Urs Wolfer committed changes in /trunk/KDE/kdenetwork/krdc:

FloatingToolBar inherits now from QToolBar instead of QWidget:
* possibility to add widgets to the toolbar
* all size calculation is done by QToolBar now (-> less code)

Show URL of current session in toolbar.

User Interface

Jakob Petsovits committed changes in /trunk/KDE/kdebase/runtime/pics/oxygen:

Puzzle piece on a sheet (a.k.a. generic plugin mimetype), for dfaure.

If I fail my exam tomorrow, you know who to blame :P

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

Utilities

Rolf Eike Beer committed changes in /trunk/KDE/kdeutils/kgpg:

Implement signing of multiple files from command line at once

Claudio Bantaloukas committed changes in /trunk/KDE/kdeutils/ark/plugins:

rar plugin for ark, just checking in some code, not working yet

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

Games

Josef Spillner committed changes in /trunk/KDE/kdegames/ksquares/src:

- implement several of the protocol opcodes to enable at least the start of the game

Other

Jarosław Staniek committed changes in /trunk/kdesupport/kdewin32/src/signal.c:

Support most more useful signals now, including signal 0 which is used for checking for existence of a process - we can now expect ESRCH result when there is no process for a given PID.

This is good for and various other unique processes, e.g. for KMail which will no longer display confusing "KMail already seems to be running on another display on this machine." message.

Reviewed by Christian (15 Feb).

Gael Guennebaud committed changes in /branches/work/eigen2:

* Added support for a comma initializer: mat.block(i,j,2,2) << 1, 2, 3, 4;
If the number of coefficients does not match the matrix size, then an assertion is raised.
No support for xpr on the right side for the moment.

* Added support for assertion checking. This allows to test that an assertion is indeed raised when it should be.

* Fixed a mistake in the CwiseUnary example.

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

Optimization

KDE Base

Maks Orlovich committed changes in /branches/work/kjs-frostbyte/kjs:

- Don't store List* in ExecState, not needed.
- Don't store a copy of argument list in Activations, since its possible use can not outlive the function running, and so a pointer is fine... This clarifies its livetime semantics somewhat.

As a bonus, this is also a ~2% speedup.

Diffs: 1, 2, 3, 4 Revision 783609

Other

Development Tools

Anne-Marie Mahfouf committed changes in /trunk/playground/devtools:

This is a GUI start for KAppTemplate. KAppTemplate, in kdesdk, currently generates three KDE 4 different projects templates on the command line, as a bash script. These templates help you starting programming for KDE.

This relook of this utility is based on QWizard. The model/view interface that displays available project templates is done but the project generation is still to be done as well as the GUI which is just started.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 121 more) Revision 781580
Anne-Marie Mahfouf committed changes in /trunk/playground/devtools/kapptemplate:

my first unit test, thanks to David Faure and Kévin Ottens for last Akademy presentation!
add a validator for the project name

Diffs: 1, 2, 3, 4, 5, 6 Revision 781989
Andras Mantia committed changes in /trunk/KDE/kdewebdev/kommander:

Continue porting of Kommander to KDE4:
- restructure the libraries: have one Kommander library, make the standard widgets part of a plugin
- add the new widgets from Kommander 1.3
- fix layouting issue
- fix reading and setting of properties
- fix a bug that cause string properties to be "translated" to empty strings

Depending on your luck, some dialogs may show up and work, but this is still pre-alpha.

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

Educational

Johannes Simon committed changes in /trunk/KDE/kdeedu/parley/practice/doc:

Provide some conceptual information on the new practice interface

Diffs: 1, 2, 3 Revision 781215
Carsten Niehaus committed changes in /trunk/KDE/kdeedu:

* I removed the density from the database. After a long discussion we (BlueObelisk) agreed that it is a compound property and thus does not belong into Kalzium.

Example: Carbon exists at least in three forms: graphite, diamond and buckyballs (Fullerene).

This means I need at least three (3) values for the density as all three forms of carbon are "carbon". The same applies for S, P and many many other elements.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 782700
Inge Wallin committed changes in /trunk/KDE/kdeedu/marble:

Krazy fixes while waiting for coworkers to come to lunch

Diffs: 1, 2, 3, 4 Revision 782860

Graphics

Gilles Caulier committed changes in /branches/extragear/kde3/graphics/digikam/data/pics:

new digiKam 0.9.4 splashscreen from Michel Pottier

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

digiKam from trunk : revert to use old FolderView/FolderItem class with TagFilterView/TagFolderView.

Marcel, Using Qt3 coding style with QT4 class work but is not enough flexible. We need to use pure Qt4 Model/View instead to use directly QTreeWidget.

Still in my TODO list.

Note: I have factorized D&D code here and used pure Qt4 D&D implementation.

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

KDE Base

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

moving to kdebase

Diffs: 1, 2, 3, 4, 5, 6 Revision 781519
Marijn Kruisselbrink committed changes in /trunk/KDE/kdelibs/kdeui/windowmanagement:

Implement a lot more of the KWindowSystem stuff on Mac OSX, currently it only tracks applications, not individual windows, because there is no public API to enumerate the windows (except for the accessibility API).

Diffs: 1, 2, 3, 4, 5 Revision 782172
Martin Gräßlin committed changes in /trunk/KDE/kdebase/workspace/kwin/effects:

Dim the screen if kdesu or kdesudo ask for the password for adminstrator mode

Diffs: 1, 2, 3, 4 Revision 782196
Davide Bettio committed changes in /trunk/kdereview/plasma/applets/luna:

moving luna applet from kdereview to extragear.

Marco Martin committed changes in /trunk/KDE/kdebase/workspace:

reworked how shaped windows with svg backgrounds are obtained:
there is a new function PanelSvg::mask() that returns a qbitmap of the areas of the svg with alpha=0 that can be used to create the mask of the window, at the moment used in tooltip and dialog (krunner still to come).

so now windows that uses svg backgrounds should always set PanelSvg::mask() as their own mask, regardless if composite is active or not.In this commit there are also two (identical) svgs for opaque tooltips and dialogs with pixelated rounded borders that looks good without antialiasing (and unlike the previous version they are vector based now).

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 782727
Sebastian Sauer committed changes in /trunk/KDE/kdebase/workspace/libs/plasma:

Enables ScriptEngine's like Apple's Dashboard Widgets or SuperKaramba's to implement containments too.

Right, that means you are now able to write your own Panel or even Desktop using a scripting language :)

Diffs: 1, 2, 3 Revision 782729
Teemu Rytilahti committed changes in /trunk/kdereview/plasma:

Move contacts runner to kdereview as requested by Aaron Seigo.

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

* make the add widgets widget a bit more sane size (it changed in libplasma)
* make the dashboard go away when the active window changes
* context menu is sensible now with window awareness

Aaron J. Seigo committed changes in /trunk:

move converter to review

Aaron J. Seigo committed changes in /trunk/KDE/kdelibs/kdeui/widgets/klineedit.cpp:

don't show the clear button, even if requested, when we don't have enough room inside the line edit to make it useful

tested with: kspread's toolbar font size combo, resizing konqi's location edit by sizing the window, okular's zoom controls and kfiledialog.

works as expected now in all situations.

KDE-PIM

Tom Albers committed changes in /trunk/playground/pim/mailody/src:

Add the transport and identity to the status bar. And for the advanced users: just click on them to change it ;-)

O how I love make cool features which I'm going to use daily.

Thomas J. Gillespie committed changes in /trunk/playground/pim/libopensync-plugin-kdepim-0.36:

Added initial port of opensync kdepim plugin to qt4/kde4

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

Multimedia

Dan Meltzer committed changes in /trunk/extragear/multimedia/amarok/src/context/applets/lyrics/LyricsApplet.cpp:

Don't allow the lyrics to be editable, we don't implement saving yet so this could only do bad things.

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

Remove the Engine config dialog.
This is the first step of my plan to make Phonon the only available engine; Everything else is going to be removed.

The reasoning is that I'm convinced we'd anyway do this sooner or later, because noone really wants to maintain the huge mess that xine-engine became, so we should really focus on Phonon.

Diffs: 1, 2, 3, 4 Revision 782435
Mark Kretschmann committed changes in /trunk/extragear/multimedia/amarok/src/MainWindow.cpp:

Put the Internet browser tab right below the Collection tab, to emphasize its importance.

IMHO it's the second most important tab, so this fits.

Mark Kretschmann committed changes in /trunk/extragear/multimedia/amarok/src/configdialog/ConfigDialog.cpp:

Rename OSD to "On Screen Display", which is much easier to understand, especially for non-native English speakers.

If anyone can come up with an even better name, I'm open to suggestions.

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

Here is one that should cause just a little bit of controversy :-)

Add Global tags and personal streams to the tree view in the last.fm service to faicilitate a bit of interface discussion. All streams are playable from here, but as the observant user will notice, there is a slight problem with track names getting updated a little too well...

Also fix a small bug in LastFm::Track that caused global tag track names to show up wrong

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

Largish changeset that unfortunately had to be all done before it was worth commiting

1. Move all the toolbar code from MainWindow to MainToolbar, as this is where it really belongs
2. No longer use a layout to position items in the toolbar but position them manually. In this case, this is less of a hack than adding invisible items to make things line up. It was alpos needed for bullet point 3.
3. Add a small sub toolbar that only appears when the currently playing track has CurrentTrackActionsCapability. For now it is only used for last.fm tracks, but it makes the "skip", "love" and "ban" actions very easilly available. This should also be usable for many other things.

It is not perfect yet as it needs some work on positioning of the actions if there are more or less than 3, and it really should also have a fade in/out animation.

Diffs: 1, 2, 3 Revision 783290

Networking Tools

Tobias Hunger committed changes in /trunk/kdesupport/telepathy-qt:

Add directory to hold telepathy-qt (as discussed with Allen and on the release-team ML).

Tobias Hunger committed changes in /trunk/kdesupport/telepathy-qt:

Import Telepathy-Qt as seen in SVN rev. 2093 on
<a href="https://tapioca-voip.svn.sf.net/svnroot/tapioca-voip/branches/work/telepathy-qt-autogen">https://tapioca-voip.svn.sf.net/svnroot/tapioca-voip/branches/work/telepathy-qt-autogen</a>;

This is a version of Telepathy-Qt that is about 98% generated directly from the Telepathy spec. While currently still incompatible to Decibel this version is where we are heading as the currently used Telepathy-Qt is severly outdated.

I did not import any history as this is the first mostly working version found in the telepathy-qt-autogen branch and it hardly related to the formerly released versions of telepathy-qt.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 327 more) Revision 783503
Giovanni Venturi committed changes in /trunk/playground/network/ksniffer:

Cleanup, removed some unuseful things, fixed others ones, fixed some notes, dumped the version.

Lots of work to do to fix the new bugs I found and to give more flexible interface different from wireshark... I've got all in mind I have to find some time to code

Fixed for real the "losting packet from the view": ksniff was closed not cleany cause of the lack of a wait on the KProcess pointer :) ... The more difficult things are always the simpler. It's been enough to add a wait() :) . Great! Just one line to fix it :)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 3 more) Revision 783636
George Goldberg committed changes in /trunk/kdereview/decibel/demos/textchannelgui:

* Almost total rewrite of textchannelgui demo.
The code is now much clearer and the decibelchannelhandler class has been rewritten as channelhandler class.

* Source code is now heavily commented

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

Utilities

Stephen Kelly committed changes in /trunk/KDE/kdeutils/kjots:

Remove kfontdialog and add more specific font actions to the text toolbar:
Font colour, font background colour, font family, font size.

Diffs: 1, 2, 3, 4 Revision 781430

Games

Michał Bartecki committed changes in /trunk/KDE/kdegames/ksame:

Added new default theme for KSame and renamed the old one as old_theme.svgz.

Diffs: 1, 2, 3 Revision 783324

Other

Josef Spillner committed changes in /trunk/promo/boothdecoration:

- booth posters as used at CLT2008, based on templates by ruphy
- embedded screenshots are missing, just roll your own :)

Gael Guennebaud committed changes in /branches/work/eigen2:

* Eigen compiles with any GCC versions from, at least, 3.3 without the previous ugly hack :)
* Renamed the scalar functors with the "Scalar" prefix (instead of "Cwise")

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