|Commits||1698 by 139 developers|
|Bugs Opened||283 in the last 7 days|
|Bugs Closed||217 in the last 7 days|
|Aaron J. Seigo||
|Aleix Pol Gonzalez||
|Sergio Luis Martins||
|Albert Vaca Cintora||
Internationalization (i18n) Status
|Brazilian Portuguese (pt_BR)||
|Albert Astals Cid||
There are 52 selections this week
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
Improve plugin description(debugging plugins), which is shown in the About dialog.
Reuse the wording from the .desktop file which is more helpful.
fix qreal!=double regression
Show the right version states for expanded items.
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.
Avoid ungrab on already-destroyed delegate by queueing signal.
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.
Fix Bug 323246 - When pasting URLs the text should say "Add URL into Message as Text" instead of "Add URL into Message Text"
Do not include the @blah.com when matching contacts
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.
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.
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
Fix Bug 322666 - Misleading "Moving messages to trash failed. Please verify your trash in your IMAP account and retry." message
Do not assert or crash when passing empty list of buttons
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?
Fixing Bug 322880: Saved Krita 2.6 color adjustment filter doesn't read properly in 2.8pre-alpha
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.
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
always reload now playing text on settings change
[ #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
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)
Fix crash on drag&drop inside the wallet editor
Add command line support for selecting the containment and the plugin
Improve plugin description, which is shown in the About dialog.
Reuse the wording from the .desktop file which is more helpful.
Welcome back KCM to configure Alt+Tab and friends
Welcome back kwinoption config modules
* Window Behavior
Welcome back KWin screen edges KCM
Screenedges KCM is adjusted to build against Qt5. Most notable
* no longer links kworkspace as ScreenPreviewWidget got moved into
* ui file is adjusted to not crash (see git log of kcmdesktop)
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.
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.
bring back preset proxy adapter, now the preset strip only shows preset for the paintop
FEATURE:Export HTML and ODT from tables
REVIEW:112947 - Interest category and amount disappear
when new fee entered in Dividend. Also, fixes for KEditWidget
Make the openpane a drop target
For now, you can only drop one (1) file, not multiple, because of the
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...
*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.
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
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
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.
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.
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  (inspired by  which is inspired by
) *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
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
remove unused headers
fixes build when using newer networkmanager / kde-workspace as a base
Print playlist download errors to the debug log.