Issue 257
14th October 2012 by KDE Commit-Digest TeamContributors
Aleix Pol
Bernhard Friedreich
Michael Torres
This Week...
Statistics
Commits | 2202 by 161 developers |
Open Bugs | 21356 |
Open Wishes | 15994 |
Bugs Opened | 330 in the last 7 days |
Bugs Closed | 350 in the last 7 days |
Commit Summary
Module | Commits |
/trunk/l10n-kde4 |
231
|
/doc/index.docbook |
223
|
/branches/stable |
110
|
/branches/work |
48
|
/trunk/l10n-support |
45
|
/trunk/www |
38
|
/krita/sketch |
28
|
/plasma/declarativeimports |
27
|
/package/contents |
14
|
/agents/nepomukfeeder |
9
|
Files | Developer | Commits |
510
|
T.C. Hollingsworth |
170
|
318
|
Laurent Montel |
124
|
240
|
Pino Toscano |
99
|
201
|
Luigi Toscano |
76
|
171
|
Marco Martin |
71
|
168
|
Roman Paholík |
56
|
147
|
Julia Dronova |
49
|
114
|
Aurélien Gâteau |
39
|
105
|
Peter Kümmel |
35
|
81
|
David Faure |
29
|
Internationalization (i18n) Status
Language | Percentage Complete |
Estonian (et) |
99%
|
Brazilian Portuguese (pt_BR) |
99%
|
Polish (pl) |
97%
|
Dutch (nl) |
96%
|
Spanish (es) |
96%
|
French (fr) |
95%
|
German (de) |
93%
|
Italian (it) |
90%
|
Danish (da) |
87%
|
Catalan (ca) |
84%
|
Bug Killers
Person | Bugs Closed |
Myriam Schweingruber |
39
|
Christian Esken |
34
|
Jekyll Wu |
34
|
Andras Mantia |
25
|
Laurent Montel |
14
|
Christoph Feck |
13
|
adriyetichaves gmail com |
10
|
Albert Astals Cid |
10
|
Thomas Lübking |
10
|
Martin Gräßlin |
9
|
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 121 selections this week
Bug Fixes
Educational
QVarLengthArray throws when out of memory
also work around a Qt bug, C&P from merge request:
OOM: don't overwrite valid pointer with NULL
After a exception is thrown in resize QVarLengthArray has an
invalid state with ptr == 0. On the next resize call when qMalloc
returns a valid pointer oldPtr is 0 and it could crash in
qMemCopy because the pointer to the source is 0.
For example:
int GB = 1024*1024*1024;
while (qMalloc(GB) != 0) {}
QVarLengthArray<char, 0> arr;
try {
arr.resize(GB);
} catch(const std::bad_alloc&) {
arr.resize(1024);
}
i18n fixes
- fix the arguments to i18n*() calls
- fix string puzzles
- remove pointless "%1" messages
- remove contractions ("can't" -> "cannot")
- use i18np where needed
Graphics
Fix loading preview for the same clicked item
Before this commit if you tried to preview any item and go back to thumbnails mode then try to preview the same item again it didn't loaded.
Andi, is this what you meant by point 4 in comment#8?
Don't crash if can't create the part
It can fail in some extreme cases
fix pinch zoom
Fix binding error
Fix printing contiguous selected pages with bookmarks
FIXED-IN: 4.9.3
don't use kdeinit, crashes w/ opengl
Iron out some bugs related to image editor full screen mode:
- fix showing the exit full screen action in tool bar
- fix accepting Escape to exit full screen
- fix hiding side bar again when a tool in full screen mode was closed
FIXED-IN: 3.0.0
KDE Base
Fix handling of backlight on FreeBSD
The implementation uses acpi_video(4) sysctl interface. The code was
inspired by Junk-uk Kim's following patch:
https://bugs.freedesktop.org/show_bug.cgi?id=24765
REVIEW: 106790
(cherry picked from commit 742db7756131b030a136620721d986750b1d40df)
Fix handling of backlight on FreeBSD
The implementation uses acpi_video(4) sysctl interface. The code was
inspired by Junk-uk Kim's following patch:
https://bugs.freedesktop.org/show_bug.cgi?id=24765
REVIEW: 106790
Expect "void" which is what SendFiles is going to return
It seems that in prior versions of Qt this was working (even if it was
utterly wrong), and now it is not working any longuer.
FIX: 297785
FIXED-IN: 1.0 1.1 1.2 1.3rc3
Undo previous wrong fix for ksmserver crash.
Fix ksmserver crash by calling m_greet->start in the constructor.
Don't set unwanted DPMS timeouts on inhibition change
Set m_idleTime to zero when action first initialised and when unloaded.
This makes onProfileLoad safe to use by onUnavailablePoliciesChanged
even when the action is not loaded.
REVIEW: 106793
(cherry picked from commit 7626961a799e03af8907711ac304b4428208dece)
when setting the model, handle the case when we have a sourcemodel already better and listen to layout changes
and now .. sorting actually works.
Fix battery applet screen power management
Connect to the correct job when beginning/stopping
SuppressingScreenPowerManagement. The pasto in the "stop" case was
probably harmless; in the "begin" case we need to store the correct
cookie in order to later stop the suppression.
REVIEW: 106784
(cherry picked from commit e1bf8805b3d0c8ddf22805f334faec8bd678742e)
turns out we have to set the role names constantly to make sorting actually work
even just setting the sort/filter roles is not enough. role names must also be set again!
gaaaah. thankfully this seems to be very fast, though would still be nice to avoid it if
possible somehow.
added tooltip and various small fixes
thanks to Glad Deschrijver for the patch
dataengine based models set their roles when setting the data, so respond to that
syncRoleNames is fast (and faster now that we check that the role names actually changed)
but it may be nicer to find a more efficient way in future than checking the role names
on all / any data changes. in fact, the documentation for QAbstractItemModel::setRoleNames says:
"This function must be called before the model is used.
Modifying the role names after the model has been set may result in undefined behaviour."
KDE-PIM
Fix load catalog
add an icon for the window title
Fix Bug 308090 - Show how many attachments and the attachment size
FIXED-IN: 4.10
Fix XSS issue in the contact viewer
This was not really a security risk, since the used QTextBrowser has not way to access
the network automatically, but fixing it right now makes it future-proof.
A somewhat cruel way of making sure the right folders are monitored
Office
fix autobrush for non-uniform color information
Fixed switching between the Aspect modes
The change of the resolution should happen in the setZoom, otherwise
it will not know the old values of the document rect and zoom.
Multimedia
Show audio wave when playing audio clip instead of boring white
Networking Tools
Fix crash on kded4 startup
Previous commit removed the clearning of the list, and didn't remove
items from the list in the loop (-> double delete, and infinite loop)
Fix crash on kded4 startup
Previous commit removed the clearning of the list, and didn't remove
items from the list in the loop (-> double delete, and infinite loop)
(cherry picked from commit 98819f62ef5a1a47d643cc76b506ea2b0e1310ed)
Fix scrolling
Workaround a bug in Qt #27592 where the ListView won't scroll to the end when
sections are being used. Dirty hack but seems to work correct.
REVIEW: 106791
Utilities
Check if the providers list has contents before accessing individual elements.
Fixes a crash when Muon is started without an internet connection, or when no providers are otherwise available.
Fix loading of KNS skins.
Fix scaling of the GHNS icon in the skin list delegate.
It's now basically qMin(16, text height) so the icon doesn't overlay
the ascenders of the author name if the skin name bounding rect height
is is smaller than 16 px. The downside is the blurryness of scaling,
but then with the standard font size and the trend toward increasing
screen dpi this is essentially a corner case anyway.
fix bullding error when using clang as the compiler
REVIEW: 106813
Features
Development Tools
xsession: Make xsession script testable.
A few minor related changes are included. E.g. we actually want to pass
along blank lines, so remove that check (which didn't work anyways as \n
was still present).
We replace that with a simple filter in the template installation
process to allow there to be source lines in the base template that
don't get passed to the installed result. This allows for shell script
that prevents running the full command suite in the base without
affecting the installed script.
It is required to be able to actually run the base script as the "set
-u" check for unset variables doesn't work when "set -n" (syntax check)
is in use. These set commands can be passed directly to /bin/sh to have
them in effect when the script starts (and are both part of POSIX and
seem to work even with busybox sh).
Additionally, the path_add function needs to actually check for unset
variables now. Luckily there is existing Bourne shell syntax for that.
The observant reviewer will note that the testsuite does not currently
pass because there is a mispeled lib_suffix in the base, that will be
fixed in the next commit.
Educational
New user interface for the skyguides
Graphics
First implementation of a RecursiveDirModel
KDE Base
Merge branch 'feature/backup'
Merge the new backup system into master. The new backup is not complete
and still requires polishing and some other work, but it is in a lot
better condition that the one in master. Hence the master.
Additionally, this moves around certain code shared with the storage
service a lot, and that makes merges harder.
Conflicts:
services/storage/syncresourceidentifier.h
services/storage/syncresourceidentifier.cpp
Increase runtime requirement to Mesa 8.0
Adjustment to reality. KWin has had a dependency on Mesa 8.0 for quite
some time given that it is what basically all distributions ship.
It is better to clearly state what is required. For KWin Mesa 8.0 is a
more reliable dependency as all DRI drivers which do not support DRI2
have been removed.
Packagers have been informed about this intended change some weeks ago.
REVIEW: 106799
Prevent button action from enabling disabled DPMS
Button actions call triggerImpl, which leaves DPMS enabled. It can't be
disabled until return from idle, as that would wake the screen. Solve
this by explicitly setting DPMS timeouts to zero when DPMS is meant to
be disabled - i.e. when unloading the action or when screen power
management is inhibited.
REVIEW: 106794
Make "Charge Complete" notification watch for a change in chargestate
from charging to not charging while the AC adapter is plugged in rather
than for a percentage which might not reach 100%.
REVIEW: 106686
Decoration can announce whether it currently requires an alpha channel
A decoration can provide the AbilityAnnounceAlphaChannel in addition to
AbilityUsesAlphaChannel. If this ability is provided the decoration can
enable/disable the use of the alpha channel through setAlphaEnabled().
The base idea behind this mechanism is to be able to tell the compositor
that currently alpha is not needed. An example is the maximized state in
which the decoration is fully opaque so that there is no need to use the
translucency code path which would render all windows behind the deco.
In addition also the blur effect honors this setting so that behind a
known opaque decoration no blurring is performed.
Oxygen is adjusted to disable translucency in maximized state and Aurorae
is adjusted to allow themes to enable/disable translucency. For Plastik
translucency and with that also blurring is disabled.
REVIEW: 106810
ResourceData: Remember to identify the object when calling setProperty
This fixes the bug in the case when something like this is done -
res.setProperty( NAO::hasTag(), Tag("tag-name-that-exists") );
In this case the tag would not be identified to its existing resource
uri, and that would result in the creation of another tag with the label
"tag-name-that-exists".
Start the notification service if it is dbus autostartable and we are not in a full kde session
This makes the notifications show up though the proper unity notifications when running on unity instead of though the "ugly-ish" passive popups
(cherry picked from commit d7719fcbfd9c8b1e5c4e27501e1cb3795ca09dd7)
Re-enable Blur/Lanczos for Catalyst on OpenGL 2
Given that the Catalyst driver is now supporting direct rendering and by
that can use the OpenGL 2 code path we do no longer need to force
disable the Blur effect and Lanczos filters which used to crash in the
ARB shader path.
The ARB shader path - which can only be used in OpenGL 1 - is kept
disabled for Catalyst.
REVIEW: 106798
QML Plastik as fallback for incorrectly configured Aurorae
If a theme is configured which does not exist, Aurorae will load the
Plastik theme which is known to be around.
we can sort this now! :)
Add support for OpenGL in VirtualBox
OpenGL is properly working if there is a direct rendering context.
If LIBGL_ALWAYS_INDIRECT is set VirtualBox falls back to Mesa's software
rasterizer. So in order to get OpenGL the driver is now whitelisted in
the opengltest.
GLPlatform is extended to recognize the VirtualBox driver and has new
methods to report whether it is a virtual machine and VirtualBox. The
detection is rather limited as we don't get access to the underlying
hardware, so we do not know whether the features are really supported.
We need to trust the driver here in announcing the right extensions.
The driver does not provide glxQueryDrawable although it is part of
GLX 1.3. A hack is added in the glxbackend to set the function pointer to
NULL. This can unfortunately not be done in glxResolveFunctions() as
QueryDrawable seems not to be provided by an extension (at least not
listed in the OpenGL registry) and getProcAddress resolves a function but
it only prints an OpenGL Warning to stderr.
As a note: the driver reports that it is using XSHM for
GLX_EXT_texture_from_pixmap.
REVIEW: 106821
Start the notification service if it is dbus autostartable and we are not in a full kde session
This makes the notifications show up though the proper unity notifications when running on unity instead of though the "ugly-ish" passive popups
Add detection support for VMware driver (SVGA3D) to GLPlatform
VMware uses a Gallium driver which means that OpenGL based compositing
works out of the box without any adjustments to GLPlatform.
Just adding recognizing code for the SVGA3D driver.
REVIEW: 106826
make pattern wallpaper thumbnail aspect ratio similar to primary screen aspect ratio
REVIEW: 106766
Hide battery levels config options when there are no batteries.
They were only disabled before. This reduces visual clutter and imho
95% when there is no battery it is probably a desktop computer that
doesn't need that config option at all.
REVIEW: 106783
KDE-PIM
Even better mail filter agent status reporting. Not perfect, but works nicer in case of filtering incoming mails (less progress bars). Remove some recently added code that is not needed anymore.
As discussed on #kontact, by default we disable idle time timeout.
toggle numinput widget given the state of the disable checkbox.
makes indexing more reliable.
make also make cpu requirements go up (due to virtuoso)
don't backport this to the 4.9 branch, not yet anyway.
Restore progress reporting when the filters are running. This got lost when the filter agent was created.
Bonus point: the filter agent doesn't depend on libkdepim.
Treat MBOX resources as inboxes, as they are basically acting like that. This fixes filtering for mails that arrive to mbox.
FIXED-IN: 4.9.3
(cherry picked from commit 9e3bf983908e13bbe235f05005956bc3d8585bcb)
Treat MBOX resources as inboxes, as they are basically acting like that. This fixes filtering for mails that arrive to mbox.
FIXED-IN: 4.10
Merge RssItem and Item
Item was a unnecessary wrapper around RssItem, the actual Akonadi Item payload.
Thus, get rid of the current KRss::Item and rename KRss::RssItem to KRss::Item.
Make it possible to select multiple things to index.
Continue to implement import libreoffice autocorrection
Initial commit of Google Drive object definitions.
Office
Starting support for configuring filters in layers (not done yet)
Dashboard widget based on grantlee template
Made figure-based tools to consult BuildUp/Wash mode option
Before the patch, the figure tools were working in BuildUp more only.
Which gives much less "transparent" results than Wash mode.
Multimedia
Add Accessibility support for KMix (from Reviewboard)
REVIEW: 106584
Utilities
PackageKit-qt API has changed so we can use it in QML, updated to the new API
Do something more reasonable on window manager maximization.
Essentially it results in a 100%/100% window now instead of a broken
one. Restore isn't supported since it doesn't easily fit with Yakuake's
state model.
Rewrite the skin gathering code.
Manually and KNS-installed skins with the same name now both show
in the list, fixing the bug that you could no longer use the GUI to
remove a previously manually installed skin if it got later installed
via KNS as well.
Plus it's simpler, faster and has much saner dupe checking.
Other
Added tablet database unit test.
* Extended TabletDatabase class to support unit testing.
* Added example data.
* Added unit test itself.
Optimization
Development Tools
Make temporary DUContext for default template parameters obsolete.
Use a thread-local QMultiHash<IndexedQualifiedIdentifier, IndexedType> lookup table to
support default template parameters. This obsoletes the necessity of the temporary DUContext
which may introduce instabilities as described in bug 297133.
One big caveat was cloning template declarations which contain an internal context. This
resulted in both, the original and clone to reference the same internal context. Upon
destruction of the clone, the ownership of the internal context was tried to be changed.
This can crash, as it could happen while only holding a read lock, yet the referenced internal
context is in the DUChain and thus must only be altered while holding a write lock.
This change also makes it possible to remove the code surrounding Declaration::clone and
Declaration::clonePrivate, as this was the only places which actually used it.
Considering the major pitfalls and caveats of this API, I say this is a very good thing.
Furthermore, while introducing the thread-local data, I fixed the two safety recursion counters:
Previously they where shared between threads which does not make any sense when we want to count
the recursion depth that is thread-specific.
REVIEW: 106757
Add .xsession installation base code.
This isn't turned on yet (the testcase just tries to run the function
without exceptions), but this would be the base for a feature to install
the new sample .xsession file for the "Custom session" login option for
most login managers.
The base .xsession was graciously provided by Michael Janses (of
build-tool fame). I've simplified it a bit for kdesrc-build usage and
tried to make it compatible with less featureful shells. The eventual
idea is that it can be used with kdesrc-build-set and/or kdesrc-build so
that you can run the setup script, kdesrc-build, and be able to login to
your new KDE install.
Educational
Added a new Plasmoid for plotting Graphs
Creates a new user for the Analitza Qt Components and also consolidates
some libplasma technologies within KAlgebra, like QtQuick plasmoids.
This patch also moves Graph2D.qml from mobile to the declarative module
so that it can be used as a component alone.
I guess it is more appropriate to refer to the tool that helps the
user construct the observing list as the "Observation Planner" rather
than the "Observing List"
Other references to "Add to the observing list" or "Observing list
wizard" are best left unchanged, since they are items that actually
act on the observing list itself.
Remove DynamicPropertiesList class.
This class is not required anymore, since the data types and pointer types
store all current properties. The current state also caused several
memleaks.
enable >2GB on 32 bit Windows
Graphics
Reworked tablet detection and information.
Reworked the whole tablet detection process. It is now possible to
detect multiple tablet devices which are connected at the same time if
they are not of the same type. Still as the rest of the code is only
capable of handling one device, only the first tablet is actually used.
However it should now be impossible that devices (stylus/pad/...) of
different tablets are accidentally mixed up.
Also improved the amount of information which is actually queried from
the devices. This is necessary for libwacom support, as we do need i.e.
the full path to the input device.
Added a TabletFinder class which does all the hard work of detecting
as much information as possible of a device. At the moment it only
queries X11 for device information but soon it will query the filesystem
and the USB subsystem so we can support Intuos4 Leds.
Disabled non-working unit tests for now which have to be rewritten to
handle the new tablet information structures.
Rework layout to avoid collision between tab bar and search field
Nicer up|down icons
KDE Base
AutoResize of popup was implemented for List mode
StoreResources: New flag - OverwriteAllProperties
This allows to to use StoreResources as a convenient way to replace
large quantities of data into Nepomuk.
This is especially useful for feeders such as telepathy that do not
follow the traditional - removeDataByApp + storeResources. It just uses
storeResources to update the few properties that usually change.
In that case it makes it easier to just rely on storeResources.
REVIEW: 106770
actually sync the roles and only sort when we have an actual model already
Popup has been redesigned like a list with names of icons.
make color wallpaper thumbnail aspect ratio similar to primary screen aspect ratio
REVIEW: 106754
Property 'name' of UI task was made notifyable
StoreResources: New flag - OverwriteAllProperties
This allows to to use StoreResources as a convenient way to replace
large quantities of data into Nepomuk.
This is especially useful for feeders such as telepathy that do not
follow the traditional - removeDataByApp + storeResources. It just uses
storeResources to update the few properties that usually change.
In that case it makes it easier to just rely on storeResources.
REVIEW: 106770
Remove KIconCache, it is completely unused, in kdelibs and outside.
KIconLoader uses KSharedDataCache("icon-cache") directly.
Identation: tabs -> spaces
FileIndexing Plugins: Tell the plugin the mime type of the file
This way they do not need to determine it on their own. Plus many
extractors handle multiple file types.
simple optimizations (prefix ++ and empty vs. size==0
prefix ++ for non trivial datatypes
use empty() in std::containers to check if they are empty.
empty() uses constant time for all containers, size() not.
REVIEW: 105333
KDE-PIM
Optimization: don't list a directory just to find out if ONE file exists.
[entryList() is slow because it uses QDir::entryList(), which sorts by
name, case insensitively.... lots of toLower() calls and lots of sorting]
(cherry picked from commit 89e3374813c29110f5783b4bbf4672401462db27)
Allow to update contact in addressbook
use a KLineEdit instead of a QLineEdit
Multimedia
On Linux, try to set the scanner's IO priority instead of CPU priority.
If the CPU was always busy the scanner would never run. This isn't a
theoretical scenario - distributed computing clients like BOINC will
keep the CPU busy with minimal impact to the user.
Always keeping the disk busy is something no program should do on a
machine used interactively, so that the collection scanner should
usually get a chance to run. Not stalling IO of more important things
is also the actual goal of setting the scanner's priority AFAICS, so
setting IO priority is a good thing all around.
Utilities
Get rid of an unused method.
Other
Development Tools
Updated the Guardfile to watch the parser directory
Re-implemented how errors are stored in the parser.
Now the errors list is a truly chained list, instead of a plain
statically-allocated array. Moreover, I've added a "warning" flag.
Added the possibility to add the interpreter version in the parser
Educational
Don't save changes to modes other than FITS_NORMAL
QVarLenghArray simply asserts when not enough memory is available
so we have to check it by our self.
add option to proceed after realloc error
Do not export actions.
Graphics
Stay on current tab when configuring
Use an empty name when adding a new tab
KDE Base
sort by relevance
make color wallpaper thumbnail aspect ratio similar to primary screen aspect ratio
replace kephal with Wallpaper::targetSizeHint
REVIEW: 106754
Detect latest Intel hardware in GLPlatform
Added support for IvyBridge and Haswell.
REVIEW: 106819
Repaint screen after config update in diminactive effect
FIXED-IN: 4.9.3
REVIEW: 106814
Support of Floating (for desktop) form factor has been added
Merge branch 'master' into archos-gen9
putting ActiveCore into an apps categories will push it to the front
yes, ripe for abuse if people wish to be morons, but lets see how it goes.
worst case scenario is we end up putting a white list of core apps in with the blacklist
no return in property bindings
or doesn't do the signal connection to pthe property changed
Merge remote-tracking branch 'origin/KDE/4.9' into KDE/4.10
make pattern wallpaper thumbnail aspect ratio similar to primary screen aspect ratio.
replace QDesktopWidget with Wallpaper::targetSizeHint.
REVIEW: 106766
Actions for the locked desktop
File Extractor: Rename the class to ExtractorPlugin from Extractor
Just the word 'Extractor' is slightly ambiguous.
KDE-PIM
give context for the string "read only" for the translators
Merge remote-tracking branch 'origin/KDE/4.9'
Office
Warnings--, and a bit of extra disconnection
Multimedia
Add an ID to MixerBackend
Utilities
Add GHNS support for skins.
This was written by Martin Blumenstingl. Unfortunately I didn't get
a git format diff, hence the incorrect author metadata.
Even more unfortunately even in the third revision it has a couple
of problems that'll need follow-up commits from me since I'm in a
hurry and can't get in touch with Martin ...
REVIEW:102526
QStringList with broken dupe check insert -> QSet<QString>.