Issue 266

16th December 2012 by KDE Commit-Digest Team

Contributors

Jürgen Appel
Aleix Pol
Marta Rybczynska
Martin Cigorraga

This Week...

Digikam extracts JPEG preview from RAW files, gets various updates in Queue Manager. Kscreen moves OutputView to QML; multiple other changes. nepomuk-metadata-extractor adds a progress window when processing a folder with many files. KDE-PIM uses nepomuk2; code cleanup to stop using deprecated types and methods. Kexi can import csv data into an existing table. Last.fm plugin configuration reworked for smoother experience in Amarok.
First KDE-PIM results from Google Code-in

Google Code-in continues and Kevin Krammer gives insights from the KDE PIM perspective:

Several changes to the KDE PIM code contain work by Google Code-in students who worked on improving the KDE PIM code quality by addressing issues found by my KDE's static code analyser tool Krazy.

In just a couple of days the Krazy count of all three PIM modules combined (kdepimlibs, kdepim, kdepim-runtime) dropped by 465. This does not include the API documentation issues found by a different Krazy check and also being addressed by one of the GCI students.

Spotlight

The Spotlight intends to be the category where we point to interesting things that have been going on in the recent time, preferably in the week the Digest covers. Since this is the first of its kind, we break the rules and point to developments and events which have happened earlier and we think are worth of your attention:

Anne-Marie Mahfouf shared that Akademy-Fr took place in Toulouse on the 24th and 25th of November as part of Capitole du Libre. KDE was represented by a booth on Saturday. Kevin Ottens, Lambert Clara, Sébastien Renard and David Faure were present at the event. You can read Anne-Marie's report of the event at her blog.

The KDE e.V. turned 15 on November 27, 2012. Congratulations, and thanks to the founders and members for creating and supporting such a helpful organisation for the KDE community! In celebration of this event, you can read up about how it came to life, how the organisation grew and where it is today.

The successor of Plasma, Plasma2 made its debut painting with Qt5 without using QGraphicsView , and Marco Martin also allows us to take a look at the upcoming 'Air' theme for Plasma.

To support the development of Krita, Calligra-Suite's sophisticated painting and sketching application, the Krita foundation has been formed. Also, Krita Sketch, a version of Krita for touch interfaces (think tablets and alike) has been released. Additionally, there is a Krita competition going on, involving KDE's mascot, Konqi.

The filemanager Dolphin is on its way to version 2.2, Frank Reininghaus lets us take a glimpse of what to expect of next incarnation of Dolphin. Aurelian Gateau reports on the development of Gwenview. Both applications are going to be released with the upcoming KDE SC 4.10.

The first release candidate for KDE SC 4.10 has been announced, a little earlier this was the case for first RC of the office applications Calligra Suite of the upcoming Calligra Suite 2.6. While the final release of Calligra Suite may be with us this year, the stable KDE SC 4.10 is planned to be released by the end of January.

Statistics

Commits 1874 by 171 developers
Open Bugs 21133
Open Wishes 15802
Bugs Opened 326 in the last 7 days
Bugs Closed 315 in the last 7 days

Commit Summary

Module Commits
/trunk/l10n-kde4
187
 
/trunk/l10n-support
52
 
/branches/stable
40
 
/trunk/www
30
 
/krita/sketch
19
 
/trunk/extragear
13
 
/trunk/KDE
12
 
/tags/KDE
11
 
/trunk/playground
11
 
/src/Gui
10
 
Files Developer Commits
285
 
Laurent Montel
104
 
117
 
David Faure
41
 
111
 
Shantanu Tushar Jha
37
 
108
 
Andreas Cord-Landwehr
37
 
102
 
Aleix Pol Gonzalez
35
 
93
 
Gilles Caulier
33
 
99
 
Albert Astals Cid
33
 
81
 
David Edmundson
33
 
93
 
Dan Vratil
33
 
90
 
Peter Grasch
32
 

Internationalization (i18n) Status

Language Percentage Complete
Ukrainian (uk)
100%
 
Swedish (sv)
99%
 
Brazilian Portuguese (pt_BR)
99%
 
Estonian (et)
99%
 
Polish (pl)
97%
 
Dutch (nl)
96%
 
Spanish (es)
96%
 
French (fr)
94%
 
German (de)
93%
 
Italian (it)
92%
 

Bug Killers

Person Bugs Closed
Jekyll Wu
34
 
Ingo Malchow
22
 
Christoph Feck
21
 
Thomas Lübking
20
 
Matěj Laitl
19
 
Laurent Montel
18
 
Ben Cooksley
15
 
C. Boemann
14
 
Tom Albers
13
 
Frank Reininghaus
11
 

Commit Countries

Commit Demographics

Sex

Age

Contents

  Bug Fixes Features Optimization Security Other

Accessibility

[]     

Development Tools

[] []    

Educational

[] [] []   

Graphics

[] []    []

KDE Base

[] [] []   []

KDE-PIM

[] [] []   

Office

  [] []   []

Konqueror

     

Multimedia

[] [] []   []

Networking Tools

[] []    

User Interface

[]     

Utilities

[] [] []   []

Games

[]     

Other

     

There are 120 selections this week

Bug Fixes

Accessibility

Yash Shah committed changes in [simon] simonlib/simonvision/config/simonwebcamconfiguration.cpp:

Fixing webcam configuration crash when index becomes less than zero

Development Tools

Milian Wolff committed changes in [kdevplatform] /filetemplates:

Fix File Template Preview plugin to never do anything when hidden.

Not only did we do expensive string conversions for nothing, but we
also sometimes crashed when calling animatedShow on a hidden
KMessageWidget...

Morten Volden committed changes in [kdevplatform] /:

Fix regression introduced when refactoring the filtering of build output. The regression meant that lines that had passed one of the regex (and were clickable) were made to be not-clickable.

restores the behavior from before the refactoring, plus it make it visible to the user that those lines are clickable.

REVIEW: 107683
.

Milian Wolff committed changes in [kdevelop] projectmanagers/custom-buildsystem/custombuildsystemplugin.cpp:

Properly reconstruct serialized project root URL.

This fixes reading of custom defines and includes that where
configured for the project root.

The URL is saved as a relative string which is a dot "." for the root.
If we then reconstruct the URL we would get /some/path/. instead of
/some/path/ - and that is apparently a difference when it comes to the
consecutive isParentOf check.

Andreas Pakulat committed changes in [kdevplatform] shell/textdocument.cpp:

Fix activating documents with a non-empty range

This was broken with commit d77c94c1402916f8f00b02104f71187330548ecd which
replaced doc->setTextSelection with textView->setInitialRange in
documentcontroller.cpp without taking the extra logic from
TextDocument::setTextSelection into account. The setTextSelection function
not only sets the selection, but also sets the cursor which causes the
Kate view to scroll to the selected range. Without that the selection would
be set, but the view would not scroll leaving the user to think that the
activation didn't happen.

This affects at least the grepview plugin which tries to select the found
string in the occurrence that has been clicked upon.

Educational

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

Fix memleak.

Correctly remove all data structures when document is cleared.

Illya Kovalevskyy committed changes in [marble/kitchen] src/lib/MapViewWidget.cpp:

Fix planet order in planet combo box

Known planets first in specific order, afterwards moons and unknown
celestial bodies.
REVIEW: 107727

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

Fix resource leak in DocumentManager singleton.

This commit performs several necessary changes at once:
* move shared renderer to DocumentManager
* introduce DocumentManagerPrivate class as d-pointer
* changes the DocumentManager singleton initialization to the
Meyers singleton type

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 24 more) Revision f1f8b42...
Andreas Cord-Landwehr committed changes in [rocs] /:

Close simulation when closing project.

This prevents crash when a stepped simulation is interrupted at time
of closing.

Diffs: 1, 2, 3 Revision e3c67ea...

Graphics

Albert Astals Cid committed changes in [okular/KDE/4.9] core/textpage.cpp:

Do not ignore spaces on backwards search

This ports a change we made to the forward search 4 years ago...
7183c172c22933387359edee33755dc6b7b0af26 for more reference


FIXED-IN: 4.9.5

Benni Hill committed changes in [gwenview] app/preloader.cpp:

Fix for Bug 310891 - gwenview crashed during rotate image


REVIEW: 107667
FIXED-IN: 4.10.0

Fabio D'Urso committed changes in [okular] ui/pageview.cpp:
Benni Hill committed changes in [gwenview] lib/document/document.cpp:

Fix for Bug 282235 - Gwenview crashes after rotating picture


REVIEW: 107680
FIXED-IN: 4.10.0

Benni Hill committed changes in [gwenview] /documentview:

Fix for bug 297262 - Gwenview crashes when reloading a .png that,
when reloading, happens to be empty.


REVIEW: 107636
FIXED-IN: 4.10

KDE Base

Sebastian Gottfried committed changes in [kde-runtime] /declarativeimports/plasmacomponents:

QML Plasma Components: fix a bug in scrollbar anchoring

Scrollbars can only be anchored to the associated flickable if it is
their parent or they share the same parent. The plausibility check
for this condition had a bug exluding also the latter case. That's fixed
now.

David Faure committed changes in [kdelibs/KDE/4.9] kio/tests/jobtest.cpp:

Fix kio-jobtest on odd file systems.

Some file systems (i.e. btrfs) report 0 as file size for directories.
That caused this test to fail, as the total file size of the tested
files and directories fell below the tested threshold.

Change the threshold value to only cover the size of the files.
(cherry picked from commit dff93704fbf325dadf0b151f47d2b37d0120eb05)

Thomas Lübking committed changes in [kde-workspace] kwin/clients/aurorae/src/aurorae.cpp:

defer all member destruction to next event cycle


FIXE-IN: 4.10

Dan Vratil committed changes in [kde-workspace] plasma/desktop/applets/tasks/abstracttaskitem.cpp:

Fix orientation of the arrow indicating groupped tasks

REVIEW: 107608

Emmanuel Pescosta committed changes in [kde-baseapps] /src:

Fix Bug 304299 - Dolphin launches multiple instances of a program when multiple files are selected


REVIEW: 107305

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

Fix Bug 240820 - [Usability Bug] Handling Bad Filenames, dolphin gives unclear error message
Fix Bug 308597 - Regression: Renaming a file/folder to something that contains a "/" will result in several message boxes

Uses the same solution as Dolphin-Rename-Dialog does. (KIO::encodeFileName)



REVIEW: 107681
FIXED-IN: 4.9.5

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

Skip pax extended headers, to avoid seeing "." twice.

Use the same logic to skip pax global extended headers (added by
recent commit).

FIXED-IN: 4.9.5

David Faure committed changes in [kde-runtime] /:

Switch kio_trash to "use display name for copying", to fix bug 183403.

Increase kdelibs version requirement to 4.10.


FIXED-IN: 4.10

David Faure committed changes in [kdelibs/frameworks] kinit/kinit.cpp:

Better error message when an exe-or-plugin can't be found

This is clearer than "preparing to launch" (empty string) and
"Could not find 'kio_file' executable" (but there's no such thing)

Albert Astals Cid committed changes in [kde-runtime] kioslave/info/kde-info2html:

Make kio_info produce valid HTML

REVIEW: 105590

FIXED-IN: 4.10.0

Aurélien Gâteau committed changes in [kde-runtime] kioslave/sftp/kio_sftp.cpp:

Fix mixed sentences in error messages


REVIEW: 107700

Simeon Bird committed changes in [soprano/2.8] client/clientmodel.cpp:

Avoid crash on destruction of ClientModel if nepomuk was disabled during
the lifetime of the ClientModel.

Crash is also fixed with 690e59e13a applied.

REVIEW: 107639

David Faure committed changes in [kdelibs/KDE/4.10] kio/kio/job.cpp:

Fix listRecursive so that display names get parent dirs prepended too.

The list of names was d1/d2/file, and the list of display-names was just "file",
leading to flattening out directory structures when setting up kioslaves with
fileNameUsedForCopying=DisplayName.

Stefan Brüns committed changes in [kdelibs/KDE/4.10] solid/solid/backends/udisks/udisksopticaldrive.cpp:

Use correct signature for DriveEject method arguments

The previous commit added the "unmount" parameter as option for the
DriveEject method. It also inadvertently changed the method signature
of the call from "array of strings" to "string".

DIGEST: Fix ejecting CDs/DVDs when using UDisks backend. UDisks2 is not affected

REVIEW: 107686

FIXED-IN: 4.9.5

Harald Sitter committed changes in [kde-workspace/KDE/4.9] kcontrol/autostart/autostart.cpp:

make sure to use the same file name when replicating a desktop file

when replicating an existing desktop file also use the exactly same
entry name to enable users to override a global autostart (e.g. from
a distro)

previously the translated name was used.

(user visible names etc. remain working as expected, so are desktop files
replicated before this change)

https://bugs.launchpad.net/ubuntu/+source/kde-workspace/+bug/923360

David Faure committed changes in [kdelibs/frameworks] CMakeLists.txt:

Set lib variable to fix link errors

khtml/java/kjavaappletviewer.cpp:345: undefined reference to `KUserTimestamp::userTimestamp()'

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

lua: fix spell checking, and things and suff

Thanks to Davorin Učakar <davorin.ucakar at gmail com> for the patch!

FIXED-IN: 4.10

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

fix: Misleading/Broken popup when opening the same session twice

Thanks to Emmanuel Lepage Vallée for the patch!

KDE-PIM

Laurent Montel committed changes in [kdepim] kmail/kmstartup.cpp:

Fix Bug 296114 - Kontacts complains it is already running when restarting

from DrKonqi

FIXED-IN: 4.10


Lock file is not necessary now in akonadi.
We access to mail from resources which are able to be access by several
program.

Laurent Montel committed changes in [kdepimlibs] kmime/kmime_content.cpp:

Fix Bug 311267 - Final newlines from text attachments is lost

FIXED-IN: 4.10

Kevin Krammer committed changes in [kdepim-runtime] /:

Several EBN Krazy fixes

Fixing various issues found by the EnglishBreakfastNetwork's
code checker Krazy.

Submitted by Mohammed Nafees, completing
a Google Code-in task.


REVIEW: 107705
DIGEST: Google Code-in contribution

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 12 more) Revision ec58a89...
Kevin Krammer committed changes in [kdepim] /:

Several EBN Krazy fixes

Fixing various issues found by the EnglishBreakfastNetwork's
code checker Krazy.

Submitted by Kyle Morris, completing
a Google Code-in task.


REVIEW: 107712
DIGEST: Google Code-in contribution

Diffs: 1, 2, 3 Revision d56d105...
Kevin Krammer committed changes in [kdepim] /:

Several EBN Krazy fixes

Fixing various issues found by the EnglishBreakfastNetwork's
code checker Krazy.

Submitted by Kyle Morris, completing
a Google Code-in task.


REVIEW: 107721
DIGEST: Google Code-in contribution

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 9 more) Revision 751c088...
Laurent Montel committed changes in [kdepim-runtime] tray/global.cpp:

Fix Bug 288578 - Akonaditray segfaults when selecting "Make backup"

FIXED-IN: 4.10

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

qt5: fix building with Qt5's webkit (renamed module names)

Kevin Krammer committed changes in [kdepimlibs] /:

Several API docs fixes

Fixing various API docs issues found by the EnglishBreakfastNetwork's
code checker Krazy.

Submitted by Illya Kovalevskyy, completing
a Google Code-in task.


REVIEW: 107723
DIGEST: Google Code-in contribution

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 16 more) Revision 2e00895...
Kevin Krammer committed changes in [kdepim-runtime] /:

Several EBN Krazy fixes

Fixing various issues found by the EnglishBreakfastNetwork's
code checker Krazy.

Submitted by Mohammed Nafees, completing
a Google Code-in task.


REVIEW: 107719
DIGEST: Google Code-in contribution

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

Multimedia

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

fix assertation fails due to gstreamer reading from deleted readers

instead of deleting a read in setsource it is now deleted on setupsource
which is a callback from gstreamer when the new source is being actually
set up. in particular we may still be playing on stream1 when setsource is
called with stream2 (e.g. set while abouttofinish was in progress), so
previously stream1 would have been deleted while gstreamer was still
reading, now it is not.

also start a newly created reader right away as gstreamer may do probing
calls while we are still working in setupsource, so our reader needs to be
ready to handle those. starting asap is fine here as the setup is only done
once we start loading the source anyway (targeting playing/paused, so
technically statewise we are somewhere between stopped and playing).

Ralf Engels committed changes in [amarok] /:

Fix Empty collection when using remote mysql database

This patch marks the MountPointManager as finished when
DynamicCollection setting is set to false (in which case the
MountPointManager just returns device ids with -1)

See also http://amarok.community.kde.org/Dynamic_Collection


FIXED-IN: 2.7

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

fix playback of discs on multi-drive setups

from the playbin docs:
The device to use for CDs/DVDs needs to be set on the source element
playbin creates before it is opened. The most generic way of doing
this is to connect to playbin's "source-setup" (or "notify::source")
signal, which will be emitted by playbin when it has created the source
element for a particular URI.

so we are now doing exactly that.

gstreamer being the great software that it is does not mandate using the
URI to set the device (i.e. use it as MRL like every other framework in
the world), so setting the property is the only reliable way to achieve
this.

note that I have no idea if there is a way to check whether a property is
present on a gobject so I am simply setting it whenever the source is a
disc. feel free to improve that.

also the callback handler needs some serious refactoring

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

fix transit to next track & abouttofinish madness

- rename checkgaplesswaiting to hasnexttrack
- when the player emits endedstate and we have a next track -> continue,
otherwise emit abouttofinish and stop
- don't discard state changes when we have pending tracks
- when setNextSource is called when in stopped state, make sure we
go to the source right away as that would be caused by a timing issue
WRT queuing of signals, so libphonon wanted us to play that song before
the other finished, but due to timing we only get the song after we are
stopped

before putting this into 0.6 I'd like to have some statements that this
does not break any existing software! in fact I'd rather not put this in
0.6 at all...



REVIEW: 107118

Ralf Engels committed changes in [amarok] /:

Fix after adding slash previous one disappears in organize collection


FIXED-IN: 2.7

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

Raise Qt dependency to >= 4.8; raise kdelibs dependency to >= 4.8.4

...as agreed upon on amarok-devel ML [1], see the thread for reasons.

[1] http://mail.kde.org/pipermail/amarok-devel/2012-November/011218.html

DIGEST: Amarok now depends on Qt >= 4.8, kdelibs >= 4.8.4

Diffs: 1, 2, 3 Revision 45bd2c9...
Jekyll Wu committed changes in [kamoso] /:

Store and install kamoso.desktop with 755 permission

See https://bugs.kde.org/show_bug.cgi?id=304569#c3

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

Fix crash on rendering with some project profiles:http://kdenlive.org/mantis/view.php?id=2843

Networking Tools

Andrea Diamantini committed changes in [rekonq] /:

- Code style check (codestyle script round)
- restored CTRL + ENTER code
- applied Vedant's patch about (thanks!!!)


REVIEW: 107662
REVIEWED-BY: Tirtha and me

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 24 more) Revision a1b660d...
David Edmundson committed changes in [ktp-kded-module/kde-telepathy-0.5] contact-request-handler.cpp:

Fix potential infinite loop denying a contact

David Edmundson committed changes in [ktp-presence-applet/kde-telepathy-0.5] /:

Show status as "busy" only when connecting and not when changing presence

This makes it consistent with the contact list and AccountsKCM


REVIEW: 107653

David Narváez committed changes in /trunk/KDE/kdenetwork/kget/transfer-plugins/multisegmentkio/transfermultisegkiofactory.cpp:

INTEGRATION:/branches/KDE/4.9/kdenetwork/kget/transfer-plugins/multisegmentkio 1327894
Only create TransferMultiSegKio for new transfers or stored
transfers with factory information.

User Interface

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

Fix crash when trying to add a tab to an empty model

Utilities

Andrius Štikonas committed changes in /trunk/extragear/sysadmin/partitionmanager/src/util/helpers.cpp:

Fix Solid predicate generation.
Previously "partitionmanager /dev/sda /dev/sdb /dev/sdc" did not work.

Andrius Štikonas committed changes in /trunk/extragear/sysadmin/partitionmanager/src/gui:
Friedrich Karl Tilman Pülz committed changes in [publictransport] engine/gtfs/serviceprovidergtfs.cpp:

Fix empty departure targets for some GTFS providers

The trip_headsign field in trips.txt is optional, but used
as departure target.
If it is not available use the last stop of the route stop
list for departures (the first for arrivals) as
target/origin string. Fixes eg. nz_metlink.

Alex Fiestas committed changes in [kscreen/kded] kded/serializer.cpp:

Disable all NOT connected and enabled outputs

In the config file we only store information from the connected outputs
(which are the only ones relevants). So in order to make sure that no
funny stuff happens we have to specifically disable all the others (the
not connected ones).

Rex Dieter committed changes in [print-manager] libkcups/KCupsConnection.cpp:

fix excessive renew-related log spam

Games

Albert Astals Cid committed changes in [konquest/KDE/4.9] /:

Fix crash due to calling GameView::gameOver inside GameView::startNewGame

It happens if you are running computer players only
This is a bit of "a hack", the problem lies in that there's some eventloops
inside the inner parts of the code, and that can make that the game ends
before GameView::startNewGame actually reaches its end

The proper solution would be exotic and this patch seems "simple enough"
so let's go the "easy way"

Comes from SVN review 7013

Jaime Torres Amate committed changes in [knavalbattle] src/networkentity.cpp:

avoid crashes when non understood messages arrives from the network

when the received message is not understood, a MessagePtr() is
returned. There was no handle for a null Message (therefore, the crash)
Doing nothing with a null message, the crash is gone.
Should be in 4.9.5 and 4.10.

REVIEW: 107554

Features

Development Tools

Andreas Pakulat committed changes in [kdevplatform] outputview/outputdelegate.cpp:

Use a different color for informational items

Makes them distinguishable from warnings which is important since its a
different information level. I'm not 100% sure about using LinkText, the
other option would be ActiveText but its not really clear from the docs
which one would be better to use. The item is not really new or so, its
just clickable and has possibly important information.

BogDan Vatra committed changes in [android-qt/beta2] /:

On Android ICS+ make Roboto the default font.

Educational

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

More standard-like behavior.

Float item moving with left mouse button, no hover action except
adjusting cursor style, context menu has entries to toggle full/short
license and open about dialog.

Graphics

Gilles Caulier committed changes in [digikam] /queuemanager:

add new Batch Queue Manager Behavior option to handle RAW file in workflow : extract embeded JPEG or perform demosaicing

FIXED-IN: 3.0.0

Gilles Caulier committed changes in [digikam] utilities/queuemanager/views/assignedlist.cpp:

Batch Queue Manager : add the capability to assign more than one time the same tool to a queu to process

Gilles Caulier committed changes in [digikam] /queuemanager:

Do not use a map of tool with indexed list to process. include index in BatchToolSet container as well.
In Task class, clone tool without to use Qthread instance as parent and delete it when processing is done.
Remove unused methods into AssignedList class.
Prepare code to aceept more than one tool instance in list to process.

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

KDE Base

Dan Vratil committed changes in [kscreen] /:

QMLify OutputView

Remote QMLOutputView C++ binding class. All it's code
is now in OutputView.qml and OutputView is derived
from Flickable, so that the view can scroll when there
are too many displays.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 3 more) Revision 949c8b1...
Xuetian Weng committed changes in [kde-workspace] plasma/generic/applets/batterymonitor/contents/ui/BatteryIcon.qml:

change the percentage range of battery to make it look more natural

REVIEW: 107612

David Faure committed changes in [kde-runtime] /trash:

Generate nicer-looking display names, no trashId in front (e.g. "0-").


Doesn't fix the behavior on drag-n-drop though, yet.

Kevin Ottens committed changes in [kdelibs/frameworks] kdeui/dialogs/kdeprintdialog.cpp:

Port away from KDialog

Actually possible because of upcoming changes in Qt:
https://codereview.qt-project.org/#change,29254

Michel Ludwig committed changes in [kate] part/syntax/data/latex.xml:

Add support for the LaTeX environment (and command) 'minted'

Patch by Phil Schaf.

Albert Astals Cid committed changes in [kde-runtime] /:

Additional address formats for KDE locales

This patch adds address formats for a few countries (Argentina, Brasil and Spain) to KDE's locales. They are based on formatting recommendations found on the respective countries' post companies' websites.
REVIEW: 105564

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

Add a progress dialog to show the files that will be used

Using the WebMiner on a folder with a lot of files did slow down the
startup of the WebMiner. Now instead of "hanging" a progress dialog
is shown.

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

KDE-PIM

Grégory Oestreicher committed changes in [akonadi] server/src/intervalcheck.cpp:

Respect collection cache policy refresh interval for collection tree sync

REVIEW: 107709

Martin Klapetek committed changes in [libkpeople/mklapetek/toplevel_contacts] src/persons-model.cpp:

Clean the query results processing and add comments

This could still use optimizations though, loading ~1000 contacts
takes now roughly 3 seconds, which is not bad, but still too much.
Might be worthy doing this in a non-blocking thread and adding
the contacts to the model continuously. That would result in immediate
GUI visibility and also visible indication of data loading.

Laurent Montel committed changes in [kdepimlibs] /:

Use non-deprecated types and methods:

as David told:
"
WFlags -> WindowFlags (it's a typedef, and it's BC, nm says
QFlags<Qt::WindowType>)
toAscii -> toLatin1
fromAscii -> fromLatin1
"
As done in kdelibs

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 20 more) Revision c4480ef...
Martin Klapetek committed changes in [libkpeople/mklapetek/toplevel_contacts] /:

Method for adding nco:Contact into existing pimo:Person

The contacts are reparented automatically in the model
thanks to the resource watcher signals

Laurent Montel committed changes in [kdepim-runtime] /:

Use non-deprecated types and methods:

as David told:
"
WFlags -> WindowFlags (it's a typedef, and it's BC, nm says
QFlags<Qt::WindowType>)
toAscii -> toLatin1
fromAscii -> fromLatin1
"
As done in kdelibs

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 485402b...
Martin Klapetek committed changes in [libkpeople/mklapetek/toplevel_contacts] /:

Add IMAccountTypeRole for getting account type

This allows for setting account icons and display more
friendly account names like "Facebook Chat" or "GTalk"

Diffs: 1, 2, 3 Revision 5b63e50...
Laurent Montel committed changes in [kdepim-runtime] /:

Port to nepomuk2

Diffs: 1, 2, 3, 4, 5, 6 Revision 66b1437...

Office

C. Boemann committed changes in [calligra] words/part/KWPart.cpp:

So deleting shapes were not working since the part/document split

I had forgotten to do a connect. O well this fixes it

Oleg Kukharchuk committed changes in [calligra] /plugins/importexport/csv:

Implemented import csv data into existing table


FEATURE: Implemented import csv data into existing table
REVIEW: 107330
DIGEST: Kexi now can import csv data into an existing table

Multimedia

Shantanu Tushar Jha committed changes in [plasma-mediacenter] shells/newshell/package/contents/ui/mediacenter.qml:

Minimize player to top-right corner

Shantanu Tushar Jha committed changes in [plasma-mediacenter] mediaelements/mediaplayer/MusicStats.qml:

Networking Tools

Pali Rohár committed changes in /trunk/KDE/kdenetwork/kopete/protocols/jabber/libiris:

Jabber libiris - Added support for XEP-0115 hash attribute

Diffs: 1, 2, 3, 4, 5, 6 Revision 1328048

Utilities

Aleix Pol Gonzalez committed changes in [muon] /:

create a declarative plugin for libmuonprivate

moved a bunch of code from discover to libmuon

Diffs: 1, 2, 3, 4, 5 Revision 5783a95...
Alex Fiestas committed changes in [kscreen/kded] /:

Implemented almost all Serializer, ATM using static methods

Serialzier is the class that will store/restore settings from the
connected outputs.

The class is static right now since atm I don't have a clear case of why
it shouldn't be, but anyway it may change in the future.

Serializer::currentId:
Generates an id that will be used to either store or restore settings.
It basically identifies a set of connected outputs using the hash of
their entire edid. In the future we may change this to use another less
volatile data as id (edid hash may change if the monitor firmware is
updated).

Serializer::configExists:
Check if a config file exists for this set of monitor (currentId)

Serializer::config(const QString &id)
Returns a config for the passed id, opening the file where the json
is stored and merging it to the current config.

Serializer::saveConfig(KScreen::config *)
Gets a Config objects and save into a json file all the connected
devices, indicating the edid hash, currentMode, position and if they
are primary output.

We are NOT storing in which port the devices are connected, the idea
is that we won't care if you plug your TV in the HDMI or in the VGA
port.

Diffs: 1, 2, 3, 4 Revision 5b19e36...
Dan Vratil committed changes in [kscreen/plasma] /:

Set applet icon and hide the QML module from applets

Diffs: 1, 2, 3 Revision abc73a7...
Alex Fiestas committed changes in [libkscreen] /:

Add support for EDID to the Fake backend

The edid is base64 encoded, I seem to be missing some since the colors
are not parsed back to an EDID, but it works good enough for our use
case.

Diffs: 1, 2, 3, 4 Revision c76279d...
Alex Fiestas committed changes in [kscreen/kded] kded/serializer.cpp:

Store the mode info instead of the mode id, since we can't relay on it

The mode id may change as some test have demostrated alraedy, so we can't
relay on it to restore the config. Instead we are going to use the size
and the refresh and do a lookup ourselves to identify which mode we should
use.

The code is still ugly but hackeable, will make it better once it is
proven to work.

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

Add query tab to execute GTFS DB queries

Make table views sortable.

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

Added Generator, that will generate configs adjusted to the situation

Depending on different factors the ideal config is different, for example
depending if the device is a laptop, desktop, is docked, etc.

For that we need a class that will generate a config that works best with
every situation.

I don't like static classes, but it seemed to me like the most straight
forward design at this stage.

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

Add action to fetch providers from openDesktop.org

Use timetablemate.knsrc for TimetableMate, not publictransport.knsrc
from libpublictransporthelper (other install dir, upload category).

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision bd58049...
Alex Fiestas committed changes in [kscreen/kded] /:

Add Serializer class, that will store/restore configs

This class (which I will probably rename once I have a better name) is
the one that will store and restore configurations from and to files.

Diffs: 1, 2, 3 Revision 39b001a...

Optimization

Educational

Pino Toscano committed changes in [bookmanager] /:

fix and simplify the poppler search and usage

- drop the (braindead) FindPoppler.cmake module, just use the much simplier PopplerQt4 provided with kdelibs
(since only poppler-qt4 is used, all the stuff for xpdf headers is unneeded)
- use the right variables for include dirs (now taken into account) and libraries
- fix the #include's, <poppler-qt4.h> is enough when the poppler include dirs are used
- remove one uneeded poppler-qt4.h #include

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

KDE Base

Vishesh Handa committed changes in [nepomuk-core] cleaner/cleaningjobs.cpp:

CleaningJob: Clear out all the statements which do not follow the nrl:maxCardinality

We keep only 1 of those statements, the one with the oldest graph.

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

Package install and uninstall are now non-static async

Installation and uninstallation of packages is now done in an instance
of the package. The methods return a KJob* which can be used to track
progress and result. The real work is done in a thread in order to make
it possible to not block the UI.

Diffs: 1, 2, 3, 4, 5, 6 Revision 3d22ad5...
Aurélien Gâteau committed changes in [kde-runtime] /declarativeimports/core:

Document QML names for C++ classes suffixed with "Proxy"

Diffs: 1, 2, 3 Revision 08a6134...
Gabriel Poesia committed changes in [nepomuk-core] libnepomukcore/resource/resourcemanager.cpp:

Optimize ResourceManager::generateUniqueUri by not using SPARQL unions

generateUniqueUri used a SPARQL query using unions to determine if a
generted URI already existed. This can be done more efficiently using
the iri_to_id command, like DataManagementModel::createUri does it.


REVIEW: 107637

KDE-PIM

Laurent Montel committed changes in [kdepim] /:

Use non-deprecated types and methods:

as David told:
"
WFlags -> WindowFlags (it's a typedef, and it's BC, nm says
QFlags<Qt::WindowType>)
toAscii -> toLatin1
fromAscii -> fromLatin1
"
As done in kdelibs

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 82 more) Revision 59d986c...
Sergio Luis Martins committed changes in [kdepim] /:

Rework the way the default collection for the editor is chosen.

Order:
1. Try the view collection ( used in multi-agenda view )
2. Try the selected collection
3. Try the checked collections
4. Try the configured default collection
5. Return a invalid collection, the editor will use the first one
in the combo

Office

Łukasz Maszczyński committed changes in [kmymoney] /:

Refactoring of matching a transaction-under-import

This commit does not introduce functional changes (to my and reviewers'
best knowledge).

The parts of code in TransactionMatcher class responsible for finding a
match for transaction under import have been extracted to dedicated
classes: ExistingTransactionMatchFinder (searches for a matching
transaction in the ledger) and ScheduledTransactionMatchFinder (searches
for a matching transaction in the schedules.

Also some bits of transaction import process (MyMoneyStatementReader)
have been refactored.

REVIEW: 107137

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

Multimedia

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

Last.fm plugin: major rework of configuration and more

This work started as an attempt to fix bug 306134. I figured out that
the synchronous KWallet API is simply dangerous, and the async one must
be used. But that meant to make LastFmServiceConfig a "living" object
with updated() signal, which triggered refactoring of all its usage.

Users of LastFmServiceConfig now watch for its changes and should act
appropriately. The LastFmServiceConfig now has only one instance shared
between LastFmService and LastFmServiceSettings - I had to introduce
another shared library because KCM modules use separate library, silly.

Moreover, some extremely ugly things in Last.fm plugin got reworked to
me clean and maintainable, reducing code duplication.

Patrick, please tests whether this still builds on Windows, I hope I've
done KDE_EXPORT/KDE_IMPORT right, but I cannot test under Linux.

CHANGES:
* When configuring Last.fm plug-in, the changes are now applied
immediately in most places.

BUGFIXES:
* Fix suboptimal KWallet usage in Last.fm plugin.
* Fix crash in Last.fm plugin caused by sloppy KWallet usage.




FIXED-IN: 2.7
DIGEST: Last.fm plugin configuration reworked for smoother experience
CCMAIL: Patrick von Reth

Matěj Laitl committed changes in [amarok] src/EngineController.cpp:

EngineController: remove xine work-arounds

thanks to Harald for pointing to them.

Utilities

Aleix Pol Gonzalez committed changes in [muon] /:

Refactor FeaturedBanner code

Remove the Helpers class because it was only Featured stuff anyway.
Centralize all the featured data code in the FeaturedModel.

Diffs: 1, 2, 3, 4 Revision 2972c10...

Other

Graphics

Pino Toscano committed changes in /trunk/playground/graphics/okular/mupdf:

update to the current mupdf core

- update get-mupdf.sh to pull the mupdf code from git, and symlink cmake stuff in the checkout
- look for and use openjpeg (instead of jasper) and jbig2dec
- update the CMakeLists.txt for mupdf sources, with correct sources and removing the (obsolete?) font generation
- update the QMuPDF classes to the new fitz/mupdf pdf code: in general, there is much less code needed now,
although accessing Catalog stuff (like PageMode and the Info dict) requires using the mupdf internals

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 1328312
Gilles Caulier committed changes in [digikam] /queuemanager:

Make BatchToolsManager as singleton class
In BatchToolSet constainer, do not store tool instance, but tool name and tool group properties
Use everywhere BatchToolManager find method to get tool instance from name and group properties.
Call old unregisterTool implementation in BatchToolManager destructor.

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

KDE Base

Cedric Bellegarde committed changes in [kde-workspace] appmenu/menubutton.cpp:

Add shadow behind buttons

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

Start implementing Generator logic using TDD

First use case implemented is the most simple one, where we have only
one connected output. Result expected is to have the preferred mode
as currentMode.

Diffs: 1, 2, 3, 4 Revision 385bbf7...
Sebastian Kügler committed changes in [kdeplasma-addons] wallpapers/qmlwallpapers/wallpapersqml.cpp:

Change default animated wallpaper to haenau

David Faure committed changes in [kdelibs/frameworks] staging/CMakeLists.txt:

Other staging frameworks depend on ki18n, so move it up to fix compilation

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

Port OverlayWindow from XLib to XCB

With this change KWin core no longer depends on the XLib based
composite extension.

REVIEW: 107685

Diffs: 1, 2, 3 Revision e548313...
Aurélien Gâteau committed changes in [kdelibs/KDE/4.10] plasma/pluginloader.cpp:

Not being able to load an applet is worth a kWarning()

Especially since the error message is not exposed anywhere else.

Office

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

Add a setRangeStart method to compliment the setRangeEnd

it wasn't really intended to be needed, but there is a qt bug in QTextcCursor with tables,
so in order to work around that we need to be able to re-set the start position.

Dmitry Kazakov committed changes in [calligra] README.PACKAGERS:

Added a note for packagers how to build multi-arch build of Calligra

Multimedia

Shantanu Tushar Jha committed changes in [plasma-mediacenter] components/mediaplayer/MusicStats.qml:

Utilities

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

Don't use QApt::Package from libmuon

Use AbstractResource instead.
Also be smart enough so that we get to ask for the package name
only when it's asked for. The only place this API is used is
the ReviewWidget.

Diffs: 1, 2, 3, 4 Revision 20c2776...
Aleix Pol Gonzalez committed changes in [muon/muon-backends] /:

Move the LaunchListModel to muon installer

This way we can manage from there all the launch specific states. Now
the model is instanciated once at the beginning of the run and it will
be responsible for tracking all executables installations.
This commit also removes some API that wasn't being really used inside
the ApplicationBackend that was responsible for keeping track of the
launches list. This won't happen in the backend anymore.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 3f6e6c1...
Aleix Pol Gonzalez committed changes in [muon/muon-backends] installer/ReviewsWidget/ReviewWidget.cpp:

Remove QApt dependency from the installer/ReviewWidget

Make own implementations for upstreamVersion and compareVersion.
This will be also useful because we won't have only apt versions there.