Issue 329
2nd March 2014 by KDE Commit-Digest TeamContributors
Giacomo Barazzetti
Alex Fikl
Marta Rybczynska
Danny Allen
This Week...
Statistics
Commits | 1958 by 152 developers |
Open Bugs | 21609 |
Open Wishes | 15984 |
Bugs Opened | 215 in the last 7 days |
Bugs Closed | 225 in the last 7 days |
Commit Summary
Module | Commits |
/trunk/l10n-kde4 |
163
|
/branches/stable |
87
|
/trunk/l10n-support |
79
|
/plasma/desktop |
29
|
/trunk/www |
29
|
/plasma/generic |
14
|
/src/tests |
11
|
/generic/runners |
11
|
/plugins/knotes |
11
|
/kontact/plugins |
10
|
Files | Developer | Commits |
429
|
Laurent Montel |
162
|
267
|
David Faure |
89
|
183
|
Marco Martin |
62
|
165
|
Jonathan Riddell |
55
|
162
|
Ralf Habacker |
54
|
141
|
Burkhard Lück |
47
|
138
|
Sebastian Kügler |
47
|
132
|
Boudewijn Rempt |
44
|
102
|
Albert Astals Cid |
42
|
123
|
Ludovic Grossard |
41
|
Internationalization (i18n) Status
Language | Percentage Complete |
Brazilian Portuguese (pt_BR) |
99%
|
French (fr) |
97%
|
Dutch (nl) |
97%
|
Bosnian (bs) |
94%
|
Galician (gl) |
90%
|
Estonian (et) |
90%
|
Danish (da) |
88%
|
Catalan (ca) |
85%
|
Greek (el) |
82%
|
Chinese Traditional (zh_TW) |
82%
|
Bug Killers
Person | Bugs Closed |
Jekyll Wu |
27
|
David Edmundson |
20
|
Boudewijn Rempt |
18
|
Dennis Nienhüser |
16
|
Christoph Feck |
12
|
Inge Wallin |
11
|
Thomas Lübking |
8
|
Martin Klapetek |
8
|
Dmitry Kazakov |
8
|
Dawit Alemayehu |
8
|
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 54 selections this week
Bug Fixes
Graphics
Improve XY Cut layout recognition code
It was a simple bug in the XY Cut layout recognition code that made it too eager to see columns everywhere.
Also removed the dependence of the layout analysis algorithms on the display DPI (introduced by the recently added feature of using KScreen) to make their behavior more predictable and reproducible.
FIXED-IN: 4.13.0
REVIEW: 115759
GUI: Toolbar in SlideShow only appears now in the top right and left corners and Image Info appears now with 0 offset in left buttom corner
KDE Base
Make the handling of the "maximum text lines" setting more robust
If the user sets a maximum number of text lines in the settings, this
number was translated into a maximum height in pixels using
QFontMetrics::lineSpacing() before this commit.
In KStandardItemListWidgetInformant::itemSizeHint(), this maximum height
limited the size that is reserved for the item.
However, in KStandardItemListWidget::updateIconsLayoutTextCache(), the
maximum height was translated back into a maximum number of lines,
which limits the number of lines that are created using the QTextLayout.
This approach could lead to problems if the real height of the layouted
text is 1 pixel more or less than QFontMetrics::lineSpacing() times
"number of lines".
Now we do not store a "maximum height" inside the "maximum size"
explicitly, but store a maximum number of lines and a maximum with (for
Compact View) separately, and then use the number of lines also to
calculate the required size in
KStandardItemListWidgetInformant::itemSizeHint(). This should make sure
that the correct height is reserved for each item.
Thanks to Christoph Feck and Emmanuel Pescosta for helping to debug this
problem and testing the patch.
FIXED-IN: 4.13
REVIEW: 113871
Always go back/forward in history when pressing the respective buttons
Before this patch, pressing one of these buttons while an item is
hovered selected this item. The motivation for this behavior was to
provide a fast way to select items. However, this was counter-intuitive
and confusing for many users.
FIXED-IN: 4.13.0
REVIEW: 116469
Whenever possible, use relative paths for SIZE requests, e.g. SIZE foo/bar.txt
FIXED-IN: 4.12.4
REVIEW: 116524
Fix Bug 330605 - Dropbox plugin prevents git plugin from working
Use scoring to find the best matching plugin for the given directory.
Thanks to Phil Schaf for testing this patch!
FIXED-IN: 4.12.3
REVIEW: 116019
Oxygen: avoid calls to reparseConfiguration() on startup.
strace -e open kate |& grep -v NOENT | grep oxygenrc | wc -l
went from 8 to 4
(and when looking for kdeglobals, from 13 to 11)
There's still a lot of work to be done in that area...
(within KConfigSkeleton, and probably kdeplatformtheme)
REVIEW: 115964
syntax: fix lilypond syntax file
workaround for the qt bug
https://bugreports.qt-project.org/browse/QTBUG-35459
It's not nice at all, but at least it's working syntax file now.
FIXED-IN: 4.13
Show the correct icon size in the zoom slider tooltip.
FIXED-IN: 4.12.3
REVIEW: 111197
KDE-PIM
Fix Bug 147924 - KMail composer charset ignored (only if embedded in Kontact)
FIXED-IN: 4.12.3
(or 4.12.4 don't know when tag is created)
Fixed the "only new items appear in collections" bug.
We have to avoid populating not-yet populated collectoins through signals
as otherwise internal assumptions are broken resulting in the ETM never fetching
the missing items.
imap resource: set the internal date as specified in the mail's header
for an APPEND command
Currently, for an APPEND command there is no internal date specified.
Therefore an IMAP server sets the current date/time for an appended
EMail, see http://tools.ietf.org/html/rfc3501#section-6.3.11 .
While this doesn't matter to KMail (it uses the date/time from the
mail's header anyway), other clients (especially Webmail) may show/sort
by this internal date.
This patch sets the internal date to the date/time as specified in the
mail's header.
FIXED-IN: 4.13
REVIEW: 113254
Office
Added a bit more thread safety to KisNodeSP
Now one can read the content of a KisNode from an arbitrary number
of threads and at the same time write there with a single thread.
This is ensured by a read-write lock added to a KisNode. For details
see a comment in kis_node.cpp.
Make the raindrops and oilpaint filter store the seed in the config
And fix the settings widget to take invisible properties
like the seed into account.
Conflicts:
krita/plugins/filters/oilpaintfilter/kis_oilpaint_filter.cpp
On Windows, autosave files are in the temp path
Fix the outline when the mirroring of the canvas has changed
The settings of the preset related to the canvas mirroring
and rotation should be changed not with the first click, but
dynamically on 1) preset change and 2) transformation change.
The patch removes the fix for the following bug, although it is not
reproducible anymore.
Import wizard allows recursive import of directory
Selecting sparse files (old behaviour) is still possible by unchecking the
checkbox. The recursive behaviour seems like the most common use case so the
option is checked by default.
Changes in this commit:
* rename the 'include subdirectories' option to 'recursive directory import'
* when checked, the tree view shows only directories
* when checked, only a single item can be selected. The file counter counts all
files contained in the selected directory (recursively).
* the 'select all' button has been removed (didn't work, don't see a use case
for it)
Make the raindrops and oilpaint filter store the seed in the config
And fix the settings widget to take invisible properties
like the seed into account.
Networking Tools
Fix getting device from a primary VPN connection
Features
Development Tools
Add auto include headers feature.
To use this feature simply add /full/path/to/the/header.h in
.kdev_include_paths. And this file will be added to all files in
specified directory and its subdirectories as if each file #include'd
it (see also -include command line option of clang/gcc).
REVIEW: 116053
Educational
Support newer graphviz cgraph library.
Signed-off-by: Reimar Döffinger
FEATURE: Allow the use of image instead of word for flashcard training.
FEATURE: Adds a legend for the statistics
REVIEW: 116092
Adds support for sound in multiple modes
This:
1. Adds support for sound in Multiple Choice and Example Sentences modes.
2. Causes the audio to stop on answering and changing questions in all modes.
3. Changes audio button sizes in all modes.
REVIEW: 115965
Graphics
Add Magnifier
REVIEW: 113973
GUI
Implement a play pause button in presentation mode
REVIEW: 115072
GUI
KDE Base
Handle font and palette changes in Dolphin list views.
Also update the font of the meta data widget in InformationPanelContent (smallest readable font).
FIXED-IN: 4.13
REVIEW: 115958
Scroll to newly dropped files.
If multiple files are dropped, scroll to the first dropped file.
FIXED-IN: 4.13
REVIEW: 116020
Add a way to allow users to reset the "Don't ask again" dialogs
This adds a push button to the Configure Konsole -> General Settings
Ideally, having a separate page listings all the possible entries
would be better.
FIXED-IN: 2.13
Implemented HTTP POST -> POST redirection support in KIO.
FIXED-IN: 4.13
REVIEW: 116017
[kwin] Provide composited outline as QML instead of hand drawn FrameSvg
In order to get all our UI being written in QML, the Outline for
compositing is ported to QtQuick. It creates a QQmlContext and
QQmlComponent and loads the (currently hardcoded) qml file. The context
gets to properties exported: outline. The outline property allows the qml
to get the geometry it should use. The QQmlEngine is used from Scripting
thus all general scripting properties are exported (e.g. workspace).
The qml script is expected to create a QQuickWindow as it's root item
and style it.
The qml file is stored in a new qml subdirectory. The idea is that each
of the qml types we have gets an own directory there and for each
implementation there should be a further subdirectory.
Thus we have outline/plasma/ with outline being the type and plasma
being the implementation. But at the moment the script location is still
hardcoded.
REVIEW: 116123
bookmarks runner: Also consider iceweasel
iceweasel is the same as firefox, just renamed.
Debian bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=646612
Patch by: Guido Loupias
CCMAIL:Guido Loupias
REVIEW:116077
Watch for changes in Chrome's bookmarks
- Watch the bookmarks json files
- when they changed, mark our bookmarks as dirty
- on next match, if dirty, reparse bookmarks
Add a way to allow users to reset the "Don't ask again" dialogs
This adds a push button to the Configure Konsole -> General Settings
Ideally, having a separate page listings all the possible entries
would be better.
FIXED-IN: 2.13
(cherry picked from commit 5a386ad591cbaabd1f15d02186982c579a52bd39)
[kinfocenter] Add new module for a Wayland Compositor
Inspired by the module for X-Server we have a new module for Wayland
Compositors. The module introduces a new optional build dependency to
wayland client libraries.
Just like the X-Server module it talks to Wayland directly without the
help of Qt. It connects to the registry and adds all reported
interfaces to the tree widget. For outputs and seats it registers a
listener to also include this information. For every output the
information is appended, for a seat the capabilities are included.
This approach should allow to add information about further interfaces
if they provide interesting information in future.
REVIEW: 115989
Hide the OnAllDesktops button if there is only one virtual desktop
In KCommonDecoration the OnAllDesktops button gets hidden or shown
depending on the number of desktops. For that KDecoration is extended
by a new property which delegates to the bridge to return whether
onAllDesktops is available. In KWin Core this is implemented using
the number of desktops.
FIXED-IN: 5.0.0
REVIEW: 116076
Add F11 as a shortcut for full screen
FIXED: 2.14
Add F11 as a shortcut for full screen
FIXED: 2.14
(cherry picked from commit 47fafb21349c2b779cdfb8eabf88a0d1edc19d08)
KDE-PIM
Add KAccounts support to Google resources
Add Key_F2 to rename notes
Office
feature: In graph, sums are now all computed
Messages can be selected using the mouse
Selecting and moving multiple messages was already possible using
Control-click. This commit adds mouse support.
Let layout generator handle multiple widgets of a single class.
Add the google-breakpad crashhandler for Krita on Windows
It is only enabled with with -DUSE_BREAKPAD=ON option. The default
KDE crashhandler overrides ours unless you start krita with the
--nocrashhandler option.
It's a pity that we need to copy breakpad into our 3rd party
source tree, but it seems that that is how breakpad prefers it...
Conflicts:
CMakeLists.txt
krita/crashreporter/mainwindow.cpp
krita/crashreporter/wdg_crash_reporter.ui
krita/kis_crash_handler.cpp
krita/main.cc
Sort files ascending by name in code import wizard
Multimedia
Add script install and remove buttons.
Support installation of zipped scripts.
Optimization
KDE Base
Make KNotificationManager use the KNotify plugins directly
Instead of relaying things over DBus to KNotify daemon, we now use the
KNotify plugins directly from the manager. This now becomes the central
part in the KNotification framework.
When KNotification sends the notify event, the Manager iterates over all
found plugins and calls notify() on them, passing the KNotification
object and also the KNotifyConfig object, which holds the data from
.notifyrc file. With each plugin presenting the notification, the
KNotification refcount rises by 1.
Once the plugin finishes its presentation, it calls finish() on the
notification and that causes the refcount to go --.
If the KNotification is destroyed or otherwise closed, the Manager makes
sure all plugins stop their presentation of that given notification.
When no more plugins are presenting the notification (refcount == 0),
the KNotification object is destroyed.
[kwin] Remove the legacy OpenGL 1 compositing backend
KWin already has a de facto OpenGL 2 dependency through QML. Combined
with the fact that the OpenGL 1 backend is basically unmaintained and
also unused, it's better to remove it for the new major release.
This change includes:
* Removal of cmake option KWIN_BUILD_OPENGL_1_COMPOSITING
* Removal of KWIN_HAVE_OPENGL_1 compile option and all code
ifdef'ed with it (partially removal of if-else constructs)
* Removal of CompositingType::OpenGL1Compositing (flags are kept
as a core flag should get introduced)
* Driver recommendation for OpenGL1Compositing changed to XRender
(should be evaluated whether the drivers can provide GL2)
* Removal of configuration option "GLLegacy"
* Removal of fooMatrix function in kwinglutils
* Removal of ARBBlurShader
* Removal of legacy code path in GLVertexBuffer
* Removal of GLShaderManager::disable
* if-blocks with ShaderManager::instance()->isValid() removed
REVIEW: 116042
Wait a second until the systray starts loading
This is a bit hacky, but it allows to load other applets in the panel
first, and gives them some time to do so. This feels like a faster
startup of Plasma, since the panel doesn't stay empty now until the
whole systemtray has loaded.
Let's give this a shot for others to test on their systems.
Make UDSEntry a Q_MOVABLE type
This has the effect that a QList<UDSEntry> a.k.a. UDSEntryList will
store the actual entries in a single allocated block of memory, and not
pointers to UDSEntries which are allocated individually on the heap
(this means that this change is binary incompatible). This reduces the
memory usage by 32 bytes per UDSEntry in a QList because each memory
allocation uses at least 32 bytes on a 64-bit system.
This commit is the 3rd part of https://git.reviewboard.kde.org/r/115739/
REVIEW: 115739
Port NotifyByPopup to KF5/Qt5
This is rather a major rewrite of this plugin. Main changes:
* all methods dealing with the Galago server are renamed as such
to indicate more clearly what they do
* async dbus calls are used where possible
* code is simplified and cleaned up; lots of comments added
NotifyByPopup keeps the KNotification<-->Galago mapping internally and
is the only part that deals with DBus now. The flow of putting a
notification on screen is now this:
KNotification::sendEvent() -> KNotificationManager::notify() -> NotifyByPopup::notify() -> DBus -> Galago server
whereas before it was something like this:
KNotification::sendEvent() -> KNotificationManager::notify() -> org::kde::KNotify::notify() -> DBus -> KNotify::_the_dbus_handler -> NotifyByPopup::notify() -> DBus -> Galago server
It also keeps the fallback to Growl or KPassivePopup in case the Galago
server is not available
KDE-PIM
Use scheduling in CacheCleaner and IntervalCheck
Instead of repeatadly querying all collections and checking, whether
collection should be synchronized or cleared, we query all collections
only on start and then we just set a QTimer to timeout when a nearest
collection should expire.
This should decrease disk wakeups, especially in IntervalCheck, because
is does only little SQL now, while before it was checking all collections
every minute or so.
New collections or changes in collection cache policies are delivered to
CacheCleaner and IntervalCheck from NotificationCollector.
Networking Tools
Merge escape and URL filters into one
This is needed to avoid the URL filter detecting wrong link boundaries
as the escape filter would change eg. "<http://kde.org/>" target="_blank">http://kde.org/>" to
<http://kde.org/>" target="_blank">http://kde.org/> and then the URL filter would detect
"http://kde.org/>" as the actual link.
Switching the order wouldn't help because the escape filter would escape
the newly inserted <a href...> links and the user would
get <a href.../a> and no clickable links.
Therefore we first detect the links, replace them with placeholders,
then escape everything, then replace placeholders with actual links.
Reviewed-by: David Edmundson
FIXED-IN: 0.8.0
Other
KDE Base
Port away from KPrintUtils
All features from KPrintUtils have been merged to Qt, so KPrintUtils is
being moved into kde4support. Switch to using Qt directly.