Issue 259

28th October 2012 by KDE Commit-Digest Team


Aleix Pol
Jürgen Appel

This Week...

Calligra improves videoshape: adds playback controls to Video playback(Volume Control, Playback seeker), ability to save video within ODF documents and thumbnails; Kexi shows indication that edited or pasted text is trimmed. KDevelop adds bookmarks functionality to Filesystem toolview; massive code refactoring and bug fixes. Rocs adds initial version for documentation widget. KWin gains a new effect: Maximize Window. Rekonq reports the open/close document events to activity manager daemon.


  Bug Fixes Features Optimization Security Other



Development Tools

[] [] []   




[] []    

KDE Base

[] [] []   


[] [] []   


[] [] []   




[] []    

Networking Tools

[] []    

User Interface



[] []    





There are 104 selections this week

Bug Fixes

Development Tools

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

Don't count the default parameters twice if getting the param count of a function.

Should now really fix that crash bug.

Aleix Pol Gonzalez committed changes in [kdevelop] projectbuilders/cmakebuilder/cmakebuilder.cpp:

Prevent crash when opening the config dialog

When returning the additional plugins, make sure we're not returning a
null one. This can happen in case the builder wasn't found.

Sven Brauch committed changes in [kdevplatform] language/codecompletion/codecompletionhelper.cpp:

Fix C++ code completion bug: don't insert a ";" if there's already one

The functionality for that was there, but it didn't work since it
checked for the character at the position where it would be after
the text was inserted by the completion action, but before it actually
inserted that text.

Sven Brauch committed changes in [kdevelop] /cpp:

Fix c++ completion bug: don't insert "::::"

If you have something like
then you replace Foobar by another namespace (or just complete
it again by pressing Ctrl+Space Enter with the cursor somewhere
in the word), then you would have two double-colons. This patch
fixes that and also adds a unit test to verify the changes.

Diffs: 1, 2, 3 Revision d42165d...
Niko Sams committed changes in [kdevplatform/projectview-copy] project/abstractfilemanagerplugin.cpp:

instead of adding moved/copied item reload the parent

this fixes issues when inserting an item that already existed with the same name and KIO
showed the dialog where you could enter a different name - which we didn't know about

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

Bug fix not displaying widgets after load.


Mailson Menezes committed changes in [okular/tiled-rendering] /:

Fix annotations bug

The annotations created in tiles mode were not shown unless the user
changed the zoom level.

Diffs: 1, 2, 3 Revision a61e1e0...
Benni Hill committed changes in [gwenview] app/mainwindow.cpp:

Currently, after switching to ViewMainPage the next image is not preloaded.
This patch sets the preload direction to forward and triggers the preloader.

REVIEW: 106964

KDE Base

Jon Severinsson committed changes in [kdelibs/frameworks] staging/kde4support/autotests/kmimetypetest.cpp:

Fix KMimeTypeTest::testAllMimeTypes

Don't use QEXPECT_FAIL for mimetypes with possible conflicting defenitions.
That will cause the test to fail on clean systems without the conflicting
defenition in XDG_DATA_DIRS. Instead just skip the QCOMPARE for those mime

REVIEW: 107006

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

Make sure deleted tabs do not reappear next time homerun starts

Note: previously deleted tabs which now appears empty will have to be
deleted again.

David Faure committed changes in [kdelibs/KDE/4.9] kdecore/sycoca/kprotocolinfo.cpp:

Give preference to x-scheme-handler over old-style exec=...

Otherwise apps cannot register themselves for protocols which have
an exec line (e.g. magnet.protocol has exec=ktorrent).
This fix comes from a discussion on (t=107938)

Joseph Wenninger committed changes in [kate] kate/plugins/filetree/katefiletreemodel.cpp:

Fix for #269530 Usage of QDir::separator() instead of regexp \/\\\\ for directory separtors. Not sure on windows, is it possible to have a file with a somehow escaped \ in the filename. This would still produce a wrong tree hierarchy

Christoph Cullmann committed changes in [kate] /plugins/project:

fix filtering, the inbuild delay make the filter lineedit not usable directly, if you want to have expanded results

Diffs: 1, 2, 3 Revision 59d6d9a...
Christoph Cullmann committed changes in [kate] part/syntax/katehighlight.cpp:

fix typo that killed line continue behavior
this fixes that line continue messes with the highlighting stack
now it is "transparent" to the context stack

Sebastian Kügler committed changes in [kde-runtime] plasma/declarativeimports/plasmacomponents/qml/ListItem.qml:

Check if referenced objects are valid

This kills plus 96c8478aef two ReferenceErrors I'm seeing when using
ListItems inside VisualItemModels (in this case, there's no view and
visual parent attached on creation).


Jon Severinsson committed changes in [kdelibs/frameworks] /:

Fix KSystemTimeZonesPrivate::setLocalZone()

If the time zone file for the kconfig configured local time zone does not
exist in the kconfig configured zoneinfo directory, setLocalZone() would
set a time zone where isValid() returns true, but all time zone information
is garbage. This commit changes setLocalZone() to instead set the utc fallback
time zone as the local time zone.

REVIEW: 107038

Diffs: 1, 2, 3 Revision 61eb92a...
Jörg Ehrichs committed changes in [nepomuk-metadata-extractor] /webextractor/plugins:

tvdb/tvdb_mail can crash the pthon interpreter when the tvdb_api.tvdb_episodenotfound exception is raised

The tvdb python plugin seems to cause the KROSS::Interpreter to crash if tvdb_api.tvdb_episodenotfound is raised.
This happens when one asks for a episode number tha tdoes not exist in the season.

Current solution is to disable this explicit error and handle it like any othe unknown exception.

Dominik Haumann committed changes in [kate] kate/app/katedocmanager.cpp:

fix reload all when docs are modified

Thanks to Paul Eggleton for the initial patch.

REVIEW: 106383

Dominik Haumann committed changes in [kate] part/view/kateview.cpp:

remove ambiguous shortcuts

Ctrl+ and ctrl- are already assigned to zooming. Since zooming is more commonly
used, the shortcuts for the code folding are removed. The shortcuts themselves
were loaded/saved correctly, so bug 304326 should be ok.

Dominik Haumann committed changes in [kate] part/syntax/data/java.xml:

fix java annotations

Patch by Vincent Ricard

Dmitry Ashkadov committed changes in [kde-workspace/plasma/dmitrya/systemtray-] plasma/generic/applets/systemtray/package/contents/ui/main.qml:

Fix: crash of plasma during resizing of panel

There is a strange behaviour when width of arrow area may be set to zero.
If user resizes panel then plasma will crash (somewhere in QtDeclarative
and QtScript). There is more strange thing: before crashing of plasma
the systrem tray can handle items from other applets.
So, there may be better way to fix (or this is a problem of Qt) but
this workaround (this commit) really fixes problem I think.

Dominik Haumann committed changes in [kate] part/script/data/utils.js:

simplify moveLinesUp/Down

All you guys having put time into fixing this: Can you please test this
implementation again? Thanks!!!

REVIEW: 106867

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

commit patch by Gerald Senarclens de Grancy
as requested by dh in bug 301162
fixes inconsistent behavior between move and duplicate line

David Faure committed changes in [kdelibs/KDE/4.9] /:

Don't skip looking for duplicate glob->mimetype associations.

Skipping doesn't simply create a performance problem as I thought,
it actually creates a fake "ambiguity" ("more than one mimetype found for
this glob"), which leads to determination-from-contents.

kmimetypefinder kdeplasma-addons/applets/nowplaying/package/contents/ui/PositionSlider.qml
(any QML file that starts with a C-like comment)
with two lines "50:text/x-qml:*.qml" in /usr/share/mime/globs2.

I'll add a unit test in Qt 5 and fix the bug there as well.
Then I'll look into fixing the same bug in xdg-mime itself...

Christoph Cullmann committed changes in [kate] kate/app/katesavemodifieddialog.cpp:
David Edmundson committed changes in [kde-workspace/kickoff-qml] plasma/desktop/applets/kickoff/core/applicationmodel.cpp:

If an application has no generic name return the application name as the title.

In this case we return nothing as the subtitle. If the subtitle is the same as the new title, hide the subtitle.
This fixes a bug in which "Find Files" would show with a subtitle but no title as well as "Utilities" having a pointless subtitle

Dominik Haumann committed changes in [kate] /:

never remove trailing spaces on load

This was discussed over the years again and again, and we get bug reports
that criticize that files are modified directly after opening. From now on,
Kate only supports the removal of trailing spaces on save, and not on load.

, 239077

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

add some highlighings,
the others did have checkdtd problems or clash with variants in our git

Joseph Wenninger committed changes in [kate] kate/app/katesavemodifieddialog.cpp:

Don't show an error if the user aborts saving of files on app exit, just return to the dialog. If saving fails, there are still some dialogs one after another, since they are from different levels, not optimal, but I don't have a plan to fix that yet

Joseph Wenninger committed changes in [kate] kate/plugins/filetree/katefiletreemodel.cpp:

Fix for #280885. If a document saved, a name change is triggered. Don't remove the representing item from the view and edit histories, but replace it with the new item, therefore the highlighting is kept now

Ignat Semenov committed changes in [kdelibs/KDE/4.9] kio/kio/kfileitem.cpp:

add KFileItem d-pointer checks

The default KFileItem ctor sets d to 0, so we need to check d for
validity to avoid crashes. This is based on similar code from QImage.

REVIEW: 106902

Joseph Wenninger committed changes in [kate] part/document/katedocument.cpp:

Do not try to insert a template into a readonly document -> 1) semantic issue 2) crashes -> should fix bug #284450

Christoph Feck committed changes in [kdelibs/KDE/4.9] kimgio/jp2.cpp:

Fix performance issue with JPEG-2000 loader

Instead of reading each component value individually,
convert complete rows to a temporary matrix, and fetch
the values from there.

Additionally, make sure the QImage allocation succeeds.


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

Workaround for failed comparison of items in KFileItemModelRolesUpdater

The real fix is in the KDE/4.10 branch of kdelibs
(commit b8f64ca3f4b6311519c21046031d66d9d0a570c6). We work around the
problem that the KFileItem that a preview has been requested for is
different from the KFileItems in the sets m_pendingVisibleItems and
m_pendingInvisibleItems by refreshing those sets when we detect that
the bug has been triggered.

FIXED-IN: 4.9.3

Ruediger Gad committed changes in [plasma-active-maliit] /org/kde/active/keyboard:

Add *.svg graphics for arrow keys and tab.

Diffs: 1, 2, 3, 4, 5 Revision 84d8e36...
Alex Fiestas committed changes in [kde-workspace] /:

Fix PowerDevil generateProfiles to properly detect if toRam is available

The problem is that the DBus interface of powerdevil is being setup AFTER
generateProfile is executed, so libsolid will fail to query powerdevil
for the available suspend methods because powerdevil haven't made them
public yet.

The approach in the fix:
There are many ways of fixing this, the simpler one is to execute the dbus registering before generateProfiles is executed,
the others are based on the same principle of moving the current code around to make libsolid work.

REVIEW: 106859

Diffs: 1, 2, 3, 4 Revision 86465c2...


Dan Vratil committed changes in [kdepim-runtime/KDE/4.9] /google/calendar:

Verify payload type before calling Akonadi::Item::payload()

Apparently Akonadi sometimes sends us Item with an invalid
or empty payload, so direct access to it throws PayloadException.

The only place where we can't use hasPayload() is in itemRemoved()
since removed items don't have payload.

FIXED-IN: 4.9.3

David Faure committed changes in [akonadi] server/src/handler/modify.cpp:

Don't error out when CollectionModifyJob is simply sending "VIRTUAL 0".

If the collection isn't virtual, this isn't a change.
CollectionModifyJob is simply setting all existing attributes back.
This fixes CollectionModifyJob, which fixes the imap resource not being
able to store the uidnext value, so it was constantly re-listing folders.
(scary, when your inbox disappears, before it reappears...)

Laurent Montel committed changes in [kdepim] /:

Start to fix Bug 309041 - Aggregation setting is not folder dependant,

only affects first tab

Now we apply setting to current tab.


Jarosław Staniek committed changes in [calligra/kexi-altertable-staniek] /:

move the calligra specific headers out of the way so dox generation
on follows the default styling there.

Calligra people: please create a project Mainpage.dox with some useful
content so the top-level dox looks nice and gives an overview.

R +0 -0 doc/api/calligra-header.html [from: doc/api/header.html - 100% similarity]
R +0 -0 doc/api/calligra-mainheader.html [from: doc/api/mainheader.html - 100% similarity]

Dmitry Kazakov committed changes in [calligra] /pigment:

Fixed composite ops to handle destination with zero alpha properly

When alpha is zero the color channels do not matter. That is
(1,2,3,0) and (4,5,6,0) are completely the same colors. Our composite
ops knew about it but they didn't handle it properly when some channels
were disabled by the channelFlags. Now the channel is zeroed if it is
disabled and alpha mask of the pixel flipped to non-zero value.

Inge Wallin committed changes in [calligra/plugins-threedshape-ingwa] plugins/staging/threedshape/Object3D.cpp:

Load 3d transform correctly.

Boudewijn Rempt committed changes in [calligra/krita-sketch-rempt] krita/ui/flake/kis_node_shape.cpp:

Don't crash when moving layers

If the active layer is being deleted without telling the activeselection,
we get a crash when accessing the active layer.

Dmitry Kazakov committed changes in [calligra] /:

Fixed loading of masks with the offset

That patch introduces the following changes:
1) Removed lazy initialization of masks' selection. Now you always must
call initSelection after the creation of the mask (probably, we can
move it into c-tor).
2) KisMask::setSelection must only be used when we need to switch the
underlying selection explicitly (like, e.g. in
KisImage::setGlobalSelection). In the rest of the cases you need to
work with already existent selection.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 348ee8b...
C. Boemann committed changes in [calligra/text-textrange-boemann] /:

Fix issues from review, and going one step further and remove any trace of QTextCursor in the
KoTextRange API

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

By default Adjustment Layers should have COMPOSITE_COPY op

Otherwise it makes users perplexed with the result.

Dmitry Kazakov committed changes in [calligra] /:

Fixed various unittests

1) Broken by yesterday's commit changing the interface of masks
2) Broken by KisPart2 port
3) FreehandStrokeTest -- updated images for Vc version of brush
4) Added barriers to KisCloneLayerTest

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


Jean-Baptiste Mardelle committed changes in [kdenlive] effects/automask.xml:

Fix autotrack motion_est param names

Jean-Baptiste Mardelle committed changes in [kdenlive] src/mainwindow.cpp:

Fix crash when dropping clip in timeline

Networking Tools

Rohan Garg committed changes in [ktp-text-ui] lib/chat-text-edit.cpp:

Allow sending messages with the enter key as well as return.


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

Add crash protection, use KUniqueApplication

- Add simple crash protection by storing a boolean value in the
settings, gets set to true on program start and false on
(successful) program exit, stays true on crash
- Use KUniqueApplication to prevent a second TimetableMate instance
to show the crash dialog, because another instance is running
- The crash dialog allows to not open previously opened
projects/tabs to prevent another crash

Diffs: 1, 2, 3 Revision 7f5aa5d...


Development Tools

Milian Wolff committed changes in [kdevplatform] /:

Improve ParseJob API and push some common functionality there.

For one thing, we are now using IndexedString directly there instead
of KUrl just to convert it into an IndexedString afterwards again.

Futhermore there are two new helper functions that should reduce
some copy'n'paste code sharing between php, ruby, python, ... language

Otherwise the ParseJob API is cleaned up some more.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 097fcc9...
Aleix Pol Gonzalez committed changes in [kdevplatform] /:

Make a tuned-down implementation of the filtering feature i just reverted

It displays the number of filtered rows in the parent item instead of a new
item. But it works great now.

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

Ensure the old active document is still activated if you e.g. rename two files.

Otherwise we rely on the (random) order of files in the changes hash which
can easily break if you have e.g. foo.h and foo.cpp open (with .h activated)
and rename both. You always want newname.h opened, never newname.cpp.

Aleix Pol Gonzalez committed changes in [kdevplatform] /:

Reconsider the way we add launch configurations

>From the Add button we'll always get a menu from which we'll be able to
create either a scripted or a native executable launch

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 2388e18...
Aleix Pol Gonzalez committed changes in [kdevelop] /executeplasmoid:

Implement suggestions for the Plasmoid Launcher

This way you can get a list of all plasmoids in the project

Diffs: 1, 2, 3 Revision 3d06891...
Milian Wolff committed changes in [kdevplatform] /codegen:

Make it possible to rename files from a document change set

This is useful because it makes it possible to rename the file before
renaming the class.

REVIEW: 106316

Milian Wolff committed changes in [kdevelop] /cpp/codegen:

Rename file if a class/struct with the same name as the current file gets renamed.

In order to not crash we must apply the changes in a delayed manner to
give the dialogs a chance to be destroyed first - otherwise we'll crash.

Also, the idea to create widgets on the stack is just insane...

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

Merged the ClassDeclaration and the ModuleDeclaration classes.

In the DUChain's point of view, Ruby classes and modules are almost the same
structure. The only difference is that classes may have a base class. By
merging both classes and adding a new "isModule" attribute to the data, we
are able to finally differentiate between both structures (previously there
were some crazy bugs for this topic).

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 68e43a2...
Milian Wolff committed changes in [kdevplatform] /openwith:

Add a configuration dialog to the context menu of 'Open With'.

REVIEW: 106388

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

The Ruby::ParseJob class is now taking care of warnings from the parser.

In the RubyParser class some warnings may be raised when dealing with
version incompatibilities. In this commit, these warnings are finally
written in the DUChain.

Diffs: 1, 2, 3, 4, 5 Revision 9132232...
Milian Wolff committed changes in [kdevplatform] /openwith:

Refactor OpenWithPlugin.

- Cleanup code
- fix memory leak of config dialog
- sort actions
- prefer embedded parts over external apps

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

Implement tag and revision options for git modules.

This makes the 'tag' option allow for checking out a given git tag for a
module (which is enforced by using refs/tags/$foo when passing to git).

Additionally, the 'revision' option has been adopted for git modules as
well, to allow for checking out any other git "tree-ish" that git
supports (i.e. anything supported by 'git checkout $foo').

Both options should leave the source directory in a detached HEAD state,
although kdesrc-build will adapt as necessary with each source update.

The auto-stashing is still attempted for both types, and a failure to
apply an auto-stashed change will cause the module to fail to build.
Ensure you're in a clean working directory if you want to avoid issues
due to this.

The test suite continues to pass (not that it's very extensive).


Niko Sams committed changes in [kdevplatform] /filemanager:

add bookmarks functionality to Filesystem toolview

inspired by kate

Diffs: 1, 2, 3, 4, 5 Revision ca7efe1...
Sven Brauch committed changes in [kdev-python/python3] /:

make the python3 stuff build, and attempt to fix some crashes

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision cb21ba2...
Milian Wolff committed changes in [kdevplatform/unittest-clean] plugins/execute/nativeappjob.cpp:

Improve the native app job error reporting

At least, make it possible to figure out if it crashed, failed or finished


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

Have Marble registered as handler for application/x-gpx+xml, application/x-osm+xml, application/x-esri-shape

To have Marble registered as handler for application/x-esri-shape only if the related plugin
is installed, separate desktop files are installed for application/x-esri-shape, following
the advise given in

REVIEW: 106977

Thanks to Torsten for review

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision e030205...
Andreas Cord-Landwehr committed changes in [rocs] /:

Initial version for documentation widget.

This widget provides initial support for the online version of
the Rocs handbook and by this to the data structure plugin
commands. In the future, this plugin must be extended with
native support for scripting engine documentation.

Diffs: 1, 2, 3, 4, 5 Revision e820a8f...
Sebastian Gottfried committed changes in [ktouch/next] /:

drop hard dependency on X11

The keyboard layout detection depends on X11 and because of that
KTouch couldn't even build on other platforms. Now we provide a menu to
manually configure the keyboard layout on those platforms.

It's accassible via the main menu in the spot there on X11 the menu
entry to configure the system's keyboard layout would be. That one
would be defunct on other platforms anyways.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 79f0a72...
Andreas Cord-Landwehr committed changes in [rocs] /:

Migration of graph editor toolbars.

This correctly sets the toolbars to the left and helps users to
migrate to the new layout. For this the config file stores the
value of the Rocs version it was opened by, last. If this value
is below a specific threshold we now can perform automatic

Diffs: 1, 2, 3, 4 Revision 7042ef4...


Gilles Caulier committed changes in [libkexiv2] libkexiv2/kexiv2_p.cpp:

compile if Exiv2 is do not support XMP

FIXED-IN: 3.0.0

KDE Base

David Faure committed changes in [kdelibs/frameworks] kio/kio/kurifilter.h:

Make iconName() virtual so that it can be determined on demand.

Right now kuriikwsfilter.cpp loads all the icons for all the search
providers upfront (see the call to setIconName), leading to lots of
dbus calls to the favicon kded module, even when simply selecting text
in konsole... It would be much more efficient to do this on demand
in KUriFilterData::iconNameForPreferredSearchProvider, i.e. only if a match
was found and only if the app cares for the icon.

Not sure how to fix this in KDE-4.x though.

Joseph Wenninger committed changes in [kate] /:

KATE & KWrite show [read only] in the caption if a document is set read only. Perhaps kdevelop should do the same. The KTextEditor::Document has a new signal readWriteChanged(Document) which is emitted if the state changes. It should be used together with the related KParts functions

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

New Maximize Window Effect

Animation for going from restored to maximized and vice versa.

FIXED-IN: 4.10
REVIEW: 107050

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

ResourceIdentifier: Properly implement storeResourcesFlags

The flags did not follow what the documentation specificed.
Additionally, the IdentifyNone mode ignored the nie:urls, which often
results in multiple files have the same nie:url. This is wrong.

Also, in the IdentifyNew mode, the exists(..) check would run twice,
which results in an extra useless query.

Lamarque Souza committed changes in [kde-workspace] /themes/default:

Allow using space bar key to open menus in QML shutdown dialog. Use ENTER
key to trigger the selected menu item.

FIXED-IN: 4.9.3

Dominik Haumann committed changes in [kate] /:

implement remove-trailing-spaces-on-save as combo box

options now are:
- Never
- Modified Lines
- Entire Document
This works now thanks to the Line Modification System. I.e. all lines,
that are were touched during editing (green or orange vertical bar), are
cleaned up. This now reflects the "remove trailing spaces while editing" option.

todo: implement better way in the modelines, while staying compatible if possible

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 6c26d99...
David Faure committed changes in [kdelibs/frameworks] /:

Finished porting KIO away from KUrl. Woohoo.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 5b47641...
Kai Uwe Broulik committed changes in [kde-workspace] /:

Shorten Comment in desktop files of autostart kcm and solid actions kcm.
They are shown as title in the KCM and so there is no need for "A tool for..."

REVIEW: 106865

Christoph Cullmann committed changes in [kate] /:

use fontmetricsF
that fixes positioning (and using qreal for calc)
new style without dotted lines is wanted

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

dirty version to pass QActions to QML runtime

This commit contains a few tries to pass QList<QAction*> and
QDeclarativeProperty<Action> across to the QML runtime, both fail (only
one item gets shown, and it's empty).

The working solution is to pass a list of strings with the action texts
to the ListView as model, and set the actions through a QAction*
toolAction(QString) from the containment. This lets us access text, icon
and trigger() of the action.

Diffs: 1, 2, 3 Revision 3072b64...
Sebastian Kügler committed changes in [kde-runtime] /scriptengines/javascript:

AppletContainer binding for containments

This adds a class to manipulate applets in more detail in context of
containments. The type will only be available from Containments, not
Applets or PopupApplets.

This binds the necessary functionality of Applets to build fully
features containments. The code has been moved from MobileComponents,
untangling another piece there and putting the functionality where
it belongs, into the specific component type bindings to allow this
functionality also outside of plasma-mobile and further reduce the
delta between the shell implementations.


Diffs: 1, 2, 3, 4 Revision 347f213...
Dominik Haumann committed changes in [kate] /:

implement modeline remove-trailing-spaces

keep compatibility of replace-trailing-spaces-save and
remove-trailing-space as good as possible. However, warn
the user on the console if the deprecated stuff is used.

Diffs: 1, 2, 3, 4 Revision 3c58393...
Aurélien Gâteau committed changes in [homerun] /:

Merge branch 'nicer-available-source-items'


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

Support read-only Google calendars + bump LibKGAPI dependency

Make collections representing read-only Google Calendars read-only.
This requires LibKGAPI>=0.4.3 otherwise all calendars would be
read-only because of a bug in previous versions of LibKGAPI.


Friedrich W. H. Kossebau committed changes in [calligra] plugins/musicshape/dialogs/SimpleEntryWidget.ui:

disable Voice combobox in SimpleEntryTool for Music shape for now (otherwise crashes)

The SimpleEntryTool just has 4 voices preset, without synchronizing to the
actual part, which results in a crash if another voice is selected there.

Do disabled until the support for voices is complete.

REVIEW: 105674

Thanks Boudewijn for review

Jarosław Staniek committed changes in [calligra/kexi-altertable-staniek] /:

Move the theme manager to KoMainWindow

This makes per-app theming available to all Calligra applications, makes
sure the initial dialog is themed as well and finally avoid a nasty
problem with some styles where the menubar and toolbar aren't themed if
they aren't created after the theme is applied.

Diffs: 1, 2, 3, 4, 5 Revision 31aefc6...
Gopalakrishna Bhat committed changes in [calligra] /:

Add the following enhancements to videoshape

1) Enable videoshape in Words
2) Add playback controls to Video playback(Volume Control, Playback seeker)
3) Ability to save video within ODF documents.
4) Ability to change video of a video shape
5) Ability to play the video from the video tool
6) Thumbnails for videoshape(using phononexperimental api's)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 12 more) Revision 33f15f4...
Jarosław Staniek committed changes in [calligra] /:

Tables/Forms: show indication that edited or pasted text is trimmed

DIGEST:Kexi shows indication that edited or pasted text is trimmed, more at


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

ScanManager: better dialog on collection scanner errors

We now link to
and format the message much more nicely.


Ed Rogalsky committed changes in [kdenlive/feature/pkey] /:

move playhead to mouse curser position if p key is pressed

when dealing with multitracks and different tools it is handy beeing
able to align the playhead to mouse position by pressing a key.

hopefully now all kde scm/qm rules are satisfied for pushing

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

Networking Tools

Martin Klapetek committed changes in [ktp-contact-list] /:

Use option's palette instead of storing app's palette in class var

Reviewed-by: Rohan Garg
REVIEW: 107008

Ivan Čukić committed changes in [rekonq] /:

Rekonq reports the open/close document events to activity manager daemon.

By knowing which window contains which documents and which one is in
focus, we can do the following:

- collect the statistics about visited pages. Further, this provides a
score for each document visited, that depends on the number of times it
was open, the time the user spent on that location, and the time passed
since the last visit.
- availability of a global/workspace applet that allows sharing the
current document via e-mail, social networks; bookmarking and rating the
link, or connecting it to the current activity. (advantage of this is a
unified UI for sharing/rating/linking that works with any
- jump-lists (not impl. yet in plasma) to list top rated documents on a
launcher icon or in the task manager applet
- krunner can sort the documents based on the score
- more things that I haven't thought of yet

There is no need to *use* ativities to have these benefits. Activities
just serve as manual data clustering to provide more useful scores
compared to the one-activity approach.


Diffs: 1, 2, 3, 4, 5, 6 Revision 3011d17...


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

Replace QMutex to protect QScriptEngine with QSemaphore

- Replace QMutex with QSemaphore to protect access to the QScriptEngine
- It is not used like a normal mutex, ie. gets locked/unlocked in
different functions (to lock while the engine is evaluating)

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


Development Tools

Sven Brauch committed changes in [kdevplatform] /:

Improvements on the launch configuration dialog

- Fix a meomry leak with the stack widget
- improve size hints (avoids flickering)
- some polishing

Diffs: 1, 2, 3 Revision 8151d32...
Sven Brauch committed changes in [kdevplatform] /executescript:

Remove the ExecuteScriptOutputModel.

It didn't do anything besides a bit of filtering, which is now also
provided by the KDevelop OutputModel. Thus, there's not really a point
in keeping it.

Diffs: 1, 2, 3, 4 Revision 5616ca2...
Milian Wolff committed changes in [kdev-python] /:

Adapt to KDevplatform changes.

Use IndexedString instead of KUrl in some places, use new helper functions
where appropriate to simplify the ParseJob::run implementation.

Diffs: 1, 2, 3, 4, 5, 6 Revision 9d900fc...
Aleix Pol Gonzalez committed changes in [kdevelop] /welcomepage:

Remove dependency to plasma.extras and the Heading component

It's not available in KDE 4.8 which quite some people are using

Diffs: 1, 2, 3, 4, 5 Revision d1ff415...
Milian Wolff committed changes in [kdevplatform] language/duchain/duchain.cpp:

Before sleeping in DUChain::waitForUpdate, trigger a call to BackgroundParser::parseDocuments.

This greatly improves the performance of unit tests like e.g. Ruby which rely
on waitForUpdate. If this is not done, than you'd e.g. wait the default of 500ms
before documents are processed and then wait one second more again...

KDE Base

Dominik Haumann committed changes in [kate] /:

Call Editor::readConfig() with KGlobal::config() as parameter only once

Frank Reininghaus committed changes in [kdelibs/KDE/4.10] /:

Consider two KFileItems 'equal' if they share the same URL

Up to now, KFileItem::operator==(const KFileItem&) only returned true if
both items shared the same d pointer. However, the implicitly shared
d pointer is an implementation detail of the class, and making the
comparison depend on it might not be expected by the developer using the
class. Fixes a problem in Dolphin, where the unexpected outcome of the
comparison caused permanent high CPU usage.

Vishesh Handa committed changes in [nepomuk-core] libnepomukcore/resource/resourcedata.cpp:

Resource: Avoid running event loops for the jobs

Event Loops cause all kind of problems. It is better to block for that
small amount of time, than to run an event loop.

Eventually, these dbus calls should be replaced by socket calls.


Allen Winter committed changes in [kdepimlibs] /:

Don't always recompress contact photos when saving
The patch from RB did not apply cleanly so I had to hand-patch
in a few files. I hope I didn't screwup.

Thanks for the patch Sebastian!

REVIEW: 106745

FIXED-IN: 4.9.3


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

Optimized Vector Composite Over to special cases of alpha

Alpha: 255 and 0 are too common in Krita, so these checks do really
good work.

Now some of the Stroke Benchmark execute 10 or 20% faster. For others
there is no change.

Diffs: 1, 2, 3 Revision 77ab5bb...