Issue 325

2nd February 2014 by KDE Commit-Digest Team


Marta Rybczynska
Alex Fikl
Giacomo Barazzetti
Jürgen Appel

This Week...

Artikulate improves filtering, can show phrases containing native speaker recordings. KDE-PIM adds email filtering and contact auto-completion via Baloo. Skrooge offers new "responsive" template for monthly reports. Bug fixes in Calligra, KGet.


Commits 1607 by 137 developers
Open Bugs 21425
Open Wishes 15973
Bugs Opened 203 in the last 7 days
Bugs Closed 212 in the last 7 days

Commit Summary

Module Commits
Files Developer Commits
Laurent Montel
Iñigo Salvador Azurmendi
Christian Mollekopf
Vishesh Handa
Marco Martin
Gilles Caulier
Aaron J. Seigo
Dan Vratil
Burkhard Lück
Alex Merry

Internationalization (i18n) Status

Language Percentage Complete
Brazilian Portuguese (pt_BR)
French (fr)
Dutch (nl)
Bosnian (bs)
Estonian (et)
Galician (gl)
Danish (da)
Hungarian (hu)
Catalan (ca)
Chinese Traditional (zh_TW)

Bug Killers

Person Bugs Closed
Jekyll Wu
Boudewijn Rempt
Christoph Feck
Dmitry Kazakov
Harald Sitter
Gilles Caulier
Ralf Habacker
Thomas Lübking
Martin Koller
Aleix Pol Gonzalez

Commit Countries

Commit Demographics




  Bug Fixes Features Optimization Security Other



Development Tools

[] [] []   




[] []    

KDE Base

[] []    




[] []    





Networking Tools


User Interface



[] []    





There are 42 selections this week

Bug Fixes

Development Tools

Sven Brauch committed changes in [kdevplatform] /:

Quick open filtering: do path fuzzy matching only on file name

Matching the whole path generated lots and lots of unrelated results,
especially for shorter queries. And because it is inherently hard to sort
that kind of fuzzy matches, they couldn't even be sorted by match quality.
That was overall not beneficial to QuickOpen's usefulness in practice.
Thus, the next attempt is to only do the fuzzy matching on the last
path segment; that still allows things like "btbrowser" for
"backtracebrowser.cpp" or "cml" for "CMakeLists.txt", but "hello" no longer
matches "/home/user/log/foo.log" or so.

Diffs: 1, 2, 3, 4 Revision 245743b...
Ralf Habacker committed changes in [umbrello] /:

Add debug window as dock window, which makes developers live easier.


Sven Brauch committed changes in [kdevplatform] /:

assistant: Prevent QGraphicsView from raising a window activation event

Different from QToolBar (which the old assistant inherited from),
QGraphicsView raises a WindowActivate event when it is shown. There is a
flag (WA_ShowWithoutActivating) which *should* prevent that but it
does not work. Thus, we re-implement QGraphicsView's ViewportEvent and
take the Show event away from it.

This is an ugly hack. However, with Qt5, QDeclarativeView goes away
anyways; so it is guaranteed to go away in at most half a year,
when I port this code to KDevelop 5. Until then, it's not going to
break, since Qt4 will not change.

Ralf Habacker committed changes in [umbrello] umbrello/uml.cpp:

Fix of 'starting umbrello does not display any window'.


Martin Gräßlin committed changes in [ksnapshot/KDE/4.12] ksnapshot.cpp:

Set window property to not animate KSnapshot's window on close

Starting with KWin 4.11.6 [1] there is a hint to exclude a window from
the closing animation. KSnapshot can use this to ensure that it doesn't
capture itself. With other compositors (e.g. Compiz) KSnapshot is most
likely still capturing itself. There is nothing KSnapshot can do about
it. Of course affected users are invited to point the developers of
other compositors to this commit and suggest to implement the KWin
specific hint.

FIXED-IN: 4.12.2
REVIEW: 115350


KDE Base

Bernhard Beschow committed changes in [kdeplasma-addons] wallpapers/marble/marble.cpp:

fix map theme selection in Marble wallpaper

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

[kwin] Listen to mouse motion events in the screenedge windows

Problem description: if a window decoration is in the screenedge
(not really unlikely for maximized windows) we either did not get
mouse events to the decoration or the screenedge window. E.g. the
enter event didn't reach the approach window which means it doesn't
get unmapped and thus the motion events in that area are not passed
to the decoration below. The same happened for the screenedge window,
the enter event was just not delivered if there is a window decoration
in the edge.

To solve this problem we listen for motion events in the approach and
the edge window and pass them from the event filter to the screen edges.
If one of our windows contains that the position of the motion event
we trigger the edge just in the same way as we do with the enter event.


Juan Palacios committed changes in [calligra] krita/plugins/tools/tool_text/

Fixed aspect ratio computation of artistic text shape

Aspect ratio was not being computed correctly. Now artistic shape
maintain the aspect ratio of the box used to define the text area,
keeping the defined height and extending the width to accommodate the
predefined text.

Dmitry Kazakov committed changes in [calligra] krita/ui/tool/strokes/kis_filter_stroke_strategy.cpp:

Limit filter application rect by the deveice bounds and selection

Dmitry Kazakov committed changes in [calligra] /:

Fix Color To Alpha filter widget when used in the Filter Brush

Also don't call the switchBackRequested() in destructor, since it has
already been called once in hideEvent().

Dmitry Kazakov committed changes in [calligra] krita/plugins/paintops/particle/particle_brush.cpp:

Fix the hangup when the Particle Brush is used with negative scale

The negative scale makes the equation unstable, but it still might be
interesting for the painter.

Dmitry Kazakov committed changes in [calligra] /:

Fix the Stroke and Shape Id of the Pencil Tool

This patch fixes two issues:

1) Crash in Krita caused by non-initialized id of the shape

2) Wrong stroke parameters of KoPencilTool calligra-wise
The stroke was not initilized properly.


Dmitry Kazakov committed changes in [calligra] /:

Fix crash on exit when the text tool is active

This patch makes KisCanvasController responsitive for installing
and removing the event filter onto canvas widget. It allows the
controller to remove the event filter before the destruction.

Networking Tools

David Narváez committed changes in [kget] /:

0;115;0cMake Sure all Transfer Plugins Check for Finished Status Before Stopping

The check is correct in TransferKio, but was missing in many other
transfer plugins. I factored the stop method of the Metalink transfers
into the abstract base class to avoid code duplication.

REVIEW: 115329
FIXED-IN: 4.12.2

Alexander Reinholdt committed changes in [smb4k/1.1] /:

Fix crash that might happen due to a (misconfigured) smb.conf file
that does not contain a global section.

Many thanks go to Michael Rohde for reporting this issue.

(cherry picked from commit 31034d1a58bc187c39b138d81763416347ffc0a3)

David Narváez committed changes in [kget] /:

Set mtime When Transfering From FTP

Added code to spawn a stat job from MultisegmentKio and Kio transfer
plugins, which are the two plugins that handle FTP transfers.

FIXED-IN: 4.13
REVIEW: 115319

User Interface

Hugo Pereira Da Costa committed changes in [kde-workspace] libs/oxygen/oxygenshadowcache.cpp:

Make sure vertical offset does not fall outside of the shadow's inner part, to prevent artifacts.

Hugo Pereira Da Costa committed changes in [oxygen-gtk] /:

Rewrite window dragging logic, so that (almost) the same tests are performed on parent widget and on children.
Added more debugging information


Evan Teran committed changes in [kcalc] knumber/knumber.cpp:

making pow(0,0) = 1 again for two reasons.

1. we are only dealing with real numbers and in that context it is pretty well
2. there seems to be a reasonable concensus that 0^0=1

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

Add support for US-ASCII char encoding

FIXED-IN: 0.13.0 (SC 4.13.0)


Development Tools

Kevin Funk committed changes in [kdevelop] languages/cpp/codecompletion/missingincludeitem.cpp:

Introduce new technique to lookup forward headers

We are now able to propose headers in the missing-include assistant,
which were not parsed before (i.e. that are not in the DUChain).

The procedure is simple: Assume we write something like 'QState',
and qstate.h is not yet included nor parsed, in some file foo.cpp.
KDevelop then checks if there is a file called 'QState' in
any of the include paths required to build foo.cpp and then adds it
to the list of possible include directives.

This is possibly useful in other areas, e.g. for the "Create From
Template" feature, as well.

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

cmdline: Restore support for arbitrary global option handling.

The recent port to Getopt::Long broke the ability to use --foo=bar type
of options (where <foo> is a global option name known to the build
context). It also replaced the --module,foo=bar options with

While it's possible to use the latter syntax for global options (by
using 'global' as the module name) that is undocumented and may not work
forever. And either way, --foo options did use to work, and I noted it
was broken in the refactor.

So now that someone else has noticed I've reimplemented the feature.
It's difficult to do entirely from within Getopt::Long since the
documentation for that module gives you essentially one catch-all, which
only supports *non-options*.

So what I've done instead is to have kdesrc-build dynamically introspect
its list of global options and flags and then add them to the list of
valid options we pass to Getopt::Long. This also should mean that we
don't need to pass 'pass_through' as an option to Getopt::Long anymore,
though we'll see.

This code path won't be used for options that already have a command
line option (such as --async/--no-async) so that is still a misfeature
compared to how it was before, but I guess it can't be perfect. =D

I've tried to ensure that "flags" support the 'false' value to mean
boolean false, but be careful to pass false or 0 if that's what you
mean... specifying --dont-foo without giving it a value defaults it to

Sergey Kalinichev committed changes in [kdev-clang] codecompletion/context.cpp:

Introduce "Best matches" completion group.

Sort code completion results with highest priority to the "Best matches"
group so that they'll appear at the top of completion list.

REVIEW: 115399


Andreas Cord-Landwehr committed changes in [artikulate] /:

Add new UnitFilterModel to filter training units.

This model filters units to show only ones that contain phrases of
type Phrase::Completed, i.e., phrases containing native speaker

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


Ian Wadham committed changes in [palapeli] /:

Make zoom slider more effective and Palapeli status bar tidier.

The zoom slider has 200 steps and needed to have more pixels width: the
progress bar did not need to be so wide. Also fixed deprecated calls to
setMargin(), added margins to the ends of the status bar and removed
gray space from between the puzzle area and status bar.

KDE Base

Martin Tobias Holmedahl Sandsmark committed changes in [kate] part/syntax/data/replicode.xml:

Add syntax highlighting support for Replicode.

REVIEW: 115407

Christoph Cullmann committed changes in [ktexteditor] src/buffer/katetextloader.h:

allow detection of encoding by HTML encoding

Kurt Hindenburg committed changes in [konsole] /:

Add option to remove '- Konsole' from window title

This may be overkill but for now add option to remove app name from
title. The option is in the app-wide General Configure settings and
doesn't add unreasonable space to the dialog.

REVIEW: 115354

FIXED-IN: 2.13

Christoph Cullmann committed changes in [kate] /syntax/data:

C++11 => C++ highlighting
As C++-1y code is more and more common, that shall be the standard C++ highlighting

Aaron J. Seigo committed changes in [kdelibs] plasma/theme.cpp:

improve cache file dropping

* fix regression: version the image cache file name
* version the svg elements
* drop old svg elements files
* respond to changes at runtime by watching the theme's metadata.desktop for changes
* move creation of the svg elements file into ThemePrivate::useCache()


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

Always enable the "Create New..." menu if the URL is writable

This commit works around the problem that KDirLister may not provide a
"rootItem" for some kioslaves by setting up a KFileItem with the view
URL and using this to find out if the URL is writable.

REVIEW: 115405
FIXED-IN: 4.12.2


Laurent Montel committed changes in [kdepim] /storageservice:

Save yousendit password in kwallet. Remove this password when we remove service

Laurent Montel committed changes in [kdepim] /storageservice/box:

Start to implement upload

Laurent Montel committed changes in [kdepim] /storageservice:

Add copy support

Diffs: 1, 2, 3 Revision a502953...
Vishesh Handa committed changes in [kdepim] /:

Merge branch 'feature/baloo'

This adds email filtering and contact auto-completion via Baloo. It
introduces Baloo as a hard dependency for kdepim.

Diffs: 1, 2, 3, 4, 5 Revision abe0fcb...
Laurent Montel committed changes in [kdepim] /:

Start to implement webdav support

Diffs: 1, 2, 3 Revision cc463ac...
Laurent Montel committed changes in [kdepim] /storageservice:

Add support for delete file/folder

Diffs: 1, 2, 3 Revision 37c20ad...


Dmitry Kazakov committed changes in [calligra] /plugins/extensions/dockers/imagedocker:

Implemented drag-and-dropping of files into the Reference Image docker

It supports URLs and embedded images.

TODO: Use KIO to fetch the images form remote urls

Stephane Mankowski committed changes in [skrooge] /:

feature: New "responsive" template for monthly reports

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


Aleix Pol Gonzalez committed changes in [muon/2.1] libmuon/backends/ApplicationBackend/ApplicationUpdates.cpp:

Make sure we don't provide null packages

Sometimes, apparently, some packages aren't listed when all Application
instances are created. This would become a crash in some special
situations, especially the cases where the architecture of the package
is specified as a suffix to the package name (e.g. primus-libs-ia32).

This patch fixes that crash by not reporting these, but then we still
have the problem that these won't be listed as updates.


Jakob Gruber committed changes in [picmi] src/logic/boardmap.cpp:

Random selection stream algorithm

Changed previous naive k-random-elements algorithm to the more
intelligent stream alternative and used Qt rand() functions.


Development Tools

Sven Brauch committed changes in [kdevplatform] /:

assistant popup: avoid expensive position recalculations when not required

This should fix high CPU usage or even lag during scrolling.