Issue 342

1st June 2014 by KDE Commit-Digest Team


Alex Fikl
Danny Allen
Marta Rybczynska
Giacomo Barazzetti

This Week...

In KDevelop it is now possible to modify many include directories and defined macros at the same time. KStars adds an "eyepiece view" feature to the observation planner; It renders a view of the eyepiece and DSS / other imagery if available, side-by-side. Digikam adds a geotagging status for thumbnails when viewing the album. Calligra adds Okular generator for ODT (and OTT) files. Solid now has a proper Inhibition object, with start/stop methods. Trojita implements PasswordWatcher for imap access. Akonadi implements direct streaming of part data.


Commits 1392 by 138 developers
Open Bugs 22527
Open Wishes 16087
Bugs Opened 293 in the last 7 days
Bugs Closed 186 in the last 7 days

Commit Summary

Module Commits
Files Developer Commits
Marco Martin
Aleix Pol Gonzalez
Roman Paholík
Boudewijn Rempt
Yuri Chornoivan
Laurent Montel
Martin Gräßlin
Jose Nuno Coelho Pires
Ludovic Grossard
Stefan Asserhäll

Internationalization (i18n) Status

Language Percentage Complete
Polish (pl)
Portuguese (pt)
Brazilian Portuguese (pt_BR)
Swedish (sv)
German (de)
French (fr)
Dutch (nl)
Spanish (es)
Bosnian (bs)
Italian (it)

Bug Killers

Person Bugs Closed
Marco Martin
Christoph Feck
David Edmundson
Jekyll Wu
Gilles Caulier
Chao Feng
Frank Reininghaus
Thomas Lübking
Martin Gräßlin
Robby Stephenson

Commit Countries

Commit Demographics




  Bug Fixes Features Optimization Security Other



Development Tools





  []    []

KDE Base

[] [] []   []


[] [] []   


[] []    





Networking Tools


User Interface








There are 35 selections this week

Bug Fixes

KDE Base

Dawit Alemayehu committed changes in [kwebkitpart/1.3] src/webpage.cpp:
Kurt Hindenburg committed changes in [konsole] /:

Correct line drawing characters U+2532, U+2544, U+2546, U+2560

Fix box lines - using kmag is a great help

Thanks to Egmont Koblinger egmont gmail com for report and patch

FIXED-IN: 4.13.2

Martin Klapetek committed changes in [plasma-framework] /declarativeimports/calendar/qml:

Make sure we update the calendar on date change

This introduces new property on MonthView - "today". This property is
updated by dataengine (or can be a timer too, but we already get signals
from dataengine every 30 seconds to update the clock) and is never
updated by the code itself.

Furthermore, the DayDelegate is now bound to it, so when "today"
changes, the selection rectangle in the calendar should also change.

And finally, the selected item in the grid is cleared if MonthView's
date property is cleared (which is second part of this patch, to the
applet itself).

REVIEW: 118277

Diffs: 1, 2, 3 Revision 9f0765b...
Martin Klapetek committed changes in [kiconthemes] src/kicontheme.cpp:

Fix looking up icons

What the current code does is looking for the best match, storing it
into QString path...and then overwrite it with empty string on next run
if the icon is not found in the current dir. So we need to check first
if the icon is available in the theme and only then store the path,
otherwise empty string gets returned non-deterministically.

This also fixes case of some missing icons in Plasma Next.

REVIEW: 118415

Martin Klapetek committed changes in [plasma-framework] src/plasmaquick/dialog.cpp:

Don't hide Dialog when opening QMenu from it

When plasmoid in a popup (applet opened from panel) is opening a QMenu,
the popup itself hides because it looses focus. There's currently no way
to obtain the Dialog the applet popup is in and pass it to the QMenu
window as a parent, so we have to go this way.

REVIEW: 118361

Thomas Lübking committed changes in [kde-workspace/KDE/4.11] kwin/manage.cpp:

keep oversized windows in fullscreen area

huge windows are not contrained to their initial screen
(the user might want to move them to the other instead),
but we must not let them drop out of the fullscreen area

REVIEW: 118412


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

Sortorder woes

- triggers the save timer on swapping direction
- preserves scroll offset on swapping direction
- scrolls to unseen/recent (ie. actually top/bottom) when entering a mailbox

REVIEW: 118229


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

Remove country choice in IMDb data source

The national IMDb sites all redirect to now

FIXED-IN: 2.3.9

Networking Tools

Juan Palacios committed changes in [libktorrent] src/torrent/timeestimator.cpp:

Use MAVG estimation per default on TimeEstimator::estimateKT()

estimateGASA was used per default to estimate the eta for torrents. The
main problem is that this algorithm reports ridiculous big etas
(something like days instead of hours, and so on).

Now estimateMAVG is used per default, so we have more realistic etas.


Development Tools

Sergey Kalinichev committed changes in [kdevelop] /plugins/custom-definesandincludes/kcm_widget:

Add batch edit mode to the Defines and Includes GUI

Now it's possible to modify many include directories and defined
macros at the same time.

REVIEW: 118191

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


Akarsh Simha committed changes in [kstars] /:

Adding an "eyepiece view" feature to the observation planner

This is a very beta feature at the moment. It renders a view of the
eyepiece and DSS / other imagery if available, side-by-side. The view
can be rotated, flipped and inverted to help match the view through a
telescope / camera.

The DSS image and the sky map view are oriented correctly only when
using equatorial coordinates. One needs to work out some (presumably
well-known, standard) trigonometry to rotate the DSS in horizontal

The feature is very buggy, but works. Will polish it if and when I
have the time. Please feel free to contribute.


Diffs: 1, 2, 3, 4 Revision a116aea...
Sanjiban Bairagya committed changes in [marble] /lib/marble:

Functionality for editing Tour items
from the Tour widget

REVIEW: 118380

Diffs: 1, 2, 3 Revision c98356a...
Andreas Cord-Landwehr committed changes in [rocs/graphtheory] /:

Allow canvas to grow infinitely.

Canvas increase is triggered if node item is closer than 10 to canvas
border. Missing: decrease of canvas.


Gaël de Chalendar committed changes in [kgraphviewer] src/part/dotgrammar.cpp:

Add support for xdot 1.5, graphviz 2.34 new 't' operator

Gilles Caulier committed changes in [digikam] /:

Add an icon over thumbnails to indicate the geotagging status.
This include : Album icon-view, Preview Thumbbar, Editor Thumbbar, LightTable Thumbbar, Import Icon-view, Import ThumbBar, Showfoto Thummbar
A new settings in digiKam-AlbumView, DigiKam-Camera, and Showfoto-Misc pages have been add to turn on/of this feature (disabled by default)

FIXED-IN: 4.1.0

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

KDE Base

Aleix Pol Gonzalez committed changes in [kscreen] kcm/src/widget.cpp:

Report a change whenever screens are moved around

This change makes the KCM notice that something changed when screens
are moved around, otherwise it's impossible to only move screens around
and save the changes.

REVIEW: 118131

Xuetian Weng committed changes in [kdeplasma-addons/xuetianweng/kimpanel-fr] /:

Port kimpanel dataengine and backend to KF5/Qt5

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision b483c66...
Alex Fiestas committed changes in [solid] /:

Add a proper Inhibition object, with start/stop methods

By popular demand the Inhibition object has now some logic into it.

The idea is that InhibitionJob will return an Inhibition object that
is already started (so the inhibition is in place), and you can keep
that object to start/stop the inhibition depending on the app state.

For example:
The moment a video starts playing in our VideoPlayer we Call
InhibitionJob, hence creating an Inhibition object. If the video
is paused, then we stop the inhibition. When the video is playing
again we start the inhibition.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 3 more) Revision 29c089b...
Marco Martin committed changes in [plasma-framework] /plasma:

bit more complex bookeeping

since it is now possible to have different svg/framesvg with
different themes, s_sharedFrames must be indexed by theme first
what it's really the identifying thing is ThemePrivate, so it's indexed by that
this fixes a crash that occurs the second thime the theme gets changed

John Layt committed changes in [plasma-desktop/jlayt/translations] /:

Plasma - New Translations KCM

Initial implementation of a new KCM to configure the LANGUAGE envvar
to control translations used by applications under Plasma. The list of
available langauges is currently only those installed for Plasma. We
may later add all installed po files, or allow the user to add a custom

Currently this does not create the script for startkde to use to export
the setting.

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


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

Ubuntu: Implements PasswordWatcher for imap access

Now uses the passwordWatcher. When authRequest signal is
received it either auto connects or if no password saved ask
user to enter password.

REVIEW: 118130

Removed using an anonymous function to call a reloadPassword slot

Dan Vratil committed changes in [akonadi] /:

Implement direct streaming of part data

This implements a new optimization for item streaming, which improves performance
and memory efficiency when appending or modifying items, but allowing clients to
write the payload directly to a file instead of sending it to the server.

This effectively eliminates the need of transmitting (possibly large, but always
at least DbConfig::sizeTreshold() bytes-large) part data to the server, which has
to process it and write it to a file. This feature of course only works for external
parts, i.e. parts larger than the configured treshold. Smaller parts or non-literals
are still parsed as usually.

The main change that clients have to cope with is that the continuation response
can now contain parseable data that they must check for:

+ STREAM [FILE external_file_name]

If client receives this response, it parses the file name and writes the data
directly into the file instead of sending them to the server. In case of error,
the client replies "* NO Error message", otherwise it just sends next payload part
header, or end of list.

The server only verifies that the file size matches the advertised size of the part
and continues parsing next data.

Clients have to advertise that they support direct payload streaming by listing
DIRECTSTREAMING in CAPABILITY command. Clients without this capability will never
receive the STREAM continuation response and must provide any payload the usualy way.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 11 more) Revision 422c911...
Christian Mollekopf committed changes in [akonadi] /:

LIST/MODIFY/CREATE: support for enabled state and sync/display/index preference.

This patch adds support for the new enabled state plus the local
preference for sync/display/index. The enabled state gives a preference
that can be synchronized accross devices, while the local preference
allows to override that setting individually for each purpose.
This mechanism should eventually replace the local subscription mechanism.

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


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

add Okular generator for ODT (and OTT) files

Okular already has a "native" plugin for ODT files, but that one is not so powerful

DIGEST: Calligra-powered Okular generator for ODT (and OTT) files

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 53380e0...
Cristian Oneț committed changes in [kmymoney] kmymoney/views/khomeview.cpp:

Account ordering by name on the home page is now locale aware.

Since QMap does not allow setting the comparator function for each
instance of the map (qMapLessThanKey is for the whole class) we droped
using it just to obtain a collection ordered by the account name.
Use an account list instead and sort it using the proper comparator
before rendering it.

Dmitry Kazakov committed changes in [calligra] /:

Added an input action for modifying Exposure and Gamma on-the-fly

Also add two classes:

1) KisExposureGammaCorrectionInterface --- DIP interface for OCIO filter
2) KisSignalCompressorWithParam --- a special class for deferring
non-void signals. Works like KisSignalCompressor, but can handle
parameters of the event. In the end the latest event param is returned.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 7 more) Revision ee0ce44...
Wojciech Kosowicz committed changes in [calligra] /main:

Added storing previous find/replace queries into kexifinddialog

KHistoryComboBox AddToHistory slot was not connected to any signal
therefore it never stored previous queries. Connects were added that
work when combobox is activated or when find/replace/replaceall button
is clicked.

REVIEW: 118074

Lukáš Tvrdý committed changes in [calligra] /plugins/extensions/gmic:

Implement internet updates for gmic

Updates are fetched from
where XXXX is curent gmic version. So now it is update1590.gmic

* compile gmic with zlib dependency, needed to extract update
file from cimgz format
* implement merging of two gmic file definitions,
if second file has same filter in same category,
its definition will be overwritten
* applicator has to pass *.gmic definitions to gmic so that user
defined filters work
* No need to use KisImageLayerAddCommand to add paint layer

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 10 more) Revision 0991c1e...
Dmitry Kazakov committed changes in [calligra] /ui:

Add an option to disable touch capabilities of the Wacom tablets on canvas only

If you want to use it, please add the following option to your kritarc file


(tested on linux only)


Vishesh Handa committed changes in [jungle] /:

Add very basic watched support for movies

We currently just show if a movie has been watched or not. The actual
code to implement marking a movie as watched still isn't hooked up.

Diffs: 1, 2, 3, 4, 5 Revision d21b25e...


KDE Base

Marco Martin committed changes in [plasma-framework] /plasma:

try harder to avoid creating svg renderers

now is actually possible to obtain a startup with zero svg renderers
* svg::isValid will create a renderer only if really nevessary
* the rects cache is ensured to be written on disk
* fixed the check on the theme metadata age
* rect cache is shared between all applications

Diffs: 1, 2, 3 Revision 0b10a16...


Dan Vratil committed changes in [akonadi] /src:

Disable filesystem Copy-On-Write on database files when running on Btrfs

Btrfs documentation recommends disabling Copy-on-Write for databases (or any
large files with small random writes in general) in order to improve performance.

This patch adds a code to detect what filesystem ~/.local/share/akonadi/ is
stored on, and if Btrfs is detected, it will disable COW on this directory (or
on the akonadi.db file in case of SQLite) using an ioctl call.

When CoW is disabled on non-empty directory, only newly created files will be
affected. In case of non-empty files, it's not defined when it will take effect.
For this reason the code is only executed before initializing a new database,
which means that only new users will be affected.

Obviously this feature only works on Linux and the code is disabled on any other

Diffs: 1, 2, 3, 4, 5 Revision a307fb6...



Gilles Caulier committed changes in [digikam] /:

Restore CameraThumbsCtrl class to manage and cache thumbnails from camera (concept from 2.x serie, dropped with 3.x model view port)
It cache Camera thumb in max size and pass to thumb model pixmap which need to ne resized. No need to reload thumb from camera if thumb size is changed.
This take a lot of time.
This controler is also used in CameMessageBox to confirm which images to remove from camera. This message box is also restored (fdropped in same condition with 3.x serie)
Note: This controller have been moved as well to ImportThumnailModel class which have been a wrong idea. This implementation must be separated and shared with class tht needs cached thumbnails.
ImportThumnailModel use this controller directly which simplify a lots implementation.

KDE Base

Alex Fiestas committed changes in [solid] /solid/power:

Rename Power::Inhibitions to Power::States

Instead of having different list of Inhibitions and States we will
instead have a list of supported States by the device that the developer
will be able to set the device to, or to prevent it to happen

As rightn ow we only support the ones supported in Linux/Freedesktop,
but in the future we will add things only found (at the moment) in

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 087c023...

User Interface

Sebastian Kügler committed changes in [kwin] /:

[kwin] Streamline Comment fields of KCMs

This patch applies a common language and type-setting to the
systemsettings modules in kwin.

- The comment field might repeat the name, or give more detail about the
specific settings on this page, this makes sense with how
systemsettings and kcmshell present it
- Mentioning the words settings, configure, options, etc. is avoided --
it is clear from the context that these are settings and options.
- Title-case throughout in line with human interface guidelines, see
- The comment ends up being the title, so the
- tech slang is avoided as much as possible, but left in where really
- I've left the Name field "mostly untouched", as that one is key for
the user to find the right module in systemsettings' icon view and in
the sidebars

The most prominent change is "Compositor" to "Graphics Compositor" (in
the Title field). This is more like a "suggestion", if you don't like
it, I'll take it out again. Reasoning: "Compositor" is a very technical
term, people who know graphics might recognize it. Others might not
understand that "composite" is about graphics -- hence the
specialization. Please enter the commit message for your changes. Lines starting


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