Issue 308
6th October 2013 by KDE Commit-Digest TeamContributors
Giacomo Barazzetti
Alex Fikl
This Week...
Statistics
Commits | 1698 by 139 developers |
Open Bugs | 21180 |
Open Wishes | 15892 |
Bugs Opened | 283 in the last 7 days |
Bugs Closed | 217 in the last 7 days |
Commit Summary
Module | Commits |
/trunk/l10n-kde4 |
146
|
/branches/stable |
97
|
/trunk/l10n-support |
58
|
/kwin/kcmkwin |
40
|
/server/lib |
35
|
/generic/applets |
20
|
/server/test |
18
|
/trunk/www |
18
|
/messageviewer/adblock |
17
|
/plasma/generic |
12
|
Files | Developer | Commits |
405
|
Laurent Montel |
145
|
261
|
Aaron J. Seigo |
89
|
213
|
Sebastian Kügler |
72
|
192
|
Martin Gräßlin |
64
|
156
|
Marco Martin |
52
|
90
|
Aleix Pol Gonzalez |
30
|
78
|
Sergio Luis Martins |
28
|
72
|
Boudewijn Rempt |
24
|
69
|
Albert Vaca Cintora |
24
|
72
|
Burkhard Lück |
24
|
Internationalization (i18n) Status
Language | Percentage Complete |
Ukrainian (uk) |
100%
|
Swedish (sv) |
99%
|
Brazilian Portuguese (pt_BR) |
99%
|
Polish (pl) |
98%
|
French (fr) |
98%
|
German (de) |
97%
|
Dutch (nl) |
97%
|
Spanish (es) |
97%
|
Estonian (et) |
94%
|
Galician (gl) |
91%
|
Bug Killers
Person | Bugs Closed |
Jekyll Wu |
39
|
Christoph Feck |
16
|
Thomas Lübking |
16
|
Laurent Montel |
12
|
Frank Reininghaus |
11
|
Myriam Schweingruber |
9
|
Julian Seward |
8
|
Boudewijn Rempt |
8
|
Andi Fischer |
7
|
Albert Astals Cid |
6
|
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 52 selections this week
Bug Fixes
Development Tools
Improve plugin description(debugging plugins), which is shown in the About dialog.
Reuse the wording from the .desktop file which is more helpful.
Fix multiple association widgets for single foreign key constraint.
Association labels and lines for foreign keys were duplicated each time an
entity constraint was saved. This was due to 'findAssocWidget' using the wrong
entity to find the association (i.e. the entity not holding the constraint
attribute).
KDE Base
Avoid ungrab on already-destroyed delegate by queueing signal.
Show the right version states for expanded items.
FIXED-IN: 4.11.3
REVIEW: 112980
Make sure that removeExpandedItems() also removes filtered items
This fixes the problem that filtered child items in Details View may
reappear when switching the view mode and the clearing the filter.
REVIEW: 112962
FIXED-IN: 4.11.3
Fix rare out-of-bounds list indexing when inserting launchers.
Ensure to not clip windows when painting the cube
FIXED-IN: 4.11.3
fix qreal!=double regression
Enable compilation of nepomuk-core on mac
REVIEW: 112852
KDE-PIM
IMAP: detect UIDVALIDITY changes when they happen while a mailbox is already selected
No real-world IMAP server shall do this, ever, and expect the clients to work
well. That said, clients absolutely have to handle this reasonably. Given that
no server is known to do this (apart from an old version which does this at most
once for a user for reasons related to delayed mailbox allocation), it seems
acceptable to simply disconnect in this case.
Yes, it might be possible to reconnect to the mailbox. However, verifying that
all pending requests are killed reasonably is too much work for a condition that
no Trojita user will ever see, hopefully.
REVIEW: 113109
Disconnect session pool manually in ImapResource destructor
Otherwise the pool is disconnected when destroyed from QObject destructor.
Disconnecting while there's a task pending in ResourceScheduler leads to
calling QObject::invokeMethod() on the same QObject, which crashes, because
some of it's data has been already destroyed.
FIXED-IN: 4.11.3
Do not include the @blah.com when matching contacts
REVIEW: 112988
Fix Bug 322666 - Misleading "Moving messages to trash failed. Please verify your trash in your IMAP account and retry." message
FIXED-IN: 4.11.3
Fix Bug 323246 - When pasting URLs the text should say "Add URL into Message as Text" instead of "Add URL into Message Text"
FIXED-IN: 4.12
Map QString to text instead of Bytea with PostgreSQL backend
It's what suggested by QTSql.
It also happens to fix the recent issues raising around '\SEEN' errors
in SQL queries. It was visible because QTSql somewhat improve the postgresql
driver, and so... akonadi revealed its own bug.
REVIEW: 112976
FIXED-IN: 1.10.3
Check plugin loaded correctly before adding to the list of plugins
This occured on broken installs where the .desktop file was installed
but the .so file was missing
Office
Fixing Bug 322880: Saved Krita 2.6 color adjustment filter doesn't read properly in 2.8pre-alpha
Don't assert when storing a second deactivated sensor in the cache
This removes an assert that checks whether a deactivated
sensor is stored another time. This happens when you check,
modify, uncheck a sensor for one preset, then go to another
preset of the same paintop type that has that sensor activated
and you deactivate it.
The problem seems to be, afaict, that we try to remember
the settings of deactivated sensors, but do that per paintop
instance, not per preset.
There are two proper solutions:
* remove the caching of custom settings for deactivated sensors
* save customized but deactivated sensors to the presets
The question is, which one shall it be?
Do not assert or crash when passing empty list of buttons
Do not try to set a resource if the selection changes on deletion
With some versions of Qt, deleting a list widget changes the selection,
and that can cause a crash if we're trying to set the newly selected
item on an already delete KoCanvasResourceProvider.
So, make sure that the KoResourceItemChooser and KoResourceItemView disconnect
themselves completely on teardown.
Multimedia
Don't crash when trying to create the singleton out of a qapp parented AO
rationale: qapp kills q_global_statics (such as our backing object manager
thing) BEFORE its own children, when the children then get destructed
everything explodes because it tries to create a PASupport which tries
to mindlessly access an eventloop that is no longer present and everything
explodereds and there be brains and blood all over the place
Networking Tools
always reload now playing text on settings change
REVIEW: 112992
FIXED-IN: 0.7.0
[ #30848 ] Make TLS and SRTP feature work again
It was broken since an undocumented daemon syntax change, probably a
long time ago (years?). All security feilds are now validated, everything
is saved correctly and there is now additional protections against this
happening again.
Utilities
Fix crash on drag&drop inside the wallet editor
FIXED-IN: 4.12
Don't show error dialog when key change is successful
When editing a key, an error dialog is always shown, even when the
change is successful.
This is because KGpgKeyTransaction set initial result to TS_MSG_SEQUENCE,
but it does not set it to TS_OK when GPG returns GOT_IT (success)
REVIEW: 113032
FIXED-IN: 4.11.3
Features
Development Tools
Improve plugin description, which is shown in the About dialog.
Reuse the wording from the .desktop file which is more helpful.
REVIEW: 113030
Add command line support for selecting the containment and the plugin
KDE Base
Check processes running when closing window
Instead of just counting the number of open sessions check what
processes are actually running in them when displaying the confirmation
dialog when closing a window.
[aurorae] Plastik theme transits to QtQuick 2
Welcome back decoration KCModule!
And with that all kwinkcms are ported modulo kwincompositing which
is going to be replaced.
[kcmdeco] Use QtQuick2 for the decoration preview list
This introduces quite some changes. We cannot include a QQuickView
directly in the QWidget based UI as a replacement for the
QDeclarativeView used before.
Instead a QScrollArea is used as replacement for the view and a
QQuickView is embedded into a widget container in the scroll area's
view port. This allows us to keep the existing semantic of having a
native scroll bar synced with the list view. It might be an idea to
change this to QtQuickControls in future.
As the list view is now only inside the scroll area we do not need to
pass the slider width to the root context and can by that more easily
calculate the width of one decoration.
Welcome back KWin screen edges KCM
Screenedges KCM is adjusted to build against Qt5. Most notable
changes:
* no longer links kworkspace as ScreenPreviewWidget got moved into
the KCM
* ui file is adjusted to not crash (see git log of kcmdesktop)
Welcome back KCM to configure Alt+Tab and friends
Welcome back kwinoption config modules
* Actions
* Advanced
* Focus
* Moving
* Window Behavior
Port systemmonitor DataEngine
REVIEW: 113072
KDE-PIM
Fetch full mail headers when not using disconnected IMAP
Using Headers scope will fetch only limited subset of mail headers, which
means that filters using headers not included in this set (like List-Id)
won't work, until the message is opened in KMail and full body is fetched
from the server.
Fetching all mail headers during RetrieveItemsTask will download slightly
more data, on the other hand we get perfectly working mail filters.
FIXED-IN: 4.12
Office
FEATURE:Export HTML and ODT from tables
bring back preset proxy adapter, now the preset strip only shows preset for the paintop
REVIEW:112947 - Interest category and amount disappear
when new fee entered in Dividend. Also, fixes for KEditWidget
visibility issues.
Make the openpane a drop target
For now, you can only drop one (1) file, not multiple, because of the
kpart/kdocument braindeadness...
Multimedia
implement attemptautoplay mechanic
iff MC::autoPlayTitles is enabled we catch EndedStates and try to
increment the title index by one. happens until we get from such an attempt
into playing|paused = success OR error = failure OR new source (which
aborts it all via resetMembers).
funny enough the title count supplied by the MC is always 0 because we
actually do not know. good stuff.
getting sick of these workarounds, slightly...
User Interface
*ADDED: Preliminary submenu support.
This is a first attempt at implementing submenu support. The parsing
code et al. is just fine, but the QComboBox+QTreeView combination leaves
a lot to be desired.
Specifically, I couldn't find a proper way to match the currently
selected item in the view with the corresponding QModelIndex. QComboBox
only advertises the current text and index, which is not enough for a
unique '1-1' mapping. The current QPersistentModelIndex is hidden in the
private implementation, no can do about it.
Perhaps a different widget combination could yield better results.
Optimization
KDE Base
Save memory and time in KFileItemModel by lazy-loading the "ItemData"
To reduce unnecessary memory comsumption and CPU usage, we only fill the
QHash<QByteArray, QVariant> if the methods data(int) or setData(int) are
called for the corresponding index, or the data is necessary for sorting
the model.
According to my tests, this patch reduces the memory usage when loading
a folder with 100,000 items by 17% in Icons View, and by 26% in Details
View.
REVIEW: 112725
KDE-PIM
Parser: speed up atom parsing
This patch cuts the time spent in getAtom from 7.34% of the total runtime to
4.47%, as measured by the testFlagReSyncBenchmark (valgrind, clang 3.3). This
speed up is obtained by ignoring the high-level API of QByteArray and working on
raw char * instead.
REVIEW: 113118
Use pre-created instances when comparing flag names
The goal here was to elliminate in-place construction of QString instances only
to be destroyed later on when they go out of scope. This change cuts the time
spent in the isMarkedAsRead when running the testFlagReSyncBenchmark test from
2.69% of the total runtime down to 0.57% (clang 3.3). It might be interesting to
see how forcing the comparison to *always* hapen *only* on QString::d would end
up :), but it's rather tricky because that's a private member, of course. That
said, soemthing along the lines of [1] (inspired by [2] which is inspired by
[3]) *might* actually work here.
Tests which attempted to use std::binary_search ended up rather poorly; it seems
that clang 3.3 was not happy enough to inilne the various std::advance and
iterator_traits calls.
[1] https://gist.github.com/dabrahams/1528856
[2] http://bloglitb.blogspot.cz/2010/07/access-to-private-members-thats-easy.html
[3] http://stackoverflow.com/a/3173080/2245623
REVIEW: 113120
Reuse the same Incidence pointers onDataChanged.
On dataChanged we get a new Item with a new payload, and we store
that item in mItemsById map. That payload will have a different
raw pointer than the one we already have internally, so
update the payload.
Reduces memory consumption.
Office
Improve performance for gmic filters
o don't change the input layer colorspace to float 32-bit
o convert pixels using numContiguousColumns buffer
o simplify KisGmicSimpleConvertor
o add benchmarks for round-trip conversion
- QImage -> gmic -> QImage
- KisPaintDevice -> gmic -> KisPaintDevice
o benchmark conversion to and from gmic separatly
o do not bitblt, copy pixels directly to input layer for now
Improve performance and stability of gmic
o add benchmarks for fast method converting Krita layers to gmic
o optimize converting Krita RGBA layers to gmic layer and back to Krita layers
KisGmicBenchmarks::testConvertToGmic(): 6,673 msecs
KisGmicBenchmarks::testConvertFromGmic(): 7,149 msecs
KisGmicBenchmarks::testConvertToGmicFast(): 59 msecs (113-times faster)
KisGmicBenchmarks::testConvertFromGmicFast(): 154 msecs (46-times faster)
Slow method with LCMS2 is used when the colorspace is different from RGBA.
Optimization is implemented as color-transformation that only scale
RGBA colorspace depth to float.
Now is the performance in pair with g'mic for gimp plug-in
o fix crash when closing gmic widget
o add more unit tests converting gmic-krita conversions
o add simple feedback that gmic filtering is done:
- window title contains information about running time of gmic filter
Better performances by avoid to refresh autocompletion on widgets after light transactions
Other
KDE Base
remove unused headers
fixes build when using newer networkmanager / kde-workspace as a base
Port ksgrd library to KF5
REVIEW: 113056
Multimedia
Print playlist download errors to the debug log.