Issue 261

11th November 2012 by KDE Commit-Digest Team


Aleix Pol
Jürgen Appel
Marta Rybczynska

This Week...

KDevelop adds a document list context menu button to main tab bar. Marble improves GPX (GPS eXchange Format) handling. Digikam gets initial version of a noise reduction algorithm. KDE-Runtime suports ToolBox bindings for declarative containments. Nepomuk KCM allows filtering of files based on mimetype. Skrooge supports new templates for monthly reports. PartitionManager gains better support of btrfs.


Commits 2085 by 167 developers
Open Bugs 21056
Open Wishes 15761
Bugs Opened 326 in the last 7 days
Bugs Closed 466 in the last 7 days

Commit Summary

Module Commits
Files Developer Commits
Laurent Montel
Aaron J. Seigo
Roman Paholík
Aurélien Gâteau
Marco Martin
Pino Toscano
Burkhard Lück
Christoph Cullmann
Boudewijn Rempt
Sven Brauch

Internationalization (i18n) Status

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

Bug Killers

Person Bugs Closed
Jekyll Wu
Christoph Feck
Christoph Cullmann
Milian Wolff
Ben Cooksley
Laurent Montel
Christian Esken
Dawit Alemayehu
David Edmundson
Michael Zanetti

Commit Countries

Commit Demographics




  Bug Fixes Features Optimization Security Other



Development Tools

[] [] []   []


[] []    


[] []    

KDE Base

[] [] []   []


[] []    


[] []    




[] []    

Networking Tools

[] []    

User Interface



[] [] []   





There are 117 selections this week

Bug Fixes


Peter Grasch committed changes in [simon] /:

General bugfixing in the scenario management dialog

Schedule deletion of files instead of deleting them right away. This
cures the problem where the user would delete an active scenario, cancel
the dialog (not saving changes to the list of selected scenarios) which
left Simon in an undefined state.
Correctly track explosion of packed scenarios (compressed hierarchies
when importing Scenarios through ghns): Scenarios can now again be
deleted from within the GHNS dialog.
Scenario files are now also correctly named when importing through GHNS

Development Tools

Kevin Funk committed changes in [kdevplatform] plugins/projectmanagerview/projectmanagerviewplugin.cpp:

Do not crash when pasting content to projects view

KDevelop crashed when pasting content in case a file in the project tree
view was selected. This commit fixes this.

10 0x00007fb588c9dab4 in qt_assert (assertion=0x7fb562700528
"destItem->folder()", file=0x7fb5627005b0
line=679) at /home/krf/devel/src/qt/src/corelib/global/qglobal.cpp:2013
11 0x00007fb5626f1a7f in ProjectManagerViewPlugin::pasteFromContextMenu
(this=<optimized out>) at
12 0x00007fb5626f68d6 in ProjectManagerView::eventFilter
(this=0x7ee6620, obj=0x7ee3a90, event=<optimized out>) at
13 0x00007fb588de52d1 in
QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x916c10,
receiver=0x7ee3a90, event=0x7fff22889d00) at

REVIEW: 107233

Milian Wolff committed changes in [kdevplatform] /:

Add VcsJob::JobTy::Unknown and use it by default.

This is OK for e.g. the "git --version" job, as shown in
the valgrind report of the following bug:

BogDan Vatra committed changes in [ministro/unstable] Ministro/src/org/kde/necessitas/ministro/

Don't cancel the download if the users touces outside the dialog bounds

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

Fix git fetching so that it actually downloads.

My reading of the git-fetch manpage left me with the idea that adding
the '-t' (for --tag) option would additionally cause all tags to be
fetched from the given repository. The manpage doesn't actually say this
though, and git apparently instead downloads just the tags (and needed
objects), so this change has caused master branches around the
kdesrc-build world to stop updating. :(

The idea behind this had been to ensure that if the 'tag' option were
used in kdesrc-build that git would have the most up-to-date list of
tags available, but I guess we'll just have to go back to
crossing-our-fingers and hoping git already knows about the tag for now.

Milian Wolff committed changes in [kdevplatform] shell/runcontroller.cpp:

Don't use nested eventloop to prevent random crashes.

We now use the much more verbose KMessageBox::createKMessageBox
API with the NoExec option to show the job error. This won't use a
nested event loop and thus prevents random crashes.

Ralf Habacker committed changes in /trunk/KDE/kdesdk/umbrello/umbrello:


Sebastian Gottfried committed changes in [ktouch] /qml:

trainer: fix evaluation of accuracy value

Use rounded accuracy values to test whether the user has passed the
lesson. Otherwise he may be told he hasn't passed while seeing his
(rounded) achieved accuracy just met the required value.


Benni Hill committed changes in [gwenview/KDE/4.9] app/mainwindow.cpp:

This patch tries to fix two similar issues:

1. Make sure ThumbnailBarView is scrolled to the right item when
gwenview is started with an image as argument (Bugs 223852 and

2. Make sure ThumbnailView is scrolled to the right item when
switching from a folder to its parent. (Up till now this only
worked when the folder that you were leaving had a scrollbar.)

REVIEW: 107201

Mailson Menezes committed changes in [okular] /:

Fix issue where the tiles seemed to be deformed while rotating the page

Also, don't mark rotated pixmaps as dirty since we are already updating

KDE Base

Christoph Cullmann committed changes in [kate] kate/app/katemdi.cpp:

fix problem with artificial konsole resizing that kills the content of konsole window

Dawit Alemayehu committed changes in [kde-baseapps/KDE/4.9] /settings/kio:

Do not crash when global policy is changed and the Apply button is pressed.

FIXED-IN: 4.9.4

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

Prevent crashes caused by nested event loops run when renaming inline

When renaming inline and starting a drag or invoking the context menu,
a nested event loop will be run. If the role editor loses focus and
emits roleEditingFinished(), we must prevent that deleteLater() is
called because this would delete the role editor inside a nested event
loop which is run from one of its own functions. We would get a crash
when returning from that event loop otherwise.

FIXED-IN: 4.9.4

Frank Reininghaus committed changes in [kde-baseapps] dolphin/src/panels/places/placespanel.cpp:

Use the standard sizes from KIconLoader, rather than hardcoded sizes.

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

Fix Bug 217575 - Auto select pasted files doesn't select all files if some have been skipped

REVIEW: 107237
FIXED-IN: 4.9.4

Christoph Cullmann committed changes in [kate] /document:

fix regression: read only on save, cleanup the state machine in KateDocument
use now one enum, and not xxx stupid unrelated bools

Christoph Cullmann committed changes in [kate] /plugins:

let console eat shortcuts again
we can't senseful match against QKeySequences of the terminal plugin actions

Frank Reininghaus committed changes in [kde-baseapps/KDE/4.9] dolphin/src/panels/information/phononwidget.cpp:

Do not use a hardcoded size for the buttons in the Information panel

Thanks to Kai Uwe Broulok and Jekyll Wu for the investigation!

FIXED-IN: 4.9.4

Vishesh Handa committed changes in [kde-runtime] /kcm:

Nepomuk KCM: Remove Desktop Query Option

The DesktopQuery option was something that people never really
understood. Very few people can actually write this own queries. Plus,
configuring the default query seems like a super advanced configuration.

Diffs: 1, 2, 3 Revision 83583c0...
Kåre Särs committed changes in [kate] /view:

MiniMap: Fix drawing for huge documents + nicer slider
Fix top and bottom alignment issues when line add/sub widgets are hidden

Christoph Cullmann committed changes in [kate] part/script/data/commands/utils.js:

fix issue with duplicate line of first line in document

Emmanuel Pescosta committed changes in [kde-baseapps/KDE/4.9] dolphin/src/kitemviews/private/kitemlistroleeditor.cpp:

Fix Bug 309760 - Crash while inline-renaming a file and apply change with return-key

FIXED-IN: 4.9.4

David Faure committed changes in [kdelibs/KDE/4.9] threadweaver/Mainpage.dox:

Fix typos, remove mention of "signal emission pitfall".

Qt checks the emitter thread since Qt-4.2 (iirc), so this pitfall doesn't
exist anymore. If an object created in the main thread, emits a signal
in a secondary thread, with a slot in the main thread,
the signal emission will be queued.

Jekyll Wu committed changes in [kde-workspace/KDE/4.9] /autostart:

Make sure the right item is operated on when changing startup type

The problem was the "current" item was sometime not the one you would
have expected when changing the startup type of item A:

* it could be "none"
* it could be the previous "current" item

The fix is a little hacky, but better than none.

FIXED-IN: 4.9.4

Lukáš Tinkl committed changes in [kdelibs/KDE/4.10] /solid/backends/udisks2:

fix encrypted media handling

storing clear text path in a member variable is not possible (doesn't
exist in udisks2), instead we have to query for it when needed as it
might change from outside

also fix the icon and description

Diffs: 1, 2, 3 Revision 108568e...
Sebastian Kügler committed changes in [kde-workspace/plasma/sebas/desktop-qml] /desktop/toolboxes/declarativetoolbox/contents/ui:

new toolbox dismissing logic, toolbox follows button

Using a MouseEventListener causes problems passing the pressed event to
the underlying QML views, as our mouseventlistener accepts events but
passed them on to its children, so they still don't arrive at siblings.
So we use a MouseArea, blocking clicks from the Containment while the
toolbox is open, and making the mousearea invisible when the toolbox is

This commit also contains the logic for placing the toolbox close to the
button. A nice example why I love QML, it can be done cleanly in one
place, with a little bit of very easy javascript. Yay. :)

Aleix Pol Gonzalez committed changes in [kdeplasma-addons] wallpapers/qmlwallpapers/wallpapersqml.cpp:

Make sure m_packageName is always in sync with what we're showing

Otherwise the settings were not stored correctly and it worked with the
wallpaperviewere but if failed when using the actual plasma implementation

Christoph Cullmann committed changes in [kate] part/swapfile/kateswapfile.cpp:

fix that disable swap file syncing caused no swap files at all
thanks for reporting this, stupid mistake

Christoph Cullmann committed changes in [kate] /snippet:

some fixes for template interface usage in snippets

still %{selection} inserts one space too much, but at least doesn't eat text :/

Marco Martin committed changes in [kdelibs/frameworks] /:

remove geometry functions from Applet

size, size hints, transform and zValue

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


Laurent Montel committed changes in [kdepim/KDE/4.9] /:

Fix a very old bug (Don't remember bug number): When we change

appearence, messagelist menu is empty.
Now regenerate it

Diffs: 1, 2, 3, 4 Revision 2a0533b...
Andre Heinecke committed changes in [kdepim/enterprise/e3] korganizer/kogroupware.cpp:

Do not send out ITip Cancel message on delete

When an Incidence gets deleted the incidencechanger checks
if a reply should be sent to the organizer and sends it.
The Cancel message that was sent by sendGroupwareMessage
was a false information before in the case that one had
accepted an invitation and later deleted that event.

MERGE: Master ?


Laurent Montel committed changes in [kdepim/KDE/4.9] messagelist/core/view.cpp:

Fix Bug 309871 - Kmail shows html formatted from plain text in preview


FIXED-IN: 4.9.4

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

Fix Bug 199764 - Kjots : undo, redo missing under edit menubar

Add more standard action
FIXED-IN: 4.10

Laurent Montel committed changes in [kdepimlibs/KDE/4.9] kpimtextedit/textedit.cpp:

Fix reply to html + image (when image has specific size)


Dag Andersen committed changes in [calligra] /main:

Fix: Autosave only triggered on first change.

REVIEW: 107206

C. Boemann committed changes in [calligra/calligra/2.6] /:

Fix crash on inserting what amounts to a new page (either enough text or page break)

Boudewijn Rempt committed changes in [calligra/krita-sketch-rempt] /main:

Fix filter selection dialog

Of course, when this dialog pops up, it's too late anyway, but that's
no reason to let it be buggy: it used a stringlist and a listwidget.
The list widget's contents got sorted, changing the order. Then the current
item's index was used to index the stringlist, which meant we would return
the wrong mimetype. Store the mimetype as user data in the listwidgetitem

Boudewijn Rempt committed changes in [calligra/krita-psd_export-rempt] /:

Distinguish between different filter errors

CreationError was used in four cases:

* couldn't create the filter plugin
* couldn't create the output document
* couldn't cast KoDocument to KisDoc2
* couldn't download the remote file

So to avoid confusion, distinguish between these cases, and even more,
distinguish between the case when the filter entry is inexplicably null
and the case the filter plugin couldn't be instantiated.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 17 more) Revision aba7085...
Friedrich W. H. Kossebau committed changes in [calligra/calligra/2.6] libs/main/KoDocument.cpp:

Do not write a manifest entry for the "Thumbnails" directory

By § 4.3 of ODF 1.2 Part 3:
"For directories, the manifest file should contain a <manifest:file-entry> element only if a
directory contains a document or a sub document. See 3.1. A directory for administrative or
convenience purposes, such as a directory that contains various unrelated image files, should not
have an entry in the manifest file."

Roundtrip tested with LO 3,5 and Calligra Words

Boudewijn Rempt committed changes in [calligra] krita/ui/

Fix loading a pdf as new layer

Should also fix other import plugins that actually give back progress
info. The problem is that the import catcher didn't set the progress
proxy, and did use the wrong call to load the file into the document.

C. Boemann committed changes in [calligra/calligra/2.6] /kotext:

Make sure we always get a valid pointer to the auxillary frame.
Fixes crashes

Dmitry Kazakov committed changes in [calligra/krita-new-move-tool-kazakov] /flake:

Fixed deactivation of the tools when input device is switched

There are lots of things that have to be done when we switch
current canvasData object. That is why I moved all these actions into
switchCanvasData object. The old tool first becomes disconnected from
the tool manager, then the canvasData is switched and a new tool is

This patch fixes several bugs when the tools was not deactivated
properly when the input device was switched, so their hotkeys were
kept activated. More than that, this fix is needed to be able to
fix bug 298584 properly.


Soren Harward committed changes in [amarok] /:

Networking Tools

Daniele E. Domenichelli committed changes in [ktp-text-ui/kde-telepathy-0.5] /:

Fix the logviewer showing twice "Previous conversation" and "Next conversation"

Reviewed-by: David Edmundson
Reviewed-by: Dan Vrátil
REVIEW: 107269

FIXED-IN: 0.5.2

David Faure committed changes in [konversation] src/application.cpp:

Fix handling of links to URLs containing non-embeddable-in-konqueror content.

Example: http link to a .ods file, should launch libreoffice/calligra directly,
rather than launch konqueror which will then use arkpart to show it embedded.
See documentation of invokeBrowser: it's only for known-to-be-HTML links.

Dan Vratil committed changes in [ktp-common-internals] /:

Kopete logs importer implementation

KTp::LogsImporter can import AIM, MSN, ICQ, Yahoo, Jabber and
GaduGadu logs from Kopete

REVIEW: 107243

Diffs: 1, 2, 3, 4, 5 Revision b6e0f2a...
Dan Vratil committed changes in [ktp-text-ui] /:

Navigation through history of sent messages in message editor

This implements navigation through history of sent messages
by pressing Up and Down arrow keys like in Konversation.

REVIEW: 106245

FIXED-IN: 0.6.0

Mehrdad Momeny committed changes in [choqok] helperlibs/twitterapihelper/twitterapimicroblog.cpp:

fixed, retweets should show original time

Eike Hein committed changes in [konversation] /viewer:

Work around KTextEdit bug.

KTextEdit creates a new Sonnet::Highlighter on every FocusInEvent
and then forgets to re-apply the previous set spell checking lan-
guage, so let's "take over" highlighter creation by implementing
the virtual and follow it up by reapplying the language setting


Michael Zanetti committed changes in [kremotecontrol] /:

Correctly disable buttons in case a remote control is not available.
Make it more obvious when a remote is not available.

Fixes some crash reports when people tried to edit a non existent remote:

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

Fix crashes because of indexes from wrong model

- GUI events send QModelIndex's from the model of the widget,
which is now a proxy model for filtering
- Map that index to the ProjectModel
- Add a Q_ASSERT to check that the model of indexes is the
ProjectModel in projectItemFromIndex()

Friedrich Karl Tilman Pülz committed changes in [publictransport] engine/timetablemate/src/projectmodel.cpp:

Fix ProjectModel child item insert count

- The script item only gets inserted for ScriptedProviders,
but was always included in the number of children to insert
- The number of function nodes inserted into the main script
was wrongly calculated, including all code nodes,
not only functions

Andrius Štikonas committed changes in /trunk/extragear/sysadmin/partitionmanager/src/fs/btrfs.cpp:

Fix reporting of "Used" space in Btrfs partitions.
There are two numbers found by grepping for "bytes used".
It seems that the first one is more important, e.g. we cannot
resize partitions to a smaller size than this number.


Parker Coates committed changes in [kpat/KDE/4.9] idiot.cpp:

Fix bug incorrectly allowing cards to be added to the foundation.

A while back I simplified the add/remove checks in Aces Up, but in
this particular case I did an over-simplification. Before allowing
cards to be dropped on the foundation, we need to first be sure that
they can legally be removed from the tableau.



Development Tools

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

Documentation files for PyKDE and the missing PyQt modules.

This probably needs a bit more work, especially support for
class c(): class d(): pass
a = c.d()

Milian Wolff committed changes in [kdevplatform] /:

Add a document list context menu button right to main tab bar.

Thanks to André Stein for the initial patch!

Original message:

This request adds a little button to the right of the tab bar.
It activates a context menu which shows (in sorted order) all
currently open documents and opens the selected document upon click.
This is a feature I miss from Visual Studio. I do know that it's
redundant to the Documents view panel but I think it allows a quicker
access to files - especially when a lot files are open in the
IDE. As it is very small button I think it does no harm to users
who don't want to use it.


- added an icon to the tool button, otherwise it just looked odd
- simplified the code (no STL e.g.)

Open issues:

- push this code somehow into shell or similar, to be able to share
code with the document switcher plugin. Esp. we want to access the
project model to get nice, short paths and icons.

- add the document status icon, but that needs to be updated when the
document is changed

REVIEW: 107170

Diffs: 1, 2, 3, 4 Revision 386b871...
Sven Brauch committed changes in [kdev-python/1.4] /:

Correctly build uses for declarations in some corner cases

If the context opened by a node begins after that node does, which is
for example the case for class declarations, then stuff that was being
parsed between the node start and the start of the context was
considered to be in the wrong context. Fixes 309817.


Albert Astals Cid committed changes in [pairs] /:

Make xmlgui usage bette

Acked by Aleix and Marco
REVIEW: 107134

Sebastian Gottfried committed changes in [ktouch] /:

allow to set required accuracy with one more digit precision

Now one can set fractional percent values for the required accuracy
to unlock the next lesson. Sine the difference between 97% and 98%
accuracy actually means one may make only two thirds of the errors
to pass a more fine granual setting is really helpful.


Riccardo Bellini committed changes in [bookmanager/iconbuilder] /:

Modified buildIcons structure

Now the IconBuilder worker thread takes in input a list of books
and emits a signal for each fetched and cached preview.
PreviewRole of the item is updated to store the key of the image
in the cache.
TODO: logic still incomplete, need of a rework in tree model's data

Diffs: 1, 2, 3, 4, 5, 6 Revision 00db532...
Anders Lund committed changes in [marble] /:

Improved GPX handling - read/display only
* Add support for cmt, desc and link/url+urlname GPX tags, displayed in the placemark
* Add support for type GPX tag, put in placemark role property
* Simplified route display

REVIEW: 103672

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 12 more) Revision 0a467d8...
Sebastian Gottfried committed changes in [ktouch] /qml:

training screen: align keyboard with training widget

But only when the keyboard occupies less then 50% of the available area
that way. The aspect ration of the keyboard is fixed so for some window
sizes a properly aligned keyboard would result in an almost completely
obscured training widget.

Diffs: 1, 2, 3 Revision 3429c1a...
Dennis Nienhüser committed changes in [marble] /:

New dgml tag <vectortile>, with its parser and new GeoScenes

For GSoC 2012 vector tile rendering, a new tag <vectortile> has been
created for the dgml format and the handler for it in the dgml parser.
In te begining it was thought to call it <vectorTile> as some composed
words tags have also camel casing. But through the code this tile is
compared with the backend=vectortile .tolower() tag and it didn't match
vectortile != vectorTile. So for consistency the tag will be

Now that there are two possible tiled layers (Image tile layers with
<texture> tag and Vector tile layers with <vectortile> tag)
GeoSceneTexture has been turned to GeoSceneTextureTile which extends a
GeoSceneTiled abstract class. Also a GeoSceneVectorTile class has been

GeoSceneTiled stores all the common data for layers containing tiles
and then GeoSceneTextureTile and GeoSceneVectorTile can manage specific
data related to them. Currently booth have the same dgml structure so
this two classes have no specific attribute but they are needed
afterwards for MarbleMap to know if its a VectorTile or a ImageTile

REVIEW: 106009

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


Gilles Caulier committed changes in [digikam] /:

New wavelets noise reduction estimation algorithm from Sayantan Datta using OpenCV library, to compute automatically NR settings.
For more details, see this wiki page :

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision c5ab453...
Gilles Caulier committed changes in [digikam] /:

Implement estimate noise GUI handling in editor and BQM Noise Reduction tools
TODO : In Image editor, run Estimate Noise algorithm through DynamicThread class and report progress to status-bar

Diffs: 1, 2, 3, 4, 5 Revision dc42b72...
Gilles Caulier committed changes in [digikam] /:

first version of NREstimate multithreaded using DynamicThread.
TODO : progress management in editor and cancelization

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

KDE Base

Christoph Cullmann committed changes in [kate] part/syntax/katehighlight.cpp:

allow fall-through for initial context if user really wants it ;)

Marco Martin committed changes in [plasma-mobile/mart/metadataModelQuerySep] /metadatamodel:

enable the timeline provider in the plugin

Jörg Ehrichs committed changes in [nepomuk-metadata-extractor] /:

Allow to disable certain resource types in the background service fetcher

Now one can decide to disable document or music or video fetching in the
automatic service.

This allows to have the fetcher only enabled for videos while no private
data in any docuemnt might be exposed to the internet.

Diffs: 1, 2, 3, 4, 5 Revision 09903e2...
Aaron J. Seigo committed changes in [kdelibs/frameworks] /:

KSystemTrayIcon joins the world of deprecated classes

setMovie is added ot KStatusNotifierLegacyIcon as that was the only
API from KSystemTrayIcon being used.

so from now on, applications should use KStatusNotifierItem or if that
is just too modern and fancy for their old skool ass, then use
QSystemTrayIcon directly

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 75a77b8...
Alex Turbov committed changes in [kate] /syntax/data:

use cstyle indenter for C++11 and C++11/Qt4

Yuen Hoe Lim committed changes in [nepomuk-metadata-extractor] /:

Show failed-to-load plugins in plugins kcm config page and make their error messages accessible
Display available Kross interpreter in KCM plugins page

REVIEW: 107280

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision b8b6271...
Dominik Haumann committed changes in [kate] /swapfile:

port swap file notification to message interface

this is awesome ;)

Cedric Bellegarde committed changes in [kde-workspace] /:

GUI: Kwin appmenu support:
- Add support for application menu button in Kwin
- Add kded appmenu configuration in kcm_style

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 16 more) Revision 1bb5e4f...
Simeon Bird committed changes in [nepomuk-core] /filewatch:

Remove m_recentlyFinishedRequests from the metadatamover.
The filewatch service calls moveFileMetadata ( oldPath, newPath).

This sticks the metadata move into a queue, like so:
if ( !m_updateQueue.contains( req ) &&
!m_recentlyFinishedRequests.contains( req ) )
m_updateQueue.enqueue( req );

If you move oldPath to newPath twice in fairly quick succession, the
first move will still be in the m_recentlyFinishedRequests, and the metadata move will
not be queued.

git blame tells me that trueg added this check with commit 840dbb6005ead
in 2009, to prevent events received twice from being acted on twice.
However, it means that if an event is repeated quickly, the repeat
will not be acted on, even if it should.
(eg, move A -> B -> A -> B in quick succession)

Nowadays we just use inotifty, which, so far as I know,
cannot deliver the same event twice. and so
we can just remove the list entirely.

In other words: bug 286854 is due to a rogue, no longer needed, workaround.

FIXED-IN: 4.10
REVIEW: 107260

Vishesh Handa committed changes in [kde-runtime] nepomuk/kioslaves/tags/tags.protocol:

Tags kioslave: Disable copy from file

Disabling copies for now since allowing copies means allowing move
operations. Moving is implemented in kio as copy + delete. When moving
files from file:/ to tags:/ the tags copy operation (this function) is
called, and then the file:/ delete opteration is called, therby deleting
the file.

This needs to be fixed in kio, to not allow moving or automatically
convert a move to a copy operation.

Since we do not want the user to ever loose their files, we're disabling
copy operations

Sebastian Kügler committed changes in [kde-runtime] /scriptengines/javascript:

ToolBox bindings for declarative containments

This adds the necessary bits, actions handling, showing / hiding of
toolbox and a hooks for config interface and add widgets.

The interesting bits:

Toolbox separate on the scene

For declarative containments, we add a declarativewidget on top of the
view which loads the "org.kde.toolbox" package. The toolbox can differ
per platform, layout of toolbox and containment can not "leak" into each

ToolBox import

The most important and interesting bit is the list of actions the
ToolBox exposes, it's collected from corona, containment. The latter is
actually problematic, since we don't get access to the actions
internally provided by Containment
Containment::setToolBox(AbstractToolBox) being protected, we cannot
register our declarative ToolBoxProxy implementation to the containment,
so we have to wire up settings and addwidgets separately. Sorting of the
actions is "random", and expected to be done by the QML toolbox
implementation, based on objectName strings.


Diffs: 1, 2, 3, 4, 5 Revision 3f5d744...
Vishesh Handa committed changes in [kde-runtime] /kcm:

Nepomuk KCM: Allow filtering of files based on mimetype

Added 5 simple options for filtering based on mimetype - Audio, Video,
Images, Documents and Source Code. By default source code is not

There is also an advanced option which allows the user to enter their
own custom mimetypes which they want excluded.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 438f664...
Aurélien Gâteau committed changes in [homerun] /:

Merge branch 'kconfig-for-sources2'

This merge breaks libhomerun ABI!

It makes it simpler to handle configuration for sources, by exposing a
KConfigGroup for them. It also much better handle runners which are not enabled
by default, which is actually the original reason this branch was created.

Christoph Cullmann committed changes in [kate] /:

remove load-save-filters
they are not document and they really have never taken off, we have on plugin for python encoding that nobody knows
interface: remove for KDE5
dh + cullmann acked

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 4efbc1a...
Aaron J. Seigo committed changes in [kde-runtime] /declarativeimports/core:

ensure margins update in all cases

setElementPrefix does not trigger repaintNeeded() from the svg object;
repaintNeeded() is for internal changes. if you change the svg from your
own application code, the app code needs to react to those changes in its
own time and way.

so margins was never seeing that it was getting changed when setElementPrefix
was called -> pixel imperfections in layouts.

Aurélien Gâteau committed changes in [homerun] /:

Ship a copy of ScrollArea

ScrollArea does not exist in kde-runtime 4.8, so we have to ship our own
copy of it.

Sebastian Kügler committed changes in [kde-runtime] /scriptengines/javascript/declarative:

Second part of declarative toolbox bindings

This one adds the ToolBoxProxy class, belongs to



Dan Vratil committed changes in [kdepim] /:

Provide a visual feedback when removing duplicate emails

REVIEW: 107220

Diffs: 1, 2, 3 Revision 00e8073...
Allen Winter committed changes in [kdepim/pimprint] /:

beginnings of a new printkalendar command line tool.

Diffs: 1, 2, 3, 4 Revision dce42a7...
Laurent Montel committed changes in [kdepim/KDE/4.9] /:

Allow to send message when we try to sign an attachment and we can't do

it. Before it failed directly.
(Time to start to fix encrypt/sign feature in kmail)

Martin Klapetek committed changes in [kdepimlibs] /socialutils:

Cache KDateTime in SocialFeedItem

SocialFeedItem::postTime() is accessed directly from the model
and it's called a lot, putting the plasmoid through callgrind
shows that creating the KDateTime everyone it's called is quite
expensive, so now it's created just once and the existing
KDateTime is returned.

I also removed the setters for postTimeString and postTimeFormat
and left only one setter for setting them both at once, creating
the KDateTime in that method as it needs both the format and string.

Reviewed-by: Kevin Krammer
REVIEW: 107113

Diffs: 1, 2, 3 Revision 50d1767...


Stephane Mankowski committed changes in [skrooge/Feature] /:

feature: 2 new templates for monthly report are delivered by default

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 1e4475e...
Dmitry Kazakov committed changes in [calligra/krita-new-move-tool-kazakov] /:

Made the move tool iterational

Now the tool does not create new layers and does not create
numerous undo commands. It works in an iterational way: you move
the node (or selection) as many times as you wish. After the moving
done and you switch the tool (or apply any other action) the move
stroke will be finished and added to your undo history.

Please test it in 'krita-new-move-tool-kazakov' branch.

Sven Langkamp committed changes in [calligra] plugins/textshape/dialogs/SimpleParagraphWidget.ui:

move all buttons in the paragraph widget to the same row

C. Boemann committed changes in [calligra] libs/kotext/styles/KoTableCellStyle.cpp:

Use KoBorder to load the borders.

This gains us support of loading double borders. And since ms type borders
was ported to KoBorder in previous commit we retain loading and gain saving for that as well.

Drawback is that we now loose loading parentstyle borders. In the long run this is
correct as tablecellstyle should have inheritance like para and char styles, but for
now we have lost it. Good news is that I've never seen any odf file that uses this in

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

- Add capability to copy an investment activity type or detail/description to memo field.

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

Made the move tool iterational

Now the tool does not create new layers and does not create
numerous undo commands. It works in an iterational way: you move
the node (or selection) as many times as you wish. After the moving
done and you switch the tool (or apply any other action) the move
stroke will be finished and added to your undo history.

Please test it in 'krita-new-move-tool-kazakov' branch.

Sven Langkamp committed changes in [calligra] /textshape/dialogs:

use flat buttons in the textshape docker


Sven Langkamp committed changes in [calligra] krita/plugins/tools/tool_text/

keep aspect ration when inserting artistic text with the text tool


Jean-Baptiste Mardelle committed changes in [kdenlive] /:

Improve update of effect stack when resizing clip, start implementing merge of analysis data

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 13 more) Revision b6a63f5...
Shantanu Tushar Jha committed changes in [plasma-mediacenter] shells/newshell/package/contents/ui/mediacenter.qml:

Hide the imageviewer when the user explicitly shows the video

Aaron J. Seigo committed changes in [plasma-mediacenter] components/mediawelcome/CategoriesModel.qml:

add Settings category; default index is a property (encapsulation!); better icons

even did some user testing wth them. *gasp*

Shantanu Tushar Jha committed changes in [plasma-mediacenter] /:

Busy indicator for backends

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 044aa49...
Aaron J. Seigo committed changes in [plasma-mediacenter] /mediacenter:

don't load all plugins on startup and sort the entries aphabetically.

the startup time difference is significant

Networking Tools

Eike Hein committed changes in [konversation] /:

Allow setting the spell checking language per-tab.

Above the input bar context menu item to enable automatic
spell checking is now a submenu to select among the avail-
able dictionaries. The chosen language is remembered for
server, channel and query tabs across application restarts.

Along the way this commit also fixes numerous bugs in
remembering the encoding settings for these tabs across
restarts, as some of the underlying code is shared and
the bugs were discovered during testing.

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


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

Add support for earlier/later journeys to the applet

- Show "Get Earlier/Later Journeys" actions in the context menu
and as TimetableListItem in the journey list
- New graphics widget TimetableListItem, used to place actions
into a PublicTransportGraphicsWidget, ie. the earlier/later
journeys actions
- Add Flags to JourneyTimetableWidget to enable/disable
the ealier/later journey actions, when the provider does not
support the ProvidesMoreJourneys feature, these actions should
be disabled because they won't work
- Use the new service operations "requestEarlierItems" and
"requestLaterItems" to do the work

Diffs: 1, 2, 3, 4 Revision 7b1c3b2...
Friedrich Karl Tilman Pülz committed changes in [publictransport] /:

Implement service operations to get earlier/later timetable items

- Add service operations "requestEarlierItems"
and "requestLaterItems"
- Add MoreItemsJob, used by the service
- Add MoreItemsDirection enumeration (earlier or later items)
- Add MoreItemsRequest, contains a shared pointer to the request
object used to get the timetable data for which more items
should be requested
- Add AbstractTimetableItemRequest, used for timetable data
requests (eg. DepartureRequest), saves some unused variables
for other requests, eg. the new MoreItemsRequest
- Use getters/setters in AbstractRequest and derivates
instead of using public member variables
- Add TimetableInformation field RequestData, can be used to
store data about the request that is needed eg. to request
earlier/later items

- TODO: Implement earlier/later requests in HAFAS scripts,
use in the applet for journeys

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 12 more) Revision 350f377...
Friedrich Karl Tilman Pülz committed changes in [publictransport] /timetablemate/src/docks:

Add filter widget to the projects dock

- Useful when many projects are open

Eike Hein committed changes in [yakuake] /:

Add an option for keeping the window open after the last session closes.

Andrius Štikonas committed changes in /trunk/extragear/sysadmin/partitionmanager/src/fs/btrfs.cpp:

Add resize support for btrfs.

Daniel Calviño Sánchez committed changes in [ktutorial] /:

Improve internationalization.

Before, the English name of the programming language was just appended
to the localized name of the tutorial. Besides not being
internationalized, appending the programming language name prevents a
proper localization in right-to-left languages. Now, the programming
language name and the "Tutorial name (Programming language name)" string
are both internationalized.

Diffs: 1, 2, 3 Revision 98baeeb...
Aleix Pol Gonzalez committed changes in [kde-gtk-config] src/thread.cpp:

Improve themes extraction

Finish the port from QProcess("tar") to KTar

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

Add feature enumerable ProvidesMoreJourneys

- To be used when earlier/later journeys can be requested
for existing journey data sources

Aleix Pol Gonzalez committed changes in [kde-gtk-config] /:

Refactor the un/installing classes

Use KIO for removing directories
Use KTar in some places for uncompressing themes (not everything has been
Fixed some includes (don't include QtCore and QtGui globally)

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


Development Tools

Milian Wolff committed changes in [kdevplatform] language/backgroundparser/backgroundparser.cpp:

Optimize: Use QSet for document parse plans instead of QList.

This greatly improves the performance when repeatedly adding
the same document to the background parser, which happens
e.g. due to excessive signals upon pasting multiple lines of code.

REVIEW: 107140

KDE Base

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

Optimize away XMoveWindow() calls in the common click-and-drag case

This implements an optimization similar to one in compiz which defers updating
the backing X window during a window move until the move is terminated. This
helps alleviate some choppiness when using composite + vsync.

REVIEW: 107256

Diffs: 1, 2, 3 Revision 1dd1633...
Harald Sitter committed changes in [kde-workspace] plasma/generic/dataengines/share/shareprovider.cpp:

close filejob when we are done reading

filejobs are opened via KIO::open and apparently need to be closed as well,
otherwise they'll remain scheduled and fill up the scheduler.
filled up scheduler means that the engine will get stuck at some point
because new jobs are not being executed anymore.


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

Load documentation HTML page only when needed

- Load when the documentation dock widget gets shown
for the first time


Development Tools

Sven Brauch committed changes in [kdev-python/1.4] duchain/contextbuilder.cpp:

Don't abort when the internal functions file is not available yet.

This led to confusions in the dependency chain,
as the document was counted as having been parsed once already,
altough the list of missing imports had not been reported yet.


KDE Base

Dominik Haumann committed changes in [kate] /:

config page "Cursor & Selection" -> "Text Navigation"

- move option "Allow scrolling past end of document" to navigation tab
- "Auto center cursor (lines):" -> "Auto center cursor:", lines is now suffix in spin box
- selection mode is now combo box: Normal or Persistent

Diffs: 1, 2, 3, 4 Revision 4426f7d...