|Commits||1665 by 139 developers|
|Bugs Opened||232 in the last 7 days|
|Bugs Closed||171 in the last 7 days|
|Iñigo Salvador Azurmendi||
Internationalization (i18n) Status
|Brazilian Portuguese (pt_BR)||
|Albert Astals Cid||
There are 47 selections this week
Fix vertical jump of floating text widget after loading from file.
When moving the text of a sequence diagram message the first time after
loading from file, it jumps temporary vertical above the object widget.
(cherry picked from commit 3c05ef3ed875ec72fb2307e3cdc1a1aba0fb8520)
Fix issues with sequence diagram UR and clipboard
This was regression introduced in the recent UR changes (c4e71ef).
Summary of fixed issues:
* crash when pasting sequence diagram
* crash and other misbehaviour on UR message/object widget actions
* pasted widgets were added to the document twice (duplicate widget elements
in saved XMI) - happened with all diagram types
* extra: undo removing an object widget did not restore the connected messages
* precondition widgets were never included when pasting a sequence diagram
Fix crashes due to Problem serialization.
This is a major refactoring of the initial problem serialization
code as introduced by 0c2eb5c70c1.
We now add "proper" support for serializing data items which inherit
QSharedData in the top context file, i.e. TopDUContextDynamicData.
Shared data items are special, as in order to keep the expected
invariants we deviate from other items behavior when serializing:
1) When an item is serialized, we do not change the d_ptr of the
Item, i.e. the data will still point to the dynamic data and never
to the constant serialized data.
2) When deserializing, similar to above, we make the item dynamic
instantly such that the Item is not pointing to the constant data.
This is required in order to prevent double deletions or crashes
due to use-after-free when a shared data pointer outlives the
"parent" TopDUContext. When that one is deleted, or saved to disk,
we previously deleted items (as we assumed to have ownership), and
unmapped the data - thus shared data pointers must never point to
the mmapped data regions.
While complicated and big, I think this patch is cleaner than my
initial implementation. And since the previously added test now
passes, I'm confident this is an improvement. Memory is also still
cleaned up as before.
Fix grade computation and box highlighting
Fixes three issues in 3-right-answers mode:
1. Alternative learning mode: the next grade box lighted up, even though the
question hasn't been answered correctly thrice consecutively
2. For yet unlearned words: if user answers correctly the first time, the grade
should increase from 0 to 2. Reasoning: 0 to 1 for having learned the word,
and 1 to 2 for correctly answered.
3. Grade from 0 to 1 was not increased correctly when user answered it correctly.
In case the word is answered correctly once, the next occurrence of the same
word doesn't have the grade 1 box lit up. Starting a new session without
answering thrice or answering wrong, results in the word being marked as
Deafult for not executing kwalletmanager once a wallet is open
Given that in 4.13 we want people to use pam to open the wallet it
makes little sense to execute the wallet automatically.
Other commits changing the default have been pushed to kwallet and
set highlightwindows inactive while screen locked
Use Q_OS_UNIX instead of HAVE_X11 to determine the platform we are on
We cannot properly determine the windowing system platform on unix
like systems in kprotocolmanager as it's not linking gui. Thus we
don't know whether we are on X11 or Wayland and there is no proper
way to figure it out, because both DISPLAY and WAYLAND_DISPLAY could
As a solution we just force the platform to be always X11 when we
are on unix like systems (modulo mac).
Fix wrong rendering at the end of line when drawing colored whitespaces
Previous code just deleted the end characters; new code puts in spaces
with current attributes at the end of the line.
Thanks to Igor Kostromin for bug, research + patch
See bko for test code + more info
KCM: Remove the mimetype filtering and filename exclude patterns
This is going to be slightly controversial since it is removing features
which Nepomuk had, but the normal users don't care about most of these
I have kept an "Enable Developer Mode" option though. That controls if
source code should be indexed.
In the future we can create a special Baloo index tweaking application
which showcases allows advanced users to configure parts of the indexer.
The backend code still supports it, so that shouldn't be a problem.
Try to fix battery detection at runtime
When dragging and dropping tabs, move new window to cursor positon
This fixes multiple monitor issues - dnd window will be moved to where
user dropped the window.
(cherry picked from commit e6dcc8d6b8e635d5f7f718e7adfadbca5c3b14b8)
Make some X-specific KCMs to only show on platform xcb
If the code is too X-specific it just crashes when systemsettings
is run on platform wayland. Thus it's better to just hide them from
systemsettings. This first round is:
* Accessibility (strong usage of Xkblib)
* Bell (depends on XKeyboardControl)
* Mouse (depends on XGetPointerMapping and friends)
* Keyboard (depends on XKBlib)
Some of the KCMs should get a Wayland backend in future or be rewritten
to be of better generic use.
Do not crash when filtering a mask
If there's no selection, we shouldn't try to access its bounds.
Save multi-sensor configuration correctly
Big rewrite & cleanup of the sensors/libpaintop code...
The KisDynamicSensorList class is gone and KisCurveOption now tracks
all sensors. The KisMultiSensorModel doesn't own the data it is a model
for anymore everything is tracked by KisCurveOption.
Don't pass a zero gradient to the gradient editor option widget
if m_gradient is 0, we shouldn't pass *m_gradient as a const QGradient&
The mixing of pointers and references when using QGradients in flake
and karbon is something that needs a thorough overhault, though.
Disable remove profile button if there is only one profile
Fix a bug where the next hand could not be started
this happened for me by doing:
- wait for prompt "ready for next hand?"
- use CTRL-T to show the scoring table. It must appear below the prompt.
- click in the scoring table
- click on the OK button of the prompt
this happens only if using PyKDE4 and a modal prompt. The KPushButton does get
the events MouseButtonPress and MouseButtonRelease, but the KDialog emits
neither buttonClicked nor clicked
Fix: When using PyKDE4, use a modal dialog here. This has the disadvantage
that it might be useful to open the scoring table at this point which is not
possible with this modal dialog (unless a specific button is added to the
Allow language plugins to provide styles to formatters
This is a binary-incompatible change; relink kdevelop and all
language plugins or you will get crashes.
The basic is to shift the philosophy of source formatters a bit: instead
of providing integration with one fixed tool with many slightly
different configurations, a Source Formatter plugin can provide an
engine for source formatters which can do very different things
depending on the configuration. For many languages (I obviously have
python in mind) tools already exist which re-format source code and just
need to be called. Writing a new formatter plugin for each of those
would basically duplicate the existing functionality (especially from
the customscript formatter) for each language.
Thus, this patch provides a new virtual function in ILanguageSupport
which allows language plugins to return any amount of formatting
configurations for any source formatter plugin (the formatter plugin
choses which of the items it accepts based on a name).
To make this useful, the mime type and language, and -- optionally -- a
text sample different from the default are now stored inside the
formatting configuration items. The list of displayed configurations is
filtered by language. Only formatting engines which support at least one
configuration for a selected language are shown (as before), but this is
now "dynamic" and depends on the loaded language plugins (it's no longer
hardcoded in the .desktop file).
Allow users to specify css file for tab bar style
Currently, the default stylesheet for the tab bar just sets the min
and max width. Now the user can load a .css file. It is up to the
user to generate the css file to their liking. Handbook documentation
and examples will follow.
This can be used to set minimum width of the tabs, distinguish active
build plugin: make "Build previous target" always build the previous target again
Before, only targets which had been selected explicitely, i.e. via
the selection-dialog or from the list, were considered.
I.e. if the default target or the clean target were built, these
were ignored when building the "previous target".
This was intended as a feature, so you could select the targets
you want and build them again using "build previous target",
and "make all" and "make clean" did not interfere with them.
But Kare considered it a bug, and actually I tend to agree,
so now also when building the default target, the next time
"build previous target again" is used, it will build the default
target (since this was the target which was built before).
Allow transparency to work when using images as backgrounds.
Previously when using an image as the background, the opacity was
ignored. This patch corrects that.
Many thanks for patch to Wolfgang Brehm wolfgang brehm gmail com
Allow konsole to store terminal size in the profile.
This removes the profile setting to 'Save window size upon exit'. Now
it is in the Konsole settings; each profile can now set desired column
and row size.
Konsole Settings->Configure Konsole->General->Use current window size
on next startup:
Enabled - ignores all profile size settings - uses previous window size
Disabled - profile size settings are used - set via Edit Current
Profile 1st tab
Only new windows will use "new" col/row/size settings.
FileMetaDataWidget: Support realtime indexing of files which are not indexed
I seem to have forgotten to push this.
event compress layout size update and orientation
event compressing both the resize of the panel and the change of the formfactor update in the layout, makes it way faster and reliable.
before due to the non deterministic order of signal/slot invocation, sometimes the shell got blocked for minutes (or even forever) at 100% cpu.
this doesn't seem to happen anymore
Ensure that KItemListViewLayouter always has a size hint resolver
KItemListViewLayouter uses a KItemListSizeHintResolver to find out how
much space the items will need in the view.
Before this commit, the size hint resolver object could be changed at
runtime, and it could also be null. However, we never made use of these
possibilities, so all the code that checks if m_sizeHintResolver is
null is actually not needed at all.
Add syntax highlighting for Replicode
some machinery to do slideshows
Introduce a showOnCurrentPlatform method to KService
This is inspired by showInKDE to easily exclude modules which doesn't
make any sense on the current platform. E.g. in systemsettings we
do not want services which are X11 specific if systemsettings is
executed on Wayland.
Akonadi ItemFetchJob: Add customizable delivery options
One can now configure how the ItemFetchJob should return the results -
in batches, individually, or via the getter functions.
This is especially useful when fetching very large collections for
indexing since we can keep indexing them and dropping them. Otherwise
they would all be stored internally in the ItemFetchJob and would
consume a lot more memory.
Start to improve quicksearchline
Save version to canvas input profiles
Merge branch 'gsoc-importers'
This commit merges my work on advanced statistic importers built on
StatSyncing framework. More user-oriented details can be found on my
blog: http://konradzemek.com/category/gsoc/" target="_blank">http://konradzemek.com/category/gsoc/
The commit also includes changes to the ChangeLog file.
* Statistics synchronization between Amarok collections and
Amarok 1.4, Amarok 2.x, Apple iTunes, Banshee, Clementine, and
Rhythmbox track databases.
* "Import" button under Configure Amarok -> Local Collection no longer
serves to import statistics from Amarok 1.4 and iTunes, and has been
renamed to "Import batch file" to reflect the change.
* Configure Amarok -> Metadata tab includes new buttons to add and
reconfigure synchronization targets.
GUI: Added StatSyncing provider creation and modification dialogs. Old
importers' dialog changed to only support batch file importing.
New buttons added to the Metadata configuration tab.
DIGEST: Amarok advanced track statistics importers GSoC project merged.
Please see http://konradzemek.com/category/gsoc/" target="_blank">http://konradzemek.com/category/gsoc/ for more info and
FEATURE: laps export in CSV format
Add basic actions and methods to transfer pieces in and out of holders.
Cleanup and slightly optimize type creation.
Identified types can be created directly without looking at the
actual type of their declarations. Now we specialize for all
declarations which declare new IdentifiedTypes, bypassing the
The makeType path now can be sure that the optimized cases are not
benig passed to it, and can always findDeclaration as needed.
Don't send search queries to offline agents
It slows down the search, because we have to wait for all offline
resources to time out (so at least 60 seconds). Just skipping them
is much better, because we won't get any results from them anyway.
Performance optimization of the mymoney object container.
The MyMoneyObjectContainer::account(QString) was the most costly
method of this class. Mainly due to the calls to dynamic_cast
needed to obtain the cached MyMoneyObject with it's proper type.
Improved this by:
1. implementing a per object type cache.
2. using QHash instead of QMap which provides faster lookups
3. replace macro method implementation with template methods
Replace SHA with PBKDF2-SHA512+Salt
Uses the MINOR_VERSION (which until now it was 0) to upgrade the hash
from SHA to PBKDF2-SHA512+salt.
I would have loved to completely replace it once the wallet is ported
to the new hashing but because of kwalletd code that is not possible
without a bigger rewrite.
There are 2 reasons for this patch:
1-We avoid using our own implementation of SHA
2-We use a modern hashing technique
I'm cooking more patches to use the system user password to open the
wallet, we want that password to be hashed using PBKDF2_SHA512
for security reasons.
[lib/konq] Initial port to Qt5 and frameworks 5
This is an initial port to frameworks which still makes strong use
of kde4support. No guarantee from my side that the code works, I'm
not familiar with the code base!
The port excludes konq_nameandurlinputdialog.cpp as it's deprecated
and isn't needed. Also konq_sound is not yet ported.
Make sure baloo_file is just about searching
In the Nepomuk days one could enable/disable Nepomuk independent of the
file indexer. With Baloo, baloo is just about searching. The extra file
metadata which is stored is saved in the extended attributes of the file
and does not require baloo_file to be running.
This patch drops support for running only the file indexer part of
Baloo. It's now all or nothing. Additionally -
* FileWatcher - Only install watches in the indexed directories instead
of the entire home directory.
* KCM - Remove the concept of enabling/disabling Baloo. If everything is
excluded from indexing then baloo_file will not run.
Reduce usage of HAVE_X11 in KRun and make it usable on non-X11
The diversion for some methods by having a KStartupInfoId is removed.
As KStartupInfoId is not an X11 specific class we do not need the
In addition the code which uses X11 specific functionality is adjusted
to be only used if we are on platform X11. For other platforms the
same fallback is used as already present through the ifdef diversion.
[kfind] Initial port of kfind to Qt5 and frameworks 5
Still depends on kde4support. May not be fully functional, not
everything is tested and at least the browse button is known to
crash. Otherwise it works: it finds files.