|Commits||2305 by 136 developers|
|Bugs Opened||233 in the last 7 days|
|Bugs Closed||180 in the last 7 days|
|Iñigo Salvador Azurmendi||
|Aleix Pol Gonzalez||
Internationalization (i18n) Status
|Brazilian Portuguese (pt_BR)||
|Albert Astals Cid||
There are 58 selections this week
Support the syntax for class member access on instantiation.
This adds support for syntax like (new Foo())->bar() as introduced
in PHP 5.4.
The bug, that ($a)-> still offers completion even though it is
invalid syntax (stupid PHP) remains though.
Evaluate macro expressions.
only show the string formatting items when full completion is used
Practical testing shows it's just too intrusive to always show it.
Most strings which you type don't actually need it so it's annoying when
it's always there.
The problem is that this makes the feature quite undiscoverable; I'm not
sure how to fix that.
Fix support for PHP namespaces.
Make sure use declarations actually find their original declarations
and implement lookup for definitions within the same namespace but
in a different file.
Also handle name conflicts.
Show country code of placemarks in brackets (if known)
Helps distinguishing search results of cities with equal names
Fixed imgqsort huge memory leak
Fix broken scrollbar when opening remote files
Acked by Christoph
Allow windows to specify that they should not get animated on window close
By setting the X property _KDE_NET_WM_SKIP_CLOSE_ANIMATION to 1 a window
can request to be excluded from any close animation. This property is
read in Toplevel, so that it is available to both Client and Unmanaged.
If the window has this property set the Scene suppresses the paintWindow
loop of the Deleted. Thus no effect needs to be adjusted. But an effect
using drawWindow directly would still be able to render the Deleted as
there is no suppression.
Furthermore the property is passed to the EffectWindow so that an
Effect can make use of this functionality and not start the animation
in the first place.
Backported from 9497b4ddb681ac50dbe9c015e05a3f12fd496da8
dbusmenu is async: systrays will race to show menu
don't show a menu if __processClick happened more than one second ago.
this makes the systray the did not generate the click to ignore the menu ready signal.
It's a pretty bad solution, it would need something better.
Fix XML indentation after self-closing tags
The message that appears after loading, if lines have been wrapped because of being longer than the configured limit allows now to temporarily raise the limit and reload the file. Once there are working remote io-slaves this has to be tested if it also works in that case. For local files it works
Remove ObexSession from m_sessionMap when the object is destroyed
merge buffer_age render into general render code
avoiding the blocking swapinterval detection causes
issues in the timing strategy and prevents protection
against CPU overload on the nvidia blob
net: Connect to the network even when the QtBearer is missing
On Gentoo, the dev-qt/qtbearer package was previsouly not properly added to
RDEPEND, which resulted in people not having it available. This resulted in
Trojita asking Qt to open a network session whose configuration was not actually
valid, which failed (no surprise on that one). Unfortunately, this error was not
user-visible at all, unless they opened the debug log themselves (and we already
know that nobody does that -- I wouldn't do it, either).
This patch adds a speculative shortcut to the network session management -- if
Qt claims that there is no configured network profile, we will assume that it is
wrong and try to connect anyway.
In addition, errors related to the network session establishment are now
communicated properly to the user.
Thanks to Stefan de Konink (skinkie on IRC) for a bugreport.
agendaview: Don't crash when reselecting a deleted item.
before fillAgenda() recreates all agenda items it first stores
which one was selected, to re-enable the selection afterwards.
There might be cases where d->mAgenda->lastSelectedItemId() doesnt
React to collection changes that cause a collection to match a filter.
Some obvious cases were:
* if you create a collection in kmail it is not displayed until kmail is
restarted (the mimetype arrives via a dataChanged signal)
* kolab folders were visible in kmail until restarted
Those cases are now properly handled by adding/removing the collection as
Clear cached queries before closing database connection
This works around a crash in QPSQL driver in Qt 4, where destroying QSqlQuery
after QSqlDatabase connection has been closed apparently leads to a crash.
We now clear all cached QSqlQueries belonging to the same thread as the
DataStore being destroyed before it closes the connection.
make it possible to manually select untrusted PGP keys
Fixes a bug in method "selectKeys", when manually selecting one or more
keys which are not marked as trusted. Method "selectKeys" is only called
from method "getEncryptionKeys" in lines: 1656, 1696
(patch written by kolAflash, sponserd by me)
Fix the crash when using multihand tool with some complicated brushes
Right now the brush server returns the pointers to the brushes instead
of the copies of them, so when changing its parameters, the change is
shared among all their users. For now it is an acceptable behavior,
because even the Multihand Brush Tool uses the same brush for all the
"hands". But we should ensure that we don't reset internal state of
the brush when reloading it with the same config options.
: Make the saturation slider behave
Patch by Wolthera. Thanks!
: Fix merging with layer below
Merging with a layer below with low opacity or with inherited alpha now
works fine in more situations.
Abnormal blending mode are still not working properly.
Merging a layer with inherit alpha on over a layer without this option
may still give too much pixels, that should be transparent.
Patch by Nicolas Brack. Thanks!
Get sure fast typing work!
(PS: Many thanks for this, Mikhail...)
Add debug support to class Parser, Lexer and PreprocessLexer.
This should help to find cpp parse problems easier.
Debug support can be enabled for several classes through the debug window (STRG-D).
Make it possible to (de)serialize problems from/to disk.
This patch is by far too huge to get this minor feature working.
The amount of required boiler plate code is amazing. Furthermore
it was very tough to get this working with the existing usage-pattern
of KSharedPtr<Problem>: When one would naively use that on DUChainBase
items you'll get nasty crashes and double deletions when these items
where deserialized from disk and point to mmapped memory regions.
This patch seems to work within the current framework. Yet it is
quite ugly in my opinion. Still, the best I could do.
What we do now is essentially to always copy the problems from disk
and never leave them pointing to mmapped regions.
New declarative based assistant.
This patch implements a new widget for the code assistant,
which is more flexible in what it looks like and how it behaves.
It is placed inside the editor widget instead of at the bottom,
to avoid covering openin toolviews. It adjusts to the user's
editor colors. By default, it's at the top of the view, since
I think it will cover interesting code less often; when you
scroll to the very top, it jumps down to avoid covering text
at the top.
Showing the widget is slightly animated; but just slightly
to avoid being too disrupting. Sames goes for the colors, they
are deliberately just slightly different from the colors used
in the editor to avoid blinking.
Make it possible for VCS plugins to integrate with revision
Makes it possible to the VCS Plugins to provide the patch instance
that will be used instead of having it created.
Also it makes it possible for those patches to provide further
information like an additional patches or actions()
Provide a git patch source that knows about staging
This way we can do nice things like choosing what parts of the change
set we want to commit and which we want to leave.
integrate a decent statusbar
build plugin: add support for Intel icpc error messages
The format looks a bit different, an example is included in the
For gcc users still only one regex will be tested (after the first successfull one).
Intel users will have a bit more overhead.
I didn't measure it, but now the regex is checked only once, and after
that no additional searching in the string is done anymore, so it may
be even a bit faster.
double click in empty space of tab bar crates new empty document
line graphs: new 'textRole' property
Bar graphs have it, so line graphs should, too. The labels for the
datapoint are displayed directly beneath them, if a role is set.
Add default OSD to our default look&feel package
The OSD features just an icon and (a progress bar OR a text). It uses
standard Plasma components for drawing things, Marco has on his todo
list to turn the progress bar black, will look better when that's done.
When the OSD is showing progress, no text is shown (that's part of the
QML implementation and can be changed by the look&feel package).
A baloo search plugin for akonadi.
Start to implement gdrive support
Draft a very generic SearchQuery class
SearchQuery holds SearchTerms and represents a query for Akonadi SEARCH command.
It can be (de)serialized into a simple JSON structure.
A subclasses of SearchQuery should be created with predefined key and simple API
to set the conditions, for example EmailSerchQuery::sender(QString, Condition).
Also the unittest is very basic and could use a bit of extension.
Share link implemented
Port ItemSearchJob to new extended Akonadi SEARCH command syntax
The SEARCH command now has more parameters and expects query in JSON
format (the new 'standardized Akonadi query language'), represented
by SearchQuery class.
Methods accepting QString with SPARQL have been deprecated and should
be removed in KF 5. Instead, methods that accept SearchQuery were added.
Add support for interval refresh of Google calendars and contacts
The interval (in minutes) can be configured in resource settings dialog.
The resource will then regularly check for changes and updates on the
The feature is disabled by default.
Change selection outline decoration
The old selection outline draw method was implemented using the
technique of Bill Atkinson. This method has the disadvantage of not
looking like marching ants with selection borders that aren't parallel
to the coordinate axes.
The new method uses a QPen with a dash pattern to draw the ants, so they
are always displayed as dashes, no matter the angle that borders has.
It is draw in two passes. The first one uses a QPen configured
to draw the selection outline in white. Then, the selection outline is
draw again above the white outline, but this time using other QPen
configured to draw the ants in black.
Also, the outline is drawed without antialiasing.
Increase the lookahead to 25 frames.
MLT can now handle larger lookaheads without adding parameter lag,
and larger lookahead means smoother playback, especially when we
go to a new transition or effect that needs new Movit shaders compiled.
Add outputOnly property to PlasmaCore.Dialog
The outputOnly property allows to specify that the dialog should not
accept any input. Thus it's an output only window which supports click
through. This is obviously platform specific and so far it is only
implemented for the X11 platform using the shape extension.
The input shape needs to be set once the window is visible and thus
the functionality is bound to the visible changed signal. The code
ensures that the required shape extension version is present and only
fetches it once.
Get rid of more obsolete, non-functional code.
This time it's the whole broken, un-implemented DUChainObserver
infrastructure which is simply not fed with any information...
This also shows once more that the classes outline plugin really
needs some love...
Port handling of include paths to Path API.
This greatly reduces the amount of conversions required and thus
speeds up parsing a lot.
Optimize qHash(Path) to not allocate any memory.
We do this by leveraging KDevHash which we feed with the individial
segment's qHash values.
0.00077 msecs per iteration (total: 51, iterations: 65536)
0.00048 msecs per iteration (total: 64, iterations: 131072)
So about 38% faster.
Allow abbreviation matching in quickopen
Old benchmarks before/after:
Before: 4.6 msecs per iteration (total: 74, iterations: 16)
After: 5.4 msecs per iteration (total: 87, iterations: 16)
Before: 2.9 msecs per iteration (total: 94, iterations: 32)
After: 7.3 msecs per iteration (total: 59, iterations: 8)
Before: 3.1 msecs per iteration (total: 51, iterations: 16)
After: 3.6 msecs per iteration (total: 58, iterations: 16)
Keep KWin responsive while loading all effects
Loading all effects during startup can take some time and during
that time the screen is frozen as the loading blocks the compositor.
This change doesn't load effects directly but puts them into a queue.
The loading is controlled by invoking the dequeue through a queued
connection. Thus we get a firing compositing timer in between and can
ensure that a frame is rendered when needed and also react to X events
during the loading.
 On my high-end system the set of effects I use take about 200 msec
Rework/retune puzzle loading. Save generated puzzle. Add scene margin.
Used to have a scene rect change per piece: now there should be one per
scene. Loading seems to go much faster, but there is still work to do
in co-ordinating preview loading, running the loading widget, loading
pieces, positioning pieces and bringing up the final view cleanly.
The generated puzzle is saved so that the user never gets a re-shuffle
if he/she has not started the puzzle yet. The scene margin keeps the
ConstraintVisualizer (ie. the resize handles) clear of the pieces.
Start porting to frameworks, ported the root CMakeLists.txt file
Import the WebP image I/O code from kde-runtime
The plugin export mechanism has been patched up (including the addition
of the JSON file), and the FindWebP.cmake file is new.
Writing is currently disabled, as it produces broken images.
Autotests are generated using the cwebp and dwebp utilities distributed
with the libwebp reference library.