Issue 265

9th December 2012 by KDE Commit-Digest Team


Jürgen Appel
Aleix Pol
Marta Rybczynska
Martin Cigorraga

This Week...

KDevelop adds "Switch To Buddy" plugin. Digikam's batch queue manager makes better usage from multiple CPU cores. KIO listDir uses time-based entries batching. Calligra better supports the mobi format. PartitionManager performs resizing of FAT and HPFS filesystems with parted 3.1 or above. KMix gains better keyboard control. Work on the new KScreen Daemon.


Commits 1957 by 162 developers
Open Bugs 21091
Open Wishes 15801
Bugs Opened 355 in the last 7 days
Bugs Closed 404 in the last 7 days

Commit Summary

Module Commits
Files Developer Commits
Laurent Montel
Jan Kundrát
Sergio Luis Martins
Aleix Pol Gonzalez
Boudewijn Rempt
Sébastien Renard
Jekyll Wu
Aurélien Gâteau
Yuri Chornoivan
Torgny Nyblom

Internationalization (i18n) Status

Language Percentage Complete
Ukrainian (uk)
Swedish (sv)
Brazilian Portuguese (pt_BR)
Estonian (et)
Polish (pl)
Dutch (nl)
Spanish (es)
French (fr)
German (de)
Italian (it)

Bug Killers

Person Bugs Closed
Jekyll Wu
Christoph Feck
Myriam Schweingruber
Thomas Pfeiffer
Laurent Montel
Frank Reininghaus
Thomas Lübking
Ben Cooksley
Christian Esken
Kevin Funk

Commit Countries

Commit Demographics




  Bug Fixes Features Optimization Security Other



Development Tools

[] [] []   


[] [] []   []


[] []    

KDE Base

[] [] []   []


[] [] []   


[] [] []   




[]     []

Networking Tools

[] []    

User Interface



[] []    


[]   []   []


  []    []

There are 115 selections this week

Bug Fixes

Development Tools

Dimitar Dobrev committed changes in [assemblygen] src/MethodsGenerator.cs:

Fixed a serious bug: some parameters with default values were referenced together with them, this means that passing another value for such a parameter would have no effect whatsoever.

Signed-off-by: Dimitar Dobrev

Kevin Funk committed changes in [kdevplatform] /grepview:

Fix find/replace never stopping in some cases

In case capture lists in the pattern regexp are specfied, the
progressbar will never vanish again.

REVIEW: 107552

Kevin Funk committed changes in [kdevplatform] /grepview:

Do not crash in GrepOutputModel

In case there are no matches you can still trigger the replace.
=> Crash in GrepOutputmodel because it assumes the root item of the
model is still there.

* Disable the replace button in case there are no matches
* Do not crash in GrepoutModel in case the root item is invalid (call

REVIEW: 107548

Ivan Shapovalov committed changes in [kdevplatform] util/environmentgrouplist.cpp:

In the EnvironmentGroupList, implicitly take the group to be default if empty group name is passed.

Reason: at least the CMake support does not use the designated default group method
I guess that many other plugins don't do that either.


Sebastian Gottfried committed changes in [ktouch] src/qml/SelectionGrip.qml:

resource editor: fix resizing of keys when zoom factor unequal one

When applying the scaled coordinates of the resize grips to the actual
key items the values were only implicitely rounded. This resulted in
an off-by-one error in the code responsible for retaining the dimensions
of the key not affected by current grip. These errors accumulated
quickly to rather big values because the code is executed for each
drag event. This is fixed now through explicit rounding.

Andreas Cord-Landwehr committed changes in [rocs] /Interface:

Fix journal file data loss for new projects.

This change ensures that journal files for new created projects are
saved. The problem was located in the missing associated project
for the journal file.

Andreas Cord-Landwehr committed changes in [rocs] RocsCore/Modifiers/Topology.cpp:

Add workaround for crash with Min-Crossing-Edges.

The crash is probably within the Boost implementation of the
Fruchterman Reingold algorithm.

Alexander Rieder committed changes in [cantor] src/backends/sage/sageexpression.cpp:

fix latex output with Sage 5.4

in newer Sage versions the latex output is encapsulated diffrently. Adapt the
backend to those changes.


Aurélien Gâteau committed changes in [gwenview] app/mainwindow.cpp:

Fix slideshow not starting

Make sure we go in view mode when started with "-" and when "Start Slideshow"
is selected from menu.

KDE Base

Frank Reininghaus committed changes in [kde-baseapps] /src:

Correct value for autostart setting of Service-nepomukfileindexer, part2

After 530c743a89bb5366ff9b6f8be1d7a37f23b46880, this fixes the other
places where the incorrect default value 'false' was used.

Thanks to Luc Menut for noticing this problem!


Diffs: 1, 2, 3, 4 Revision fe4bb55...
Jekyll Wu committed changes in [kde-workspace] ksmserver/ksmserver_shortcuts.upd:

Put the removal of kscreenlocker group into its own section

That should guarantee the removal

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

Fix incorrect usage of list iterators

The problem was that we erased an iterator from the list and then
incremented it. This can lead to problems (namely, random crashes) if
the iterator pointed to the last list element.

Thanks to Sandro Mani for testing the patch!

FIXED-IN: 4.9.5

Laurent Montel committed changes in [kdelibs/KDE/4.10] /colors:

Fix Bug 309292 - Missing properties in KColorDialog, KColorCells,


FIXED-IN: 4.10

"adding to KColorPath: QColor color" already done

Laurent Montel committed changes in [kdelibs/KDE/4.10] kdeui/dialogs/kedittoolbar.cpp:

Fix Bug 287199 - Canceling doesn't reset the changes made in the dialog

(nor does reopening it)

Thanks David to help me. We must close xmldocument.

FIXED-IN: 4.10

Vishesh Handa committed changes in [nepomuk-core/KDE/4.10] services/storage/datamanagementmodel.cpp:

DMM: Auto-commit after each data manipulation statement

With the ResourceMerger rewrite we no longer push one statement at a
time. We now push them in one large statement. This has been shown to
cause transaction deadlocks in virtuoso. It is recommended to set
log_enable( 3 ) in order to auto commit after each data manipulation

Ideally we should have proper transaction support and each command in
the data management model should be a separate transaction. However,
this will have to do until we figure out how to do that.

REVIEW: 107637

Philipp Schmidt committed changes in [kio-mtp] kio_mtp_helpers.cpp:

Fix: Storages are commonly referred to by description

Remove check if storage identifier is present, they are usually
hard to identify. Most Android phones use description (e.g. phone,
card) to identify them anyway.

Marco Martin committed changes in [kdeplasma-addons/KDE/4.9] applets/microblog/microblog.cpp:

use the new url for Twitter API

twitter service works again
patch by Prasad Murthy

Burkhard Lück committed changes in [kde-workspace] khotkeys/data/konqueror_gestures_kde321.khotkeys:

Fix Konqueror home gesture command

Dawit Alemayehu committed changes in [kde-baseapps/KDE/4.9] konqueror/src/konqmainwindow.cpp:

Do not crash if the system configuration cache (syscoca) is corrupt and the user
launched to the preferences window.

FIXED-IN: 4.9.5
REVIEW: 107642

Albert Astals Cid committed changes in [kde-workspace] kmenuedit/treeview.cpp:

Fix buttons accessibility in KMenuEdit

FIXED-IN: 4.10.0

Shaheed Haque committed changes in [kate] kate/plugins/pate/src/kate/

Fix Python3 breakage of action catch-all handler.

If an action throws an exception, this catch-all handler is supposed to
print a nice dialog, and print it too. However, at present, PyKDE4 seems
broken in some way because the use of i18n() and many other APIs causes
whining like this:

Traceback (most recent call last):
File "/home/zaufi/kde-devel/share/apps/kate/plugins/pate/kate/", line 293, in __call__
return self.f()
File "/home/zaufi/kde-devel/share/apps/kate/pate/expand/", line 206, in expandAtCursor
expansions = loadExpansions(mime)
File "/home/zaufi/kde-devel/share/apps/kate/pate/expand/", line 147, in loadExpansions
for directory in kate.applicationDirectories('expand'):
File "/home/zaufi/kde-devel/share/apps/kate/plugins/pate/kate/", line 399, in applicationDirectories
return kdecore.KGlobal.dirs().findDirs('appdata', path)
TypeError: KStandardDirs.findDirs(): argument 1 has unexpected type 'str'

So, we want to fix that at least. Will follow up on the mailing list.

David Faure committed changes in [kdelibs/KDE/4.9] kparts/browserrun.cpp:

Fix crash when no service was selected (user clicked on "Open With...")

Vishesh Handa committed changes in [nepomuk-core] /filewatch:

FileWatch: Remove any existing dirIterator when removing the watches

When issuing a command to remove the watches, watches could be being
added at that point. In that case one should remove those iterators so
that watches are not added after it is unmounted. Also, the dirIterators
seem to prevent the medium from being unmounted.

Also make sure _k_addWatches is invoked if the dir iterater list is not
empty. There can be a case when there is only 1 dir iterator, and it
fails to add a watch. In that case _k_addWatches is not called again,
and that iterator is never removed. This happened to me for a
'lost+found' directory.

FIXED-IN: 4.10

Hugo Pereira Da Costa committed changes in [kde-baseapps/KDE/4.9] dolphin/src/main.cpp:

Added curly brackets around DolphinApplication creation and execution, to make sure it is deleted before "return 0;" is
called. This might prevent random crashes due to the de-allocation chain in Qt at exit.


Sergio Luis Martins committed changes in [kdepim] incidenceeditor-ng/incidencedatetime.cpp:

korg/editors: Fix alarms.

This is a better fix for bug 311097.
We can't really rely on isVisible() for anything serious since
on widget creation it's still false.

Laurent Montel committed changes in [kdepim] /:

Fix Bug 310852 - Use type-specific icons for "application/octet-stream"

FIXED-IN: 4.10

Frank Sebastian Roscher committed changes in [kdepim] korganizer/korgac/alarmdialog.cpp:

Save KOrganizer reminders when they are first added to the alarm dialog

Previously, the list of already-triggered reminders only got saved to
the config file when the user actively dismissed or suspended one of
them. With this and the previous patches, saving and loading of
reminders should work correctly now.

FIXED-IN: 4.10

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

Fix Bug 311158 - Attachment properties dialog doesn't understand

"filename" attribute
FIXED-IN: 4.10

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

Fix Bug 311024 - No tooltip on empty folders

Finally it's logical to show tooltip even if folder is empty
otherwise we must click on to know why there is not tooltip and show
that it's empty

FIXED-IN: 4.10

Allen Winter committed changes in [kdepim-runtime] resources/kabc/kabcresource.cpp:

Use a QPointer to wrap dialogs for improved crash protection.

Laurent Montel committed changes in [kdepim/KDE/4.9] mailcommon/filter/filteractionunsetstatus.cpp:

Fix crash when we "unset" unread status. Crash found by sergio

Laurent Montel committed changes in [kdepim] /filter:

Fix Bug 233524 - cannot add tags to emails through filters

It was never works. List was always empty

Don't call query each time that we apply a filter
FIXED-IN: 4.10

Sergio Luis Martins committed changes in [kdepim/KDE/4.9] incidenceeditor-ng/incidencedatetime.cpp:

eventeditors: Don't validate the end date for journals.

Journals don't have end date.

Laurent Montel committed changes in [kdepim-runtime] agents/nepomukfeeder/akonadi_nepomuk_feeder.notifyrc:

Fix Bug 311298 - akonadi_nepomuk_feeder.notifyrc doesn't contain the

"IconName=..." entry
FIXED-IN: 4.10


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

fix saving of textranges in KoTextWriter::Private::saveParagraph(...)

Usage of KoTextRangeManager::textRangesChangingWithin(...) and
KoTextRange::saveOdf(...) can be surely improved, but for now this fixes
a good range of known textrange saving bug.

REVIEW: 107601

thanks boemann for review

Diffs: 1, 2, 3, 4, 5, 6 Revision 2383fe6...
Boudewijn Rempt committed changes in [calligra] /plugins:


Christian Esken committed changes in [kmix] core/mixer.cpp:

Fix wrong DBus paths for the MixDevice instances

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

don't construct objects when gst init failed

what happend is that we continued constructing backend objects even when
gst init failed (supposedly that is only the case since the pipeline
refactor) which in turn lead to crashing as it would have required just
about every function to do validity checking before doing anything at all.
the good news is that libphonon already does that as part of its own
validity system. whenver the backend returns 0 on an object construction
request libphonon's corresponding frontend object will simply ignore all
calls thus allowing a scenario in which the backend cannot construct
any valid backend objects (such as when gst init fails).

consequently also remove pointless checks for the validity in the
AO, MO and devicemanager ctors. also the managers are now only constructed
if gst_init was successful.

ultimate result of this is that when gst_init failed or our plugin
requirements are not met (i.e. gst-base is not present) no object will
get constructed other than the Backend object itself.

Christian Esken committed changes in [kmix] /:

Fix memory leaks

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

Dynamic lock timeout is our friend.
Instead of simply waiting for a fixed amount of ms for the next source,
we wait for the most sensible amount of time. This is whatever amount
of time is remaining to play minus a 0.5 seconds safety delta (time
values not precise etc.).
A source for which we have no time or for which the remaining time is
< 0.5 seconds is immediately unlocked again. Otherwise the consumer has
as much time as gst gave us to set a new source.
This in particular prevents pointless excessive locking on sources which
have a totalTime < whatever fixed lock value we have (so that we'd lock
longer than what we are playing). An issue apparent with notification-like
sounds, that are rather short and do not need gapless transitioning.

FIXED-IN: 4.6.3

Christian Esken committed changes in [kmix] /:

Fix some more memory leaking.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 16e6d33...
Christian Esken committed changes in [kmix] gui/mdwslider.cpp:

Fix crash in the "feedback loop guard" for the case when there is no playback control on a Volume.

Christian Esken committed changes in [kmix] /:

Fix memory leaks, especially related to the MixDevice - DBusControlWrapper reference cycle.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 4 more) Revision 3be72f8...
Christian Esken committed changes in [kmix] /:

Fix resizing of the Sound Menu, after hotplug or application stream changes.
I still have not the faintest idea why the Widget refuses to resize itself,
so I now recreate the Sound Menu each time it pops up.

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

Networking Tools

Dan Vratil committed changes in [libkgapi/LibKGAPI/0.4] /:

Support custom IM protocols

For IM protocols that Google does not officially support (i.e.
they don't have scheme URL for them), we should not create our
own scheme, but just send the name of the protocol in 'protocol'
attribute of the gd:im element.

FIXED-IN: 0.4.4

Lamarque Souza committed changes in [networkmanagement] /internals/settings:

Correctly detect if 802-1x security setting is enabled or not.

Joris Guisson committed changes in [ktorrent] /:

Remove kio-magnet, nobody really uses it and it only causes confusion for people who only want to use magnet links with ktorrent

Pali Rohár committed changes in /trunk/KDE/kdenetwork/kopete/plugins/history/historylogger.cpp:

History plugin - Fixed saving and reading plain text messages


Andrius Štikonas committed changes in /trunk/extragear/sysadmin/partitionmanager/src:

Fix detection of memory cards.

Aleix Pol Gonzalez committed changes in [muon/muon-backends] /backends/ApplicationBackend:

Refactor QApt::Backend initialization in ApplicationBackend

Merged initBackend and setBackend. initBackend was the only user of
setBackend and having the API could have meant that it can be set, make
it explicit.

If the backend hasn't been initialized, don't initialize QAptActions yet,
wait until it has been initialized.
This fixes a crash when loading the muon-appsbackend with gui integration.

Friedrich Karl Tilman Pülz committed changes in [publictransport] /:

Fix runner freezes, make script jobs abortable

Create ProvidersDataSource object in data engine constructor,
to ensure it is always available, needed very often.
Initialize as 'dirty' to fill with provider data.
Also create the file system watcher in the constructor.

Implement ScriptJob::requestAbort(), like TimetableMate's
DebuggerJob::requestAbort(). Keep track of running jobs in
ServiceProviderScript, in the destructor abort all running jobs and
give them maximally one second to finish. The previous
ThreadWeaver::Weaver::instance()->finish() waited for all script jobs
from any provider also if there was no job running at all.
That could freeze krunner, when typing "too fast"

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


Albert Astals Cid committed changes in [ksirk/KDE/4.9] ksirk/kgamewin.cpp:

On new game hide widgets which are not supposed to be seen.

REVIEW: 107561
FIXED-IN: 4.9.5

Christoph Feck committed changes in [kdiamond/KDE/4.9] src/mainwindow.cpp:

Fix settings not saved on Quit

FIXED-IN: 4.9.5
REVIEW: 107586
(cherry picked from commit 29a4942d855ae768d1367f5f0df350cb7f6c368d)



Christian Esken committed changes in [kmix] /:

Allow opening context menu from keyboard in volume slider and enum.
This is the last part of the accesibility patch suit, that in whole belong in KDE 4.10.
REVIEW: 106585

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

Development Tools

Milian Wolff committed changes in [kdevplatform] /:

Add "Switch To Buddy" plugin.

This enables in the C++ language plugin to add a new context menu
action to switch to corresponding header or implementation file.

Changes made:
- A new function has been added to IBuddyDocumentFinder to allow
language plugins to implement logic to find buddy or related files.
- The new plugin "switch to buddy" implements a context menu extension
which is only trigged if at least one buddy can be found. To get
possible buddies IBuddyDocumentFinder is used using the editor's
current document's mime type.
- See plugin

This implements a feature known from many IDEs. Using the Buddy
interface and a separate plugin I think it's rather clean and generic.

REVIEW: 107310

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 8ea4529...
Olivier Jean de Gaalon committed changes in [kdevelop] /cpp:

Allow template parameters to have default arguments without having
Add cpp file test to test default argument behavior (in template and
function contexts).
Add some new cpp json tests to support (templateContext,

Olivier Jean de Gaalon committed changes in [kdevplatform] /:

Add some json tests, fix internalFunctionContext test, which was
actually testing the internalContext.

Diffs: 1, 2, 3 Revision 772f977...
Olivier Jean de Gaalon committed changes in [kdevelop] /cpp:

Add simple definition for __builtin_va_arg to allow the declaration
builder to get the correct types and create declarations.
Add tests.


Anders Lund committed changes in [marble/opencachingcom] /:

Background on icons, so that they can work in dark color schemes

The icons used in the plugin are dark brown with
transperant background, potentially making them [almost] invisible for
users with dark color schemes. By having a light background, this issue
is prevented. Color is taken from palette.

REVIEW: 107564

M +- -- src/plugins/render/opencachingcom/boat-required.png
M +- -- src/plugins/render/opencachingcom/chirp.png
M +- -- src/plugins/render/opencachingcom/diving.png
M +- -- src/plugins/render/opencachingcom/exclusive.png
M +- -- src/plugins/render/opencachingcom/historic-site.png
M +- -- src/plugins/render/opencachingcom/letterbox.png
M +- -- src/plugins/render/opencachingcom/multi-cache.png
M +- -- src/plugins/render/opencachingcom/night.png
M +- -- src/plugins/render/opencachingcom/puzzle.png
M +- -- src/plugins/render/opencachingcom/traditional.png
M +- -- src/plugins/render/opencachingcom/tree-climbing.png
M +- -- src/plugins/render/opencachingcom/unknown.png
M +- -- src/plugins/render/opencachingcom/uv-light.png
M +- -- src/plugins/render/opencachingcom/verifiable.png
M +- -- src/plugins/render/opencachingcom/virtual.png

Dennis Nienhüser committed changes in [marble/kitchen] /lib/geodata:

KML ScreenOverlay reader.

Note: Dummy empty line inserted in geodata/CMakeLists.txt to have
cmake pick up the new files. If you still get an undefined reference
for KmlScreenOverlayTagHandler or similar, please invoke cmake
manually to have the GLOB calls execute again.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 11 more) Revision 37a21a7...
Dennis Nienhüser committed changes in [marble/kitchen] src/lib/MarbleWidgetInputHandler.cpp:

don't set a cursor on Maemo 5

Widgets on Maemo 5 don't show a cursor by default. Marble should respect this because applications on the N900 usually don't show a cursor.

Anders Lund committed changes in [marble/kitchen] /plugins/render:

Details dialog: Add support for verifiable attributes, display tags as icons, small improvements

Improvements include text alignment, method to fill in the dialog to avoid
code duplication, and the hint is now displayed in a textbrowser according
to suggestion.
Added icons for tags.

Diffs: 1, 2, 3, 4, 5 Revision 87d8327...


Gilles Caulier committed changes in [digikam] /queuemanager:

Add support multicore CPU in Batch Queue Manager to process items from queues in parallel.
This will speed up items processing depending of cores available in your computer.
Detection of core suitable is done through KDE::Solid API.
Registration of items properties is not paralellized yet and still in main thread.
It can be a bottleneck in the workflow. This point must be analyzed later with core Database interface.

FIXED-IN: 3.0.0

KDE Base

Sebastian Kügler committed changes in [kdelibs/frameworks] /:

Make plasma and experimental build with Qt5

Also disable its build when we're not building for Qt5. In Plasma, it
doesn't really make sense to allow both builds, since the changes are
too intrusive to maintain two builds.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 83a1ead...
Valentin Rusu committed changes in [kdelibs/frameworks] /:

Moving KDialogQueue to kwidgets

At this stage, there's a circular reference between kwidgets and
kdeui because of the dependencies on kdeui/notifications and

Diffs: 1, 2, 3, 4 Revision 98af1a1...
Albert Astals Cid committed changes in [kde-runtime/KDE/4.9] khelpcenter/glossary.cpp:

Sort alphabetically

It's a bit sad that our alphabetical list was not sorted alphabetically

FIXED-IN: 4.9.5

Dan Vratil committed changes in [libkgapi/LibKGAPI/0.4] libkgapi/services/calendar.cpp:

Handle Microsoft TZIDs

Microsoft TZIDs which are not compatible with the Olson timezone
format which Google expects in dtStart and dtEnd timezones. We
use special mapping of X-MICROSOFT-CDO-TZID property to a real
Olson timezones to make Google happy. Unfortunatelly this means
that the original long MS timezone name is not preserved.

The conversion is run only in Objects::Event -> JSON serializer,
as Google always returns events with Olson timezone format.

FIXED-IN: 0.4.4

Valentin Rusu committed changes in [kdelibs/frameworks] /:

KMessageBox methods now splitted to kinterprocesswindowing and kde4support

The queued methods moved to kde4support framework
The WId methods moved to kinterprocesswindowing

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 395aeb3...
Mark Gaiser committed changes in [kdelibs/KDE/4.10] /:

KIO listDir entries batching

KIO was not batching. At most it did:
1 signal with the first 100 entries
1 signal with the remainder

Now it's doing time based batching.
It will emit 1 signal every 300ms with the results thus far or emits as soon as all entries are in if that is before 300ms. This can be many signals if you have massive folders or a slow data source. Usually it's only 1-3 signals on the local HDD or SSD.

REVIEW: 107520

Diffs: 1, 2, 3 Revision 23ba25b...
Valentin Rusu committed changes in [kdelibs/frameworks] kdeui/dialogs/kmessagebox.cpp:

Create non-WId methods standalone implementation

This is needed on the way to split WId methods to their tier4/kinterprocesswindowing
framework. Initially, the analoguos non-WId methods called WId methods to avoid
code duplication. Unfortunately, that duplication has now to be done in order to
untie non-WId methods from the WId ones.

More elegant solution could be imagined but that would require the introduction of
new classes/types and the is not wanted for the moment.

Vishesh Handa committed changes in [nepomuk-core] /:

Move the InvalidFileResourceCleaner to the NepomukCleaner

The InvalidFileResourceCleaner was a good job to have. However, running
it automatically on startup caused more problems than it solved. For the
cases when the removeable media handling didn't work, or when mounting
something that Solid did not recognize, it would delete those file
resources on restart (if the device wasn't mounted)

Additionally, it caused extra network usage when mounting a network file
system, by stating (QFile::exists) all the files that had metadata. This
would annoy a lot of users.

We now have it as a job in the nepomukcleaner, which can be run when the
user wants. Ideally one should also have a warning in place that it
might delete metadata for non-mounted media. But we are in string

Another reason this makes sense is cause the kioslaves now do not show
any resource which cannot be stated, so even if they are some file
resources which have an incorrect url, they will not be shown to the

Valentin Rusu committed changes in [kdelibs/frameworks] /:

KMessageBoxMessageHandler moved to kde4support

KMessageBoxMessageHandler depends on queued KMessageBox methods.
If it is to stay inside kdeui then a circular dependency would occur
as KMessageBox queued methods depend on original kdeui KMessageBox
and kdeui would need a reference to kde4support, closing the loop.

Diffs: 1, 2, 3 Revision a6c03ad...
Vishesh Handa committed changes in [nepomuk-core] /fileindexer:

IndexScheduler: Allow the user to configure the behaviour of the queues

One can now set a delay in between items of the queue, and one can
configure if one wants the file indexing queue to be paused during
normal execution.

In 4.9, the indexing queue used to have a large delay when indexing
normally. In 4.10, there are now 2 queues - basic and file. The file
indexing queue is, by default, suspended during normal execution. Added
an option to allow the user to change that.

In nepomukstrigirc -
BasicIQDelay = 0
FileIQDelay = 0
NormalMode_FileIndexing = "suspend" | "resume"

Diffs: 1, 2, 3, 4 Revision c5f4ea4...


Frank Sebastian Roscher committed changes in [kdepim] /korgac:

Fix saving and loading of suspended reminders in KOrganizer

We need to wait for all collections to be available when restoring
reminders at startup, or they won't get loaded properly. Additionally,
we must delete reminders one by one as they are dismissed instead of
just cleaning out the config file after each startup.

FIXED-IN: 4.10

REVIEW: 107546

Andre Heinecke committed changes in [kdepim/enterprise/e3] /:

Add new filter rule MatchingAll

Using Categories to mark contacts it has been a big request
from users that they should be able to filter the contacts
by a set of categories and not only by one category.


Diffs: 1, 2, 3 Revision 79969a0...
Allen Winter committed changes in [kdepim-runtime] /:

Give icons to the configuration windows

FIXED-IN: 4.10
-> Backport to the 4.9 branch if the Release Team decides to have 4.9.5
-> Markus: feel free to reopen if you find more instances

Andre Heinecke committed changes in [kdepim/enterprise/e4] /:

Make default OpenPGP file extension configurable

Make it configurealbe if OpenPGP encrypted
files created by Kleopatra should have the .pgp ending or
the .gpg ending. The current behavior stays as default. (.gpg)

This change was requested by instutional users who want to share
files with the same ending between PGP and GnuPG and use the
same file extension to mark those files.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 1438ec3...
Jan Kundrát committed changes in [trojita]

l10n: produce a proper .po file header so that contexts are preserved again

This will have to be picked up by the translators, otherwise the contexts will
be all wrong and nothing will translated actually.

I hate this stuff. I'm *so* tempted with just moving the message extraction off
the KDE's scripty and its old lconvert, replacing it with a wget downloading my
own version. But maybe, jyst maybe this last thing is enough to make this beast
work, finally.


Laurent Montel committed changes in [kdepim] composereditor-ng/pagecolorbackgrounddialog.cpp:

Now we can change image background

Jan Kundrát committed changes in [trojita] /Gui:

Make sure that deleting/adding/editting works reasonably

- Enable buttons only when it makes sense
- Edit the correct item
- Revert the addition when user rejects the dialog
- Fix deleting


Robby Stephenson committed changes in [tellico/2.3] /:

Allow setting a Google API key for book searches

It's unclear when Google will require an API key for all book
searches. Results seem to be currently available without a key, but
allow the user to specify one. Currently, the default Tellico key
has a daily limit of 1000 requests.

Diffs: 1, 2, 3, 4, 5, 6 Revision d4f3c4f...
Mojtaba Shahi committed changes in [calligra] /words/mobi:

These commite includes fixes and new supports on mobi format.
Fixes: Kindle can open mobi ebooks, read blocks text completely.
Supports: images, bookmarks, footnotes and endnotes.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision f6be12c...
C. Boemann committed changes in [calligra] /kotext:

Column and row styles should be implicitly shared otherwise it can cause problems
when loading a file where the same style is used in more than one row/column

>From now on it's important to set the style back after you have modified it.

We will have to look into how this should work with named styles, but for now
we don't even have ui to change named table styles.

Diffs: 1, 2, 3, 4 Revision 68f274e...
Dan Leinir Turthra Jensen committed changes in [calligra/krita-sketch-rempt] krita/sketch/qml/panels/filterconfigpages/pixelize.qml:

Add configuration page for the pixelize filter

Dmitry Kazakov committed changes in [calligra/vector_compositioning_kazakov] /:

Added the first version of per-architecture binaries for composition

+ we can have prebuild versions for all the architectures supported
by Vc (Amd XMA4 and XOP are not supported by Vc yet)
+ the implementation is chosen dynamically on Krita start
+ the semi-general code for multi-arch builds now in
KoVcMultiArchBuildSupport.h (might be ported upstream in the future)

- it depends on Vc's 'staging' branch, so it can't be put in master
right now
- the code became much less readable due to all that template magic
- I had to copy-paste Vc's 'vc_compile_for_all_implementations' cmake
macro, because we do not need 'Scalar' implementation
- the size of the pigment library grew almost 1.5 times: 11->17 MiB
(probably, we still need plugin system for this)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 7cf94c1...
Boudewijn Rempt committed changes in [calligra/krita-sketch-rempt] /sketch/qml:

add psd support to sketch

Networking Tools

Andrea Diamantini committed changes in [rekonq/first-half-rekonq2-to-master] /:

Restore tab position on reopening

Andrea Diamantini committed changes in [rekonq/first-half-rekonq2-to-master] /webtab:

"Save as..." context menu action entry for images

Martin Klapetek committed changes in [ktp-presence-applet] /:

Add plasma-themeability to the menu on the presence applet

The Presence applet will show a Plasma-themed icon now if
available. However, the context menu items for statuses are still
all Oxygen, so the user experience is inconsistent -- if the
user clicks on an icon for status, they won't get that icon
on the plasmoid. This patch will make it so that those menu items
are also Plasma-themed.

REVIEW: 107545

Lamarque Souza committed changes in [networkmanagement] /ui/security:

Add mechanism to validate EAP methods' settings. The first one implemented is
for TLS, which requires the identify field to be filled or it will crash the
edit dialog. Now the Ok button in edit dialog will be disabled if the identify
field is empty.

User Interface

Ivan Čukić committed changes in /trunk/KDE/kdeartwork/desktopthemes/slim-glow:

Icons in the theme are now based on Font Awesome

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


Morten Sjøgren committed changes in [kregexpeditor] /:

Make lexer/parser a part of the build process

Previously the files gen_qregexplexer.cpp, and
gen_qregexpparser.hh were commited to version control.

It make far more sense to generate them at compile-time just like the
the moc-files.

Diffs: 1, 2, 3, 4, 5 Revision 19919fa...
Andrius Štikonas committed changes in /trunk/extragear/sysadmin/partitionmanager:

Enable resizing of FAT and HPFS filesystems with parted >= 3.1.


Friedrich Karl Tilman Pülz committed changes in [synchrotron-sources] /:

Initial provider for PublicTransport provider plugins

Start with one provider plugin for testing purposes.
There are many GTFS feeds available, each needs a
provider plugin, too many to include them all with the
default installation.

Diffs: 1, 2, 3, 4 Revision eeb3179...


Development Tools

Milian Wolff committed changes in [kdevplatform/sharedurls] /:

Optimize QuickOpen for project files using new Path.

FilterWithSeparator is now a PathFilter and uses the curiously
recurring template pattern instead of virtual inheritance to get the
Path for an element.

Especially the filtering is now much better as we do not have to
split the string item representation, since we can directly operate
on the existing path segments.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 85c0399...


Dennis Nienhüser committed changes in [marble/kitchen] /plugins/render/atmosphere:

Cache the atmosphere (increases performance).

REVIEW: 107581

Andreas Cord-Landwehr committed changes in [rocs/next] /:

Removed code duplication and added features to ValueModifier

This commit uses templates to reduce code duplication in
ValueModifier. enumerate() now supports being given a base string that
it will append its numbers to. There is also a new method --
enumerateAlpha() -- which will take a string and use its lexiographic
incrementation instead of a number. enumerateAlpha also supports a
base string.

This patch was created by andromeda-galaxy within GCI 2012,
thanks a lot!

Diffs: 1, 2, 3, 4 Revision b2423e3...

KDE Base

Vishesh Handa committed changes in [kde-runtime] nepomuk/kioslaves/timeline/kio_timeline.cpp:

TimeLine: Avoid inferencing when checking for files in date range

By not using inferencing in the ask query we save about ~110ms per
query. This adds up a lot when listing days of a month: 31*110 = 3.4

We don't really need inferencing since all we care about is the

Vishesh Handa committed changes in [kde-runtime] nepomuk/kioslaves/common/timelinetools.cpp:

TimeLine: Optimize the timeline query

Avoid searching through all the possible dates. All we care about is
when the file was last modified (nie:lastModified), not the time its
contents were created or anything else.

This speeds up the query exponentially.

Vishesh Handa committed changes in [nepomuk-core] /:

ResourceWatcher: Do no create a new ResourceManager on quit

The ResourceManager contains a ResourceWatcher. This ResourceWatcher is
initialized only when a Resource class requires it. On destruction it
calls ResourceWatcher::stop, which tries to disconnect it from
ResourceManager::nepomukSystemStarted signal.

The problem arises when the application is exiting, and the
ResourceManager (being a child of QCoreApplication) is being destroyed.
It in turn destroys the ResourceWatcher, which calls
ResourceWatcher::stop, which calls ResourceManager::instance() which
results in the creation of a new ResourceManager whose parent is
QCoreApplication::instance, which is 0, cause the application is
shutting down.

This whole extra ResourceManager being allocated is not required and can
be avoided by checking if QCoreApplication != 0, in

Also, since ResourceManager::instance() can now return 0. I've added an
assert check in the Resource class.

REVIEW: 107573

Diffs: 1, 2, 3 Revision 5632983...
Jekyll Wu committed changes in [kde-runtime] phonon/kcm/backendselection.cpp:

Avoid opening the backend website multiple times

FIXED-IN: 4.10.0

Dan Vratil committed changes in [kdelibs/KDE/4.10] /solid:

Cache UDisks2 Device DBus connections

Cache the QDBusInterface connection for each UDI so that
it's not recreated every time Solid::Device is constructed.
This greatly reduces the number of DBus calls and makes
the UDisks2 backend much faster.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision be5ca0c...


Sergio Luis Martins committed changes in [kdepim] incidenceeditor-ng/incidencedatetime.cpp:

korg/incidenceeditors: Unclutter the date and time boxes.

No point in occupying 30% of the line edit with a clear button.

We don't need this KLineEdit functionality, our date and time
combos fill the line edit automatically if you're using a mouse

If you use keyboard only, you wouldn't grab your mouse to click
the clear button either.

Dan Vratil committed changes in [kdepim-runtime] /google/contacts:

Don't fetch contacts from server in retrieveItem()

Google Contacts resource does not use item parts, thus there no
point in fetching contact again in retrieveItem(). Just call
itemRetrieved() instead, because the Item already contains
full payload.

Sergio Luis Martins committed changes in [kdepim] /views/todoview:

korg/todoview: Performance optimization: Insert parents first.

We now sort by hierarchy depth first, then insert in increasing
order of depth.

This way we don't need any rows moved signals, which are expensive.


C. Boemann committed changes in [calligra] filters/words/epub/OdtHtmlConverter.cpp:

Change suffix from .xhtml to html as that is what people expect when exporting to html


Laszlo Papp committed changes in [kanagram] /desktop:

Avoid the confusion after revealing the world

Thank you to "Adam Davies" for his Google Code-in work!



Andreas Cord-Landwehr committed changes in [rocs] doc/index.docbook:

Documentation: Bump version.

The handbook is now up to date with the current master version of Rocs.
All interfaces and mechanisms included in the handbook are updated.

Note: before documentation freeze, some structure changes in the second
half of the handbook are planned.

KDE Base

Alex Fiestas committed changes in [kscreen/kded] /:

Base for the new KScreen Daemon

Diffs: 1, 2, 3, 4, 5 Revision 205b772...
Valentin Rusu committed changes in [kdelibs/frameworks] /dialogs:

KMessageBox is now a namespace

All of KMessageBox class members were static members.
As such, there's no point to put them into a class.
This move will allow us to split it's methods accross several
- kinterprocesswindowing will receive all WId methods
- kde4support will receive all queued methods


Harald Sitter committed changes in [dragon] /app:

make audioview look nice

layout is now simpler using a fixed size analyzer below tags. in addition
when switching to the audioview the window resizes to the minimum size
(maximum size of analyzer + chrome). this now gives a very nice
appearance and if the user chooses to resize the window the entire view is

- explicitly set fontsize via kglobalsettings
- stop adding the track number to the track label (looks silly)

Diffs: 1, 2, 3, 4 Revision bcd1b44...
Yuri Chornoivan committed changes in [amarok] doc/index.docbook:

Update docs to 2.7 (first pass)

M +- -- doc/Face-smile.png
M +- -- doc/Icon-action-dynamic-amarok.png
M +- -- doc/Icon-application-exit.png
M +- -- doc/Icon-bookmark-new-list.png
M +- -- doc/Icon-configure.png
M +- -- doc/Icon-dialog-information.png
M +- -- doc/Icon-document-export.png
M +- -- doc/Icon-document-import.png
M +- -- doc/Icon-document-new.png
M +- -- doc/Icon-document-properties.png
M +- -- doc/Icon-document-save.png
M +- -- doc/Icon-edit-clear-list.png
M +- -- doc/Icon-edit-clear-locationbar-rtl.png
M +- -- doc/Icon-edit-copy.png
M +- -- doc/Icon-edit-delete.png
M +- -- doc/Icon-emblem-favorite.png
M +- -- doc/Icon-emblem-mounted.png
M +- -- doc/Icon-flag-green.png
M +- -- doc/Icon-folder-new.png
M +- -- doc/Icon-folder-remote.png
M +- -- doc/Icon-go-down.png
M +- -- doc/Icon-go-home.png
M +- -- doc/Icon-go-next.png
M +- -- doc/Icon-go-previous.png
M +- -- doc/Icon-go-up.png
M +- -- doc/Icon-list-add.png
M +- -- doc/Icon-list-remove.png
M +- -- doc/Icon-media-playback-pause.png
M +- -- doc/Icon-media-playback-start.png
M +- -- doc/Icon-media-playback-stop.png
M +- -- doc/Icon-preferences-other.png
M +- -- doc/Icon-view-list-tree.png
M +- -- doc/Icon-view-refresh.png
M +- -- doc/action-collection-amarok48.png
M +- -- doc/advancedtok.png
D +- -- doc/album.png
M +- -- doc/albumbar.png
A +- -- doc/amarok-2-6-duplicates-during-collection-scan.png
M +- -- doc/amarok-apg-presets-toolbar.png
M +- -- doc/amarok-context.png
M +- -- doc/amarok-e17.png
M +- -- doc/amarok-fluxbox.png
M +- -- doc/amarok-gnome.png
M +- -- doc/amarok-lxde.png
M +- -- doc/amarok-mac-port-install.png
M +- -- doc/amarok-maintoolbar.png
M +- -- doc/amarok-managing-media.png
M +- -- doc/amarok-newdynamic-detail.png
M +- -- doc/amarok-newdynamic.png
D +- -- doc/amarok-renameplaylist.png
M +- -- doc/amarok-slimtoolbar.png
M +- -- doc/amarok-xfce.png
M +- -- doc/amarok2-4-1albumtageditdialog.png
M +- -- doc/amarok2-4-1albumtageditpertrackdialog.png
D +- -- doc/amarok2-4-1configplayback.png
D +- -- doc/amarok2-4-1configscripts.png
M +- -- doc/amarok2-4-1configspeakersetup.png
D +- -- doc/amarok2-4-1configuredialog.png
M +- -- doc/amarok2-4-1configuredialogcollection.png
D +- -- doc/amarok2-4-1configuredialogplugins.png
D +- -- doc/amarok2-4-1databaseconfig.png
M +- -- doc/amarok2-4-1editfilterdialog.png
M +- -- doc/amarok2-4-1filenamelayoutchooseroptions.png
M +- -- doc/amarok2-4-1mergedviewcollection.png
M +- -- doc/amarok2-4-1non-mergedviewcollection.png
D +- -- doc/amarok2-4-1notifications.png
D +- -- doc/amarok2-4-1phononbackends.png
D +- -- doc/amarok2-4-1phonondevices.png
D +- -- doc/amarok2-4-1saveplaylistchoices.png
M +- -- doc/amarok2-4-1tageditdialog.png
M +- -- doc/amarok2-4-1viewmenu.png
D +- -- doc/amarok2-4.png
M +- -- doc/amarok2-4collectionsortingmenu.png
D +- -- doc/amarok2-4helpmenu.png
M +- -- doc/amarok2-4musicbrainztagger.png
M +- -- doc/amarok2-4organizefilesadvanceddialog.png
M +- -- doc/amarok2-4organizefilesbasicdialog.png
M +- -- doc/amarok2-4queueeditor.png
M +- -- doc/amarok2-4searchplaylist.png
D +- -- doc/amarok2-4transcodetracksdialog.png
A +- -- doc/amarok2-6.png
A +- -- doc/amarok2-6appletbrowser.png
A +- -- doc/amarok2-6configgeneralmenu.png
A +- -- doc/amarok2-6flactranscodemenu.png
A +- -- doc/amarok2-6helpmenu.png
A +- -- doc/amarok2-6playlistalbumcontextmenu.png
A +- -- doc/amarok2-6pluginsconfigmenu.png
A +- -- doc/amarok2-6scriptsconfigmenu.png
A +- -- doc/amarok2-6trackcontextmenu.png
A +- -- doc/amarok2-6transcodemenu.png
A +- -- doc/amarok2-6viewconfigmenu.png
A +- -- doc/amarok2-6viewundocksymbols.png
A +- -- doc/amarok2-7addtoplaylist.png
A +- -- doc/amarok2-7aftersplash.png
A +- -- doc/amarok2-7configuredialogcollection.png
A +- -- doc/amarok2-7removefromplaylist.png
A +- -- doc/amarok2-7renamesavedplaylist.png
A +- -- doc/amarok2-7saveplaylistchoices.png
A +- -- doc/amarok2-7settingsdatabase.png
A +- -- doc/amarok2-7settingsgeneral.png
A +- -- doc/amarok2-7settingsnotifications.png
A +- -- doc/amarok2-7settingsplayback.png
A +- -- doc/amarok2-7settingsplugins.png
A +- -- doc/amarok2-7themediasources.png
A +- -- doc/amarok2-7theplaylist.png
A +- -- doc/amarok2-7thetoolbar.png
M +- -- doc/amarok24_configureshortcutdetail.png
M +- -- doc/amarok24_configureshortcutsdialog.png
M +- -- doc/amarok24_settingsmenu.png
M +- -- doc/amarok24_settingsmenu_withreplaygain.png
M +- -- doc/amarok2_moodbar.png
A +- -- doc/amarok_2-6_layout.png
M +- -- doc/amarok_add-on_installer.png
D +- -- doc/amarok_addtoplaylist.png
M +- -- doc/amarok_addtoplaylist1.png
M +- -- doc/amarok_amarokmenu2-4.png
M +- -- doc/amarok_ampache_client2.png
M +- -- doc/amarok_connecting_media_devices.png
M +- -- doc/amarok_cover_manager.png
M +- -- doc/amarok_cover_manager_newcover.png
M +- -- doc/amarok_dynamic_playlist.png
M +- -- doc/amarok_layout11.png
M +- -- doc/amarok_layout22.png
M +- -- doc/amarok_layout23.png
M +- -- doc/amarok_layout24.png
M +- -- doc/amarok_layout25.png
M +- -- doc/amarok_layout26.png
M +- -- doc/amarok_layout27.png
M +- -- doc/amarok_layout28.png
M +- -- doc/amarok_loading_media_devices.png
M +- -- doc/amarok_locale_selection.png
M +- -- doc/amarok_main_toolbar.png
M +- -- doc/amarok_media_devices.png
M +- -- doc/amarok_on_mac.png
M +- -- doc/amarok_playlist_layout_d_ss.png
M +- -- doc/amarok_playlist_layout_editor.png
M +- -- doc/amarok_playlist_layout_nog1_s.png
M +- -- doc/amarok_playlist_layout_nog2_s.png
M +- -- doc/amarok_playlist_layout_v1_s.png
M +- -- doc/amarok_playlist_manipulation.png
M +- -- doc/amarok_playlist_search_ex.png
D +- -- doc/amarok_removeformplaylist.png
M +- -- doc/amarok_saved_playlists.png
M +- -- doc/amarok_script_info.png
D +- -- doc/amarok_script_manager.png
M +- -- doc/amarok_show_only_matches.png
M +- -- doc/amarok_slim_toolbar.png
M +- -- doc/amarok_tracks_media_devices1.png
D +- -- doc/amarok_windowlayout.png
M +- -- doc/amarokbreadcrumb.png
M +- -- doc/amarokmediasources-files.png
M +- -- doc/amarokmediasources-home.png
A +- -- doc/amaroknepomukcollectionbrowser2-7.png
A +- -- doc/amaroknepomukpluginconfig2-7.png
M +- -- doc/amaroknew2-4.png
M +- -- doc/amarokrightmenu.png
M +- -- doc/amarokripcd.png
M +- -- doc/amaroksystray.png
M +- -- doc/amaroktoplevelmenus2-4.png
M +- -- doc/amarokwindow_context.png
D +- -- doc/amarokwindow_mediasources.png
D +- -- doc/amarokwindow_playlist.png
M +- -- doc/apgpresetsmatchallgroup.png
D +- -- doc/app.png
A +- -- doc/applet_explorer.png
M +- -- doc/applications-internet.png
A +- -- doc/backend.png
M +- -- doc/bookmarking_menu.png
M +- -- doc/cd_collection_sansa.png
A +- -- doc/collection2.png
D +- -- doc/context_menu.png
M +- -- doc/contextpane.png
M +- -- doc/contextpanestopped.png
M +- -- doc/controlamarok.png
A +- -- doc/desktop_search.png
M +- -- doc/document-save.png
D +- -- doc/dynamic_playlist.png
M +- -- doc/edit-redo.png
M +- -- doc/edit-undo.png
M +- -- doc/favor.png
M +- -- doc/firstruncollection2.png
M +- -- doc/folder-amarok.png
M +- -- doc/generatedlist.png
M +- -- doc/generatingtree.png
M +- -- doc/hi48-action-clear-playlist-amarok.png
M +- -- doc/hi48-action-edit-playlist-queue.png
M +- -- doc/hi48-action-media-standard-track-progression-amarok.png
M +- -- doc/hi48-action-music-amarok.png
M +- -- doc/hi48-action-podcast-amarok.png


Anne-Marie Mahfouf committed changes in [kanagram] src/engine/kanagram.knsrc:

Change Download provider to be

I added a Kanagram category to instead of using the
knewstuff old website which was not working


Pino Toscano committed changes in [libkgeomap] cmake/modules/FindKGeoMap.cmake:

FindKGeoMap: prefix result of pkg_search_module

otherwise stuff like KGEOMAP_LIBRARIES is already set, making the actual find_library for it just a no-op

actually, this module should just go in favour of a KGeoMapConfig.cmake file...