Issue 229

1st April 2012 by KDE Commit-Digest Team


Mutlu Inek
Vladislav Blanton
Marta Rybczynska

This Week...

KDev-Python's new debugger gains a DUChain-supported local declaration list. Digikam adds support to their geolocation service. Okular now remembers exact bookmark positions and more than one bookmark per page. KWin adds Global Shortcut support for scripts and scripted effects and cursor-key navigation to Flip Switch and Cover Switch effects. Kickoff can now be used only with a keyboard. Katepart improves their auto-bracketing feature. Plasma applet Miniplayer reaches version 2.3, adding a track properties dialog, improved filtering and other improvements. NEPOMUK enables Virtuoso inference on all queries and includes optimization fixes. Calligra further unifies toolbox behavior across all its programs, implements support for loading/saving layer locks in the OpenRaster file format (ORA) and includes numerous bugfixes. Calligra's Krita adds a textured painting option for brushes inspired by David Revoy's article. Amarok adds the ability to move track position bookmarks by dragging. Konversation adds an option to restrict logging to private conversations. KMLDonkey releases 2.1.2 and 2.1.3, including various bugfixes, optimizations and new features. KAuth introducing unit tests, completing all the needed requirements to be ready for being part of frameworks. KSCD, JuK, and other applications in KDE Multimedia can now build outside of KMM. Plasma Mediacenter improves its playlist. Bugfixes in Jovie, KDevelop, KDE-Workspace, KDE-PIM, KMyMoney, Phonon-Gstreamer and Phonon-VLC.


Commits 2071 by 167 developers
Open Bugs 22014
Open Wishes 16833
Bugs Opened 431 in the last 7 days
Bugs Closed 298 in the last 7 days

Commit Summary

Module Commits
Files Developer Commits
Ingo Malchow
Aleix Pol Gonzalez
Laurent Montel
Gilles Caulier
Sven Brauch
Marco Martin
Boudewijn Rempt
Sebastian Kügler
Yuri Chornoivan
Vishesh Handa

Internationalization (i18n) Status

Language Percentage Complete
Polish (pl)
Brazilian Portuguese (pt_BR)
Dutch (nl)
German (de)
French (fr)
Estonian (et)
Italian (it)
Low Saxon (nds)
Danish (da)
Norwegian Bookmal (nb)

Bug Killers

Person Bugs Closed
Christophe Giboudeaux
Jekyll Wu
Myriam Schweingruber
Christoph Feck
Ingo Malchow
Ben Cooksley
Laurent Montel
Christian Esken
Boudewijn Rempt
Gilles Caulier

Commit Countries

Commit Demographics




  Bug Fixes Features Optimization Security Other



Development Tools

[] [] []   




[] []    

KDE Base

[] [] []   []


[] []    


[] []    




[] []    []

Networking Tools

[] [] []   

User Interface



[] []    





There are 66 selections this week

Bug Fixes


Jeremy Paul Whiting committed changes in [jovie] jovie/speaker.cpp:

Use user settings when connecting to speechd.
If a voice is configured in jovie, use the topmost voice to
initialize language, outputmodule, speed, volume, pitch
when connecting to speech dispatcher.

Development Tools

Aleix Pol Gonzalez committed changes in [kdevelop] projectmanagers/cmake/cmakemanager.cpp:

Limit project initialization, only let 1 project to be set up at a time.

Helps serialize the KConfig calls issued when the project import is bootstrapped.

Milian Wolff committed changes in [kdev-php/1.3] /:

take range into account when looking for redeclarations

probably we should refactor the handling of foreach
variables, since right now we have to visit the
TypeBuilder::visitStatement before declaring the variables.
this has side-effects since it also means we visit the
foreach-body statements before declaring the variables...

Michael Pyne committed changes in [kdesrc-build] /:

Fully name internal function to use with log_command.

log_command supports calling an internal subroutine instead of
exec()'ing a new process in the logged child. The subroutine is
identified by name.

With the move of log_command to ksb::Util, log_command now assumes that
the named function will be found in ksb::Util instead of the main
package, but none of the users of this feature were ported over.

This led to bug 297158 (kdesrc-build fails to --refresh-build a module)
since the 'prune_under_directory' routine used to refresh the build
directory wasn't being called by log_command anymore.

Thanks to Kevin Lyles for the prompt and informative report!

I've added a (very simple) test case to ensure the subroutines can be
called at all (a test which now passes).



Aurélien Gâteau committed changes in [gwenview/KDE/4.8] /:

Use file extension as a hint for QImageReader

Fixes decoding PNG in weird situations.

FIXED-IN: 2.8.2

Smit Mehta committed changes in [kipi-plugins] /:

Porting the preview to KPPreviewManager

KDE Base

Martin Gräßlin committed changes in [kde-workspace] /:

Export blocking compositing as a Client's Q_PROPERTY

Allows to block compositing on Client's from scripts.

Usecase: window rule cannot properly identify buggy
clients and scripting allows to just act on fullscreen

FIXED-IN: 4.9.0
REVIEW: 104448

Kurt Hindenburg committed changes in [konsole] src/ProfileManager.cpp:

Allow --profile=full path to work again.

After 8240973baf59036030dc60aa93bad9489f05bccb, using full paths in
--profile didn't work. This fixes that issue.

It will save the full profile path for favorites and shortcuts if the
profile is not under the normal KDE konsole area.

Thomas Lübking committed changes in [kde-workspace] kwin/screenedge.cpp:
Lamarque Souza committed changes in [kactivities] /:

Remember current desktop when changing activity.
Thanks to makis marimpis for this patch.

REVIEW: 104261

Frank Reininghaus committed changes in [kde-baseapps] dolphin/src/views/dolphinview.cpp:

Select files which have been pasted or dropped

Also clear the previous selection.

(cherry picked from commit 210e5e3b96883f5d856913f81834310ecb3819bf)

Dawit Alemayehu committed changes in [kwebkitpart] src/webview.cpp:

Do not jump when the up/down arrow key is pressed while automatic
scrolling is active.


David Jarvie committed changes in [kdepim-runtime] /:

Fix crash when fetching attribute.

Use member variable to control initialisation, not static variable.

Laurent Montel committed changes in [kdepim] kmail/kmsystemtray.cpp:
David Jarvie committed changes in [kdepim] /:

Bug 296383: during startup, check that resources calendar opens ok

[KResources build option]: Prevent crash in program initialisation by
checking that the resources calendar has opened successfully.

Laurent Montel committed changes in [kdepim] templateparser/templateparser.cpp:

Fix Bug 291093 - Removing Quote indicator have no effect

FIXED-IN: 4.8.2

Laurent Montel committed changes in [kdepim] kmail/kmcomposewin.cpp:

Fix Bug 296048 - Kmail Crash

I didn't success to reproduce this crash but it's right if we don't set
IdentityManager in parser and we have %SIGNATURE in identity template it
will crash
FIXED-IN: 4.8.2


C. Boemann committed changes in [calligra] plugins/textediting/spellcheck/SpellCheck.cpp:

initialize value so we don't crash when changing language before typing

Thanks goes to: Franz Fellner

Allan Anderson committed changes in [kmymoney] /plugins/csvimport:

CSV Plugin can produce an incorrect amount if the wrong
column is chosen.

Fix problem in InvestProcessing where UI did not respond correctly to
start/end line changes.

Fix problem in InvestProcessing where import did not complete if the user
started the wizard, chose a file, then or later returned to the start and
selected the same file again.

Boudewijn Rempt committed changes in [calligra] /:

Fix inserting table shape in non-english locale

Comparing a translated name with a fixed text isn't going to work...

Okay to backport to 2.4?

Friedrich W. H. Kossebau committed changes in [calligra] libs/main/KoToolBoxLayout_p.h:

Fixes: broken calculation of toolbox layout

* last button with multiple sections on row was cut off at end (spacing ignored)
* separators could appear on the top side of the toolbox
* also makes 294601 disappear
(unsure why, could be due to too wide section widgets, let's just assume its gone for now)

REVIEW: 104432
BUG: 294601
FIXED-IN: 2.5 Alpha 2

Jarosław Staniek committed changes in [calligra] /:

Fix forms bug: Setting a text box as readonly allows changes to be made

*Properly updated context menu when read-only flag is set for line edits and text boxes

Matus Uzak committed changes in [calligra] filters/words/docx/DocxXmlDocumentReader.cpp:

docx: Added a workaround until text:display="none" support.

According to MSWord 2007:
- Ignoring text:span elements with text:display="none" in the TextStyle.
- Ignoring text:a elements containing only hidden text:span elements.
- Ignoring empty text:p elements with text:display="none" in text-properties
of the paragraph mark.

TODO: If the content of a list-item is hidden, then content of the first
NOT hidden paragraph replaces it. From the implementation point of view
that paragraph inherits list related properties.

Jarosław Staniek committed changes in [calligra] /:

Forms: Setting a text boxes to Read Only changes the look to dimmed

Setting a text box or text editor to Read Only mode changes the look to a bit dimmed (as in disabled widget) to indicate the mode

Thorsten Zachmann committed changes in [calligra/calligra/2.4] libs/kopageapp/KoPADocument.cpp:

Don't show pageX as nam of the page

in case pageX is used for saving remove that on loading. This name is used
on saving if e.g. no name for the page was set. This fixes the problem that
after save/load of a document all slides/pages are named pageX.

Reviewed by: boemann
(cherry picked from commit 4deb1cab33459e7353abb68ccb01dd0b56f4754c)

Thorsten Zachmann committed changes in [calligra] libs/kopageapp/KoPADocument.cpp:

Don't show pageX as nam of the page

in case pageX is used for saving remove that on loading. This name is used
on saving if e.g. no name for the page was set. This fixes the problem that
after save/load of a document all slides/pages are named pageX.

Please review so I can backport to 2.4

C. Boemann committed changes in [calligra] /:

Move insert pagebreak handling from Words to texttool
And also fix that view doesn't move when inserting text or pagebreak
that casuses the new position to be visible.

Allan Anderson committed changes in [kmymoney] kmymoney/plugins/csvimport/csvdialog.cpp:

- CSV Plugin causes KMM crash if header row/s have fewer columns
than body.

Fix row number sometimes incorrect in validity check message.


Harald Sitter committed changes in [phonon-vlc] /:

Stop applying the volume on play/resume

When PASupport is active it intercepts all AO calls and applies them to PA
directly, so changing the volume regardless of PA will lead to
unpredictable behavior as the volume value the backend AO knows about might
not be the actual volume value in the frontend/PA, so it essentially sets
a wrong volume on play/resume.

Instead it now sets the volume when a path is created between the AO and
the MO if and only if PASupport is not active. If PASupport is active it
does not set the volume at all.

Verification pending.

Harald Sitter committed changes in [phonon-gstreamer] gstreamer/mediaobject.cpp:

Fix QString crash from using null char*

A tag can *always* be empty, that applies to subtitles too.
Now if a subtitle language tag were empty it would crash QString.
Instead we check if it is null and if so simply say it is "Unknown".
Not the best of things, but if gstreamer fails to provide the language
code I do not see how we could possibly get a sensible name here.
I'd encourage checking back with the reporter of the bug this fixes
on whether other players (most notably VLC) display something specific
for the subtitles (I can totally imagine them having arbitrary names,
for which there surely is a way to access via GST).

Please verify this fixes the issue, as I fail to reproduce it.


Incidentally enough we no more compose "Subtitle n - [lang]" as name but
simply use the ISO lang code from GST for reasons of simplicity and
actually that is the expected value of the name as number etc. are
forced upon the world by the model we use for the public API.

FIXED-IN: 4.6.1

Networking Tools

Sebastian Sauer committed changes in /trunk/extragear/network/kmldonkey:

Fix two serious issues and release 2.1.3

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 1287106
Joris Guisson committed changes in [ktorrent] /:

Fix IP filter widget list not getting registered at startup


Rolf Eike Beer committed changes in [kgpg/KDE/4.8] /:

track object deletion while GnuPG transactions are running

The process may quit and cause the object to get deleted while we are e.g.
waiting for a password input. Check if the object is still alive before reading
the next input.

If we detect the process to go away also close the password dialog as it can't
do anything useful then anymore.



Development Tools

Sebastian Kügler committed changes in /trunk/quality/apidox/src/

Plasma QML apidox script works recursively now

This script now takes a base path, walks into it and generates a
flat list of html files, just like for the plasma components

The script should be run from kde-runtime/plasma/declarativeimports/ like so: -v "Plasma Quick master" \
-t /home/sebas/kdesvn/src/apidox/data \
-i /home/sebas/kdesvn/src/kde-runtime/plasma/declarativeimports/ \
-o out/

Sven Brauch committed changes in [kdev-python/newdebugger] /:

DUChain-supported local declaration list (fancy fancy!)

Urgent ToDo: Sort those declarations (locals first), it's horribe right now
because the list is way too long

Michael Pyne committed changes in [kdesrc-build] kdesrc-build:

Add check for "essential" programs before building.

If you (for whatever reason) don't have things like cmake installed before
trying to run a full build you'll just spend a lot of time to eventually figure
out that kdesrc-build wasn't able to build anything.

Now we can (optionally!) skip the build process entirely if "essential"
programs do not seem to be available before running the build. Each build
system type is able to determine which programs are considered essential.

Note that if 'qmake' is the only holdup then we don't complain if we seem to be
building Qt or if we're in pretend mode (since it's certainly possible to fool
build system detection when in pretend mode). If qmake is really missing the
user /should/ just find out when they run without --pretend (since then Qt
should show up amongst the build-modules' build systems).



Smit Mehta committed changes in [digikam] /imageproperties:

Adds "" support to the more info web service link in the geolocation tab.

Andrew Goodbody committed changes in [kipi-plugins] galleryexport/gallerywindow.cpp:

Pre-selection of files for Gallery exporter

Replace the call to open a file selection dialogue box to obtain the
list of files to upload with a call that simply returns the list of the
files that are currently selected in digikam. Also update the button
text to reflect the changed behaviour.

Albert Astals Cid committed changes in [okular] /:

Remember position on the page in bookmark

IOW accept more than one bookmark per page

REVIEW: 104365

Smit Mehta committed changes in [kipi-plugins] timeadjust/timeadjustdialog.cpp:

Added an option for modifying the filename.

KDE Base

Dominik Haumann committed changes in [kate] part/document/katedocument.cpp:

smarter auto-bracket feature

REVIEW: 104259

Michał Dutkiewicz committed changes in /trunk/playground/base/plasma/applets/miniplayer:

Update to 2.3:
- added track properties dialog;
- improved filtering (works for all visible columns);
- try to guess data from file name when there is no meta data;
- added column with track file name;
- more friendly way to store columns order and visibility;
- some other fixes.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 11 more) Revision 1287092
Sebastian Trueg committed changes in [nepomuk-core/feature/virtuosoInference] /storage:

Enable Virtuoso inference on all queries.

Thanks to Virtuoso's graph groups it is fairly simple to enable
inference on all queries.

However, we need to allow clients to disable inference as there are
many situations in which inference just makes for weird results (think
property listings in the UI).
This will be a bit harder as it might require changes in Soprano.

Martin Gräßlin committed changes in [kde-workspace] /scripting:

Global Shortcut support for KWin scripts and scripted Effects

A global method "registerShortcut" is exported to the scripts which
can be used to register a callback to be called when the global
shortcut is triggered.

The shared code between Scripts and Effects is moved into template
functions defined in a new file scriptingutils.h.

REVIEW: 104400

Diffs: 1, 2, 3, 4, 5 Revision b0274fd...
Richard Stockton committed changes in [kde-workspace/KDE/4.8] plasma/desktop/applets/kickoff/ui/launcher.cpp:

Kickoff: Use up/down keys to enter 'All Applications'

Allow KDE Users to switch into the 'Applications' content
area, by using up/down arrow keys. With this ability,
it becomes possible to use the Kickoff GUI with only a
keyboard (i.e., without a mouse).

, 296696
REVIEW: 104422

Martin Gräßlin committed changes in [kde-workspace] /effects:

Add Cursor key navigation to Flip- and Cover Switch Effects

FlipSwitch can be navigated with up and down keys as well
as left/right and CoverSwitch only with left and right
keys while Alt+Tab is used.

REVIEW: 104438

FIXED-IN: 4.9.0


Jonathan Marten committed changes in [kdepim] /:

A more compact 2-column layout for the address book.

This simply places the collections (address books) and
the items (names) panes one above each other instead of
side by side. There is a new "View" menu with options
for the viewing mode - the original 3-column layout, this,
or the original "Simple" layout - and also the barcode
option if this is configured.



Friedrich W. H. Kossebau committed changes in [calligra/calligra/2.4] /:

Changes: align toolbox behaviour for all Calligra programs

* toolbox can be resized to just show one line of buttons
* toolbox dock widget has title "Tools", but does not block resizing

REVIEW: 104426

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision e70fb14...
Boudewijn Rempt committed changes in [calligra] /:

Implement support for loading/saving layer locks in ora

Following spec proposed by Adrew Chadwick, see

Boudewijn Rempt committed changes in [calligra] /:

Create a textured painting option for Krita brushes

for the inspiration for this feature.

Things to consider:

* which other brush engines can make use of this option?
* what other options would be fun to implement?
* is the cutoff feature functionally similar to grain? It looks
a bit like it.

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


Matěj Laitl committed changes in [amarok] /:

Ability to move track position bookmarks, better AmarokUrl method name

* Ability to move track position bookmarks by dragging; patch by
Jasneet Bhatti. (BR 214721)

Big thanks to Jasneet for the patch and great cooperation on the review

REVIEW: 104307

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 8 more) Revision 55eb69b...
Sinny Kumari committed changes in [plasma-mediacenter] /:

showing list of media files added into playlist in right toolbar

Diffs: 1, 2, 3, 4, 5, 6 Revision 6d11283...

Networking Tools

Martin Klapetek committed changes in [ktp-text-ui] /:

Block/Unblock feature in ktp-text-ui module

REVIEW: 104407

Sebastian Sauer committed changes in /trunk/extragear/network/kmldonkey:

Various bugfixes, optimizations and new features.
Say hello to KMLDonkey 2.1.2 :)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 32 more) Revision 1286982
Andrea Diamantini committed changes in [rekonq] /:

Add passwords exceptions management widget

Diffs: 1, 2, 3, 4, 5 Revision 898cbf9...
Eike Hein committed changes in [konversation] /:

Add an option to restrict logging to private conversations.


Vishesh Handa committed changes in [notably] /person:

Cleanup the PersonManager main window

Remove the old buttons and strings, and implement merging of


Development Tools

Miquel Sabaté committed changes in [kdev-ruby] parser/parser.y:

Fixed memory leak on the block_call rule of the parser

KDE Base

Sebastian Trueg committed changes in [kde-runtime/nepomuk/virtuosoInference] /services/storage:

New resource visibility handling.

Until now the query api would use the nao:userVisible values stored for
each resource to determine if a resource should be returned.
This requires a lot of nao:userVisible value maintenance and makes for
slower queries.
The new solution is much simpler: only types have nao:userVisible values
and the query api simply checks if the result candidate has a type
which is visible.
In contrast to the old one the new solution does not allow to hide a
sub-class of a visible class. But since we never did that anyway and
the resulting queries are faster and it allows us to remove a lot
maintenance code (which eats CPU cycles and disk space) the change is
worth it.

Networking Tools

George Kiagiadakis committed changes in [ktp-call-ui] /:

CallContentHandler: Improve handling of sending states

* Use the start/stop-receiving signals from TfContent to inform
the user when media reception starts and stops.
* Change the remoteMember* signals to remoteSendingStateChanged()
to reflect better what they actually inform us about.
* Add a localSendingStateChanged() signal to inform the user
when local media starts/stops being sent to the other side.

Diffs: 1, 2, 3 Revision 72d23c9...

User Interface

Andrea Diamantini committed changes in [rekonq] /:

Privacy tab settings

Clean up (again) rekonq settings, adding "advanced" and "privacy"
sections and removing the "network" one, merged here and there with
the other ones

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


KDE Base

Dario Freddi committed changes in [kdelibs/frameworks] /:

Merge branch 'kauth-unit-tests' into frameworks

This branch makes KAuth ready for being part of frameworks, introducing unit tests
and all the needed requirements.

Also, several API changes (SIC/BIC) have been done for enhancing the framework and
making it future-proof.



Trever Fischer committed changes in /trunk/KDE/kdemultimedia/kscd:

Tweak kscd to build outside of kdemultimedia, and use the new kdemm lib exports

Trever Fischer committed changes in /trunk/KDE/kdemultimedia/juk:

Get juk to build outside of a kdemm checkout


Wolfgang Rohdewald committed changes in /trunk/KDE/kdegames/kajongg/src:

check earlier if we already have a connection to the wanted server

do this before logging in, not afterwards.
This and the following commits should make it easier to get rid of
the TODO in HumanClient.quit2. See,
sys.exit(0) worked for kajongg before that issue had been fixed.

Stefan Majewsky committed changes in /trunk/KDE/kdegames/kapman:

Port Kapman from Phonon to KgSound.

Patch by Roney Gomes (thanks!), plus some whitespace cleanup from me.