Issue 158
21st November 2010 by Danny AllenContributors
Paulo Dias
Mutlu Inek
Matt Williams
Carlos Licea
Mark Wege
Danny Allen
Beat Wolf
Alexander van Loon
Marta Rybczynska
Paul Mendez
This Week...
Statistics
Commits | 2439 by 183 developers |
Open Bugs | 22490 |
Open Wishes | 17181 |
Bugs Opened | 700 in the last 7 days |
Bugs Closed | 920 in the last 7 days |
Commit Summary
Module | Commits |
/trunk/KDE |
240
|
/trunk/l10n-kde4 |
191
|
/trunk/kdesupport |
101
|
/trunk/extragear |
72
|
/branches/stable |
72
|
/trunk/l10n-support |
33
|
/trunk/playground |
27
|
/trunk/koffice |
26
|
/branches/work |
25
|
/branches/extragear |
22
|
Files | Developer | Commits |
269
|
Tobias Koenig |
70
|
217
|
Nuno Fernades Pinheiro |
68
|
158
|
Patrick Spendrin |
56
|
99
|
Volker Krause |
50
|
136
|
Jonathan Michael Thomas |
47
|
114
|
Sergio Luis Martins |
43
|
158
|
Frederik Schwarzer |
42
|
55
|
Andre Heinecke |
41
|
52
|
David Faure |
37
|
2248
|
Andi Clemens |
36
|
Internationalization (i18n) Status
Language | Percentage Complete |
Ukrainian (uk) |
100%
|
Portuguese (pt) |
100%
|
Swedish (sv) |
99%
|
Spanish (es) |
96%
|
British English (en_GB) |
96%
|
French (fr) |
95%
|
Low Saxon (nds) |
93%
|
German (de) |
93%
|
Dutch (nl) |
92%
|
Estonian (et) |
90%
|
Bug Killers
Person | Bugs Closed |
Darío Andrés |
199
|
Myriam Schweingruber |
105
|
Tobias Koenig |
69
|
Christophe Giboudeaux |
35
|
Pino Toscano |
31
|
Aaron J. Seigo |
23
|
Aleix Pol Gonzalez |
15
|
Marco Martin |
15
|
Christoph Feck |
14
|
Joris Guisson |
14
|
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 149 selections this week
Bug Fixes
Educational
When a runner is active when quitting the application, the watchdog's timeout signal may get lost, resulting in the local event loop still being executed and Marble hanging.
Connect aboutToQuit to the quit() slot to avoid that.
It's not possible to use QNetworkAccessManager in a thread on Maemo with Qt 4.7.
This affects all online runners.
Work around it by creating the instance and requests in the main thread.
Should be reverted once the issue is fixed on the Qt side. See https://bugs.kde.org/show_bug.cgi?id=257376 for details.
Graphics
D&D behavior for Tags, taken and updated from the following bugreport:
https://bugs.kde.org/show_bug.cgi?id=256252
Set the lastGlobalThumbSize, otherwise it is always zero and therefore a wrong label is set for the dtooltiptracker as well as the slider on album switch.
There is still some weird issue:
Everytime you set an thumbsize (e.g. 80) and switch to another album, the size is always size +=2 even if you use the maxsize of 256 (it becomes 258).
This only happens when the slider has been moved (a new thumbsize has been defined), if you switch the album a second time, the size+=2 version is used.
KDE Base
When going "up" out of an archive, set the protocol to "file". Fixes
the problem that Dolphin reports an "invalid protocol" and is unable
to view the folder containing the archive.
This is a fix for a regression caused by r1168855. Unit test included.
Tune down the fix for bug 170806 so that the factory forgets about the client, but doesn't unplug every action one by one
(which is slow, and which can crash if one of the associated widgets was already deleted like in bug 246652)
The "run as different user" command works again now by using KDESu::SuProcess instead of KDESu::KDEsuClient.
The latter's behavior was hard to understand, like which pw to enter and how long they will be kept, now the pw will be only kept for this command and has to be always reentered.
Further improvements:
*The input-fields look different when deactivated.
*Also automatically changes the focus to the username-input-field if "use as a different user" is enabled.
react to scene rect changes, not just match count changes, so that the window fits content even when it alters size, such as when configuring an entry
Don't check if the UDisks service is valid - just try to connect the signals.
UDisks is an autostart service, which means that it may not be valid _until_ we try to connect.
* Fixed performer facet
* Always use FileQuery which is much faster than normal queries
More fixes to the Locale KCM
Change the backend model and make more generic methods, allows the number of methods to be halved.
Saving is still disabled, changing country or language is still not working, but no longer accidentally saves a bad config on exit.
If settings are accessed from plasma applet settings, KNetworkManagerServicePrefs reads the configuration once and always displays the same connection list, even if connections are updated from systemsettings.
This patch always makes the list up-to-date by reading configuration from disk.
Make sure that an item's visualRect in the Details View is not wider than the "Name" column.
Fixes keyboard navigation problems if files with very wide names are present in the current folder.
Unit test included.
KDE-PIM
We have two flags for read/unread status, make sure isUnread() uses both and gives back the right result.
Fixes some messages marked as unread to appear really as unread.
Tell the item action selection model that we selected an incidence in the view.
Fixes "Cannot delete an event/task/contact (delete action is greyed out)"
Using HTML instead of XHTML in webkit due some problems,
Will fix them later (Workaround for incoming beta1 tagging/releasing)
Store the password in kwallet after asking the user, on non-wince platforms.
It was only being stored on account setup.
andris: please test.
Let the monitor always fetch the headers of the messages because most filters need them anyway.
For the initial filtering, only fetch the complete payload if mRequireBody is true.
The slider looks really bad in this editor, fix it.
Not sure if it should be done for all sliders or if it only looks bad here.
Improve fix for working-time-only alarms not triggering if KAlarm is started up outside working hours, after the last trigger time during working hours was missed.
(See rev 1197422, 1197414.)
Fix crash when creating a task from an e-mail.
Sometimes, what you put in a KRichTextWidget isn't the same as what you get out. Line terminators (cr,lf) for example can be converted.
So, to see if the user changed something, we can't compare the original incidence with the new editor content.
Instead, we compare the new editor content, with the original editor content, this way any tranformation regarding non-printable chars will be irrelevant.
Do not store iterators of a temporary list.
This used to work, because filters() returned a const reference before my last API cleanup ;)
Workaround for vertical selectors
Make vertical selectors work at startup time while we don't find the original problem in Qt.
To work around the issue we simply call a function to setup the initial values instead of relying on the signal.
Don't switch back to the task viewer, after deleting the task.
Fix sorting.
Doesn't make sense to sort by completion.
A to-do 90% completed can be more urgent than one 10% completed.
Sort by priority instead.
Two fixes for some crazy randomness in the task list:
- The percentComplete property is initialy binded to model.percentComplete, but then loses this binding when there's a mouse release, so after handling the mouse release, we must re-bind.
- We are not interested in all onPercentCompleteChanged events, only on those coming from the mouse release event
Go through groupware logic before deleting an incidence.
Fix reminder time shown when editing a non-recurring alarm's deferred reminder.
Office
Fix: Bug 246894 - kpresenter:openoffice:Text in the ODP document is overlapping.
Handle NeoOffice as OpenOffice as it is a port of OpenOffice to Mac OS X
Fixed several bugs in KisPerspectiveGridManager
What is done:
1) Now the manager doesn't even try to paint the lines inside the
polygon that is not convex. It used to lead to a really weird
picture of a hedgehog on a user's screen :P
2) Fixed an "infinity"-bug. Eigen::Hyperplane::intersection() returns
a random point in case the lines are parallel. Now an additional
check returns a point somewhere around infinity to workaround this
behavior.
3) Changed the algorithm that chooses a line to chop up into
"subdivisions". Now the farthest line from the focus is used for
the division.
Still to be done:
- Make KisPerspectiveGridTool interactive. It will be a really short
fix. I just need to overcome a small infinite loop somewhere ;)
fix of page background drawing order in kword
Networking Tools
fix build on Solaris
Utilities
Undo the marked change if the user either fails to gain authorization or cancels at the authorization screen.
This prevents the canceled operation for being done when another application is installed
Better sizing policy for the sidebar; horizontal resizing no longer makes the sidebar smaller
Games
fix layout bug: now it works fine with --reverse
Other
Improve the page title on the header.
Merged into the stable branch.
Features
Development Tools
New feature: if you set run-tests to upload, then 'make Experimental' will be used instead of 'make test' and your test results will be uploaded to http://my.cdash.org
Educational
Show a flag icon above the distance to destination label to indicate it's the distance to the destination.
With 2.0.2 out the door and hopefully stable enough to keep people busy a couple of days, I'd like to start looking at metadata a bit.
NetCDF is quite cool in that respect, as it supports a lot of stuff:
- strings
- scalars
- vectors
- matrices
- per-primitive strings (aka attributes)
I'd like to reach the point where the sample file at the following location:
http://www.unidata.ucar.edu/software/netcdf/examples/GOTEX.C130_N130AR.LRT.RF06.PNI.nc
can be loaded "completely".
This commit adds support for data-source-level strings (global attributes), but there is a problem: I can't easily check them, as
the View->Strings dialog is too primitive and gathers only kst application-level strings, i.e. the strings defined in the
application itself.
We need to do something like for scalars, maybe even generalizing the ScalarTreeItem from scalarmodel to handle strings as well as scalars. I'm not a template guru, so help with that would be appreciated. I wouldn't want to start duplicating the code from the scalar case!
Add support for vector scalars and strings for netCDF.
I can see scalars in the View->Scalars dialog and strings in the debugger as well as in labels.
We only need to upgrade a bit the View->Strings dialog and do the same for other primitives (matrices, ...) and it will start looking real good for that data source :-)
I am also wondering whether I have to explicitly delete the *att and *var objects created in those functions, or if they get cleared as soon as we leave the scope.
Please check because that would mean a memleak (I haven't done it for now).
Graphics
Port the ImageFilterModel threads to WorkerObject.
A running, inactive digikam has now 11 threads:
- main thread
- 3 INotify threads (probably due to three KDirWatches)
- 5 from Phonon (2 Alsa, 2 Xine)
- the ParkingThread (must remain a normal QThread)
- the ScanController (can possibly be ported)
Update internal libraw to last 0.11.3:
The changes are:
* Color data and black level settings for High ISO for Nikon P7000 camera
* preliminary support for several industrial cameras based on Sony ICX 625/655 sensors.
KDE Base
Borderless windows by default on all activities:
- plasma extenders (callendar etc.)
- applet browser, activity manager
- programs like chromium - since there's no border, there is
no obvious way of moving them between activities.
(alt+f3 menu is not commonly known)
Move the "Show Menubar" entry from the top to the bottom.
For users that have hidden the menubar on purpose having this as first item makes no sense.
* move more properties into AppInterface
* add 'bool multihead'
put the power save settings in the contextual actions as well
provide a containmentForScreen implementation that allows adding containments for screens / desktop affinities even in spite of immutabilities
Use the foreach macro;
Rename vars for lists and items more meaningful;
Cleanup unnecessary code;
Fix handling of yet downloading single file torrents;
Add a message box to ask for user confirmation as a first security measure.
Torrents are not started atm. (?) in slotTorrentAdded, have to check why.
Add detection of limited texture NPOT support.
animate the transitions between the backgrounds; ++elegance.
now to figure out why sometimes the layout doesn't lay the items out in the first place.
Search events and todos by date/range
Create the QML components directory for Plasma and add the first widget (BusyWidget) written in QML
Initial implementation of FlashingLabel written in QML
Allow to cancel the loading of search results.
Started work on IconWidget
IconWidget still has some work to be done, in order to mimic the behaviour of the c++ widget.
The base is here and tomorrow I'll add more on top of that.
Save the position of the notifications only on "mouseRelease" and do it relative to the screen borders.
http://reviewboard.kde.org/r/5914/
KDE-PIM
Insert Code action implemented
- add messagebox for wince if a serializer plugin is missing
Add some markers so it's easy to compare both rich text descriptions
Add mobileExtended header style that shows the list of recipients below the sender name
(matching background image is still missing)
Allow to show all recipients of a mail by switching to mobileExtended header style.
Make the 'Attach Public Key...' action available in kmail-mobile
add calendersupport catalog for archive dialog
Sorting by dtStart isn't very convinient because you will see events that are very far away.
Sort by proximity instead.
Rule:
Events before today go down, after today go up.
Between two future, or two past events, the one most close to today goes up.
Print ids of conflicting items so i can easily find them in akonadiconsole.
Do not change label for show/hide toggle actions
Make the isGroup role available to QML
Make the insertSnippet action do something
Office
Saving of change-tracked inserted table-rows
Saving of change-tracked inserted and deleted table-columns
When using the combobox to type in vector names, insert the new vector at the cursor position instead of appending at the end.
DOC: Added initial support for the SYMBOL field.
DOC: Added support for the TITLE field. Improved instructions suport of the SYMBOL field.
Networking Tools
Also update existing ICQ accounts using the mechanism provided by kdelibs.
See http://websvn.kde.org/trunk/KDE/kdelibs/kconf_update/README.kconf_update?view=markup for more info.
User Interface
new mimes 64x64, 13 to go
new action icon
Utilities
Several improvements to ScreenShotViewer:
- Only allow one dialog to be open at a time, to protect against accidental multiple clicks
- Set the busy cursor while waiting for the dialog to show
- Give the screenshot in the window a drop shadow and a bit of a buffer zone, to help prevent confusion on whether or not the screenshot is an actual window.
- Rip out a bunch of unnecessary code; We already fetched the screenshot as a KTemporaryFile in the ApplicationDetailsWidget, so a full-blown KIO grab to another temp file isn't really necessary
Add a confirmation dialog.
Include a "Don't ask again" checkbox for those who don't want to be annoyed. ;-)
Add the "File" menu to muon-installer
Add a new workerState() function to the QApt::Backend that returns the last event that the worker reported.
(No running worker will return an InvalidEvent)
No margin around toolbar widgets
Optimization
Development Tools
changed: ported away from deprecated KGenericFactory to KPluginFactory
Educational
Put the dialog button box on the right side on Maemo, which makes better use of the available space.
reset() already calls _resetFieldMetadata(), no need to do it twice.
But _resetFieldMetadata() still gets called too many times (down from 4 to 3 times for each vector when loading from the data.wizard!)
One QNetworkAccessManager is enough.
KDE Base
Added new crappy inferencer 2 which does two things only: 1. Forward inference of rdfs:subClassOf 2. Create nao:userVisible properties for all visible resources (We use an int range instead of the "correct" boolean for performance reasons: Virtuoso does not support boolean and Soprano fakes it with strings.) While this is far from optimal it improves the performance of many queries a lot.
In addition this commit hides the nao:userVisible property itself. This is important with the crappy
inferencer 2 which creates nao:userVisible properties for all resources. These would otherwise show
up in Dolphin.
Two substantial performance improvements based on the new CrappyInferencer2 in the storage service in kdebase: 1. We now have type inference and can use "?r a <type>" directly without using crappy inference. 2. Crappy inferencer2 creates a nao:userVisible property for all resources. Thus, again there is no need for crappy inference1 like conditions that are very slow. Instead we can directly check the visiblitly on the results.
Cleanups:
- Rename "non-kpart" to "old style" (filename-based, doesn't support any child xmlguiclients)
- Rename "kpart" to "from [xmlgui]factory", since that's what this is really about
- Remove outdated comment about code that was causing 97572, seems Qt got smart enough to not
change the scroll position on the listview when we're clearing and re-filling it.
cache the status of currency, use that in activity icon.
Make it possible to use flash() without arguments
So we can declare the FlashingLabel, configure it, then just call flash() when needed (i.e., use the text already set).
Added new crappy inferencer 2 which does two things only: 1. Forward inference of rdfs:subClassOf 2. Create nao:userVisible properties for all visible resources (We use an int range instead of the "correct" boolean for performance reasons: Virtuoso does not support boolean and Soprano fakes it with strings.) While this is far from optimal it improves the performance of many queries a lot.
In addition this commit hides the nao:userVisible property itself. This is important with the crappy
inferencer 2 which creates nao:userVisible properties for all resources. These would otherwise show
up in Dolphin.
Two substantial performance improvements based on the new CrappyInferencer2 in the storage service in kdebase: 1. We now have type inference and can use "?r a <type>" directly without using crappy inference. 2. Crappy inferencer2 creates a nao:userVisible property for all resources. Thus, again there is no need for crappy inference1 like conditions that are very slow. Instead we can directly check the visiblitly on the results.
KDE-PIM
Do not run a modifyjob is the payload did not change, we only write back the payload modification to disk in maildir/mbox case.
There is a similar solution in the maildir resource.
Makes the resource much responsive, burns less cpu, eg. on mass "mark as" operations.
Make kmail-mobile start 2x faster (for big mail folders) by removing the pop filtering code.
In kmail-desktop I commented some stuff instead of removing, feel free to clean that cruft.
Office
Improve layouting performance of kword.
The layouting of the odf spec now takes 30 seconds compared 2:30 which now only uses 20% of the time.
User Interface
Optimized button rendering.
Other
Development Tools
Silence leaks from fontconfig initialization, I don't think kde developers are interested in debugging fontconfig (or the way Qt uses it)
Always build icemon as a standalone app.
Remove cmake/modules/ and cmake/CMakeLists.txt
cmake/modules only had yet another copy of FindIcecream.cmake, and besides that the file was being installed, which is not good (Find*.cmake files should not be installed by the applications themselves).
Furthermore, CMAKE_MODULE_PATH is not being set in the top-level CMakeLists.txt file anymore.
As discussed today on #kde-devel, doing so meant that we considered the applications in playground part of a coherent bundle of apps, such as kdenetwork or kdesdk.
This is not the case, as each application is here only because they are still under heavy development; the situation is more similar to extragear, in which each application does its own release separately.
A couple of kdesrc-build changes:
* kdesrc-build no longer prepends entries to the path that it normally would (such as
$KDEDIR/bin, $QTDIR/bin) if it finds that those entries already exist in the system's
environment variable. (This affects PATH, LD_LIBRARY_PATH, and PKG_CONFIG_PATH for the
most part). The reasoning is that we always want system path entries to be the
least-preferred, so promoting them to near the beginning of the environment variable
inadevertently could have the ill effect of mixing system resources with what we're
trying to build. This was noticed by Jeremy Whiting who is using a system Qt (in /usr)
and had to hack around kdesrc-build to make it work.
* The 'binpath' setting in its first incarnation simply set PATH directly to that value,
so that the then-kdecvs-build could work fine from cron. It later took on a
default value of $PATH, for ease of interactive use, and even later
kdesrc-build changed the way we construct environment variables, so that now
it is PATH=$binpath:$implicitly_set_vars:$PATH. But binpath itself contains
$PATH, which makes this incorrect. Now binpath defaults to nothing, which
should help ensure a correct build, and setting binpath simply prepends those entries
to the front of PATH without clearing the ones already set. (If you need to actually
clear entries, you'll need to do so at the shell or use some kind of wrapper script).
Add polkit-qt-1, fix some docu, remove unnecessary .git extensions
Educational
Starting with KDE 4.6, we separate the Marble applications (KDE and Qt) version numbers from the Marble library version number:
The library version number will continue as before (KDE 4.5: 0.10, KDE 4.6: 0.11), but the Marble applications will be released as version 1.0 now (KDE 4.5: 0.10, KDE 4.6: 1.0).
This separation is intended to underline that we have mature applications (1.x), but keep improving the library API under the hood, breaking ABI at times (0.x).
The application version will be bumped when branching 4.6.
Graphics
Refactoring of the CMake files: Only little changes have been made so far, because it is way more complicated than I thought.
Right now the following things have been done:
- static lib for queuemanager
- static lib for advancedrename
- one INCLUDE_DIRECTORIES in the main CMakeLists.txt file
- removed duplicate entries
We should do the refactoring in small amounts, every now and then we can fix
some problems, so that one day we are able to build other projects like the
unit tests and the themedesigner without recompiling the whole digiKam code
again.
Gilles, can you test this patch with Windows and Mac?
Adapt digiKam coding style guides:
This is a huge patch to finally have a common coding style in the source code.
This patch adds:
- curly brackets to all single line statements
- left pointer / reference operator style (char* bla)
- indent 4 spaces
- convert tab -> spaces
I did not change the libs from 3rdparty and the ones from libs/jpegutils.
Code compiles fine under Linux, there shouldn't be code breakage because we only reformat the code and add missing brackets. If code is broken now (logic errors due to missing brackets), it was broken before.
I add this as one single patch so we can easily revert it, if needed.
I think it is really important to have one common style in the code, and that we don't mix it.
I will also add some comments to the HACKING file later on.
Gilles, if all compiles fine under Windows and Mac, I'd like to do the same for the GSoC branch, so that changes from trunk are easier to apply to the branch.
KDE Base
Remove the dependency from the embedded DocBook XSLT, use our translations
This commit introduces the last changes needed to get rid of the old embedded
copy of DocBook XSLT:
- make the common includes (kde-common-*xsl.cmake) dependent on the
system-provided DocBook XSLTs (i.e. it generates them on the fly during
the compilation).
- change the macro used to generate manpages to use kde-include-man.xsl
instead of the embedded copy of manpages generator (kde-man.xsl has never
been used in KDE Platform 4.x as far as I know).
It is worth noting that, on the contrary, kde-include-common.xsl is not
used directly (because it is really common to multiple files, here
kde-include-man.xsl really replaces the kde-man.xsl).
- introduce a small helper program as a dependency for meinproc which will
generate, during compile time, two xml files needed in order to make
the system working:
* all-l10n.xml contains the references to all the system-provided language
files for XSLT, plus the ones not included upstream but translated in our
repository; it is used in place of the system-provided common/l10n.xml
* kde-custom-l10n.xml contains the references to the language files
containing customizations for system-provided languages (included into
the official docbook-xsl).
- do not install anymore the files under docbook/xsl (which will be removed)
See also: http://kde.markmail.org/thread/as4ctj7kt3raws4q
And now let's hope that the whole thing won't explode...
Recommit patch as this wasn't causing the crashes.
don't bother with the hover background as you can't even really see it anymore and it just looks funny and odd.
Nice try in r930095, but this is not what 'run_desktop_files' from kiosk
is about - it disables only .desktop files outside of standard locations
(see e.g. kiosktool description), not all .desktop files altogether
(which would be the 'break a lot of things' kiosk option).
avoid dbus deadlocks by not calling dbus directly from a dbus-accessible function.
is there any better way of doing this?
Use the inactive text color for all columns except the name column.
This indicates for the user that hovering other columns does not change the actions context.
Make the best of webservers sending 304 (not modified) status while telling us that the content is not cacheable in the first place.
don't autohide no matter what if there is editing in play
KDE-PIM
- merged into qt, so take it out here
added: working branch for port to non-desktop ui styles
Move to next/, i'm adapting it to the new Scheduler.
Rename to MailScheduler2, so it doesn't clash with the old one.
(While the old one is still in use) .
- make disconneced mode standard for kolab resource
Remove the last bit of Qt3Support usage from the Kontact shell, which happened to be dead code...
Office
disable brush editor, not ready for release
Networking Tools
KTorrent and libktorrent have moved to git.
User Interface
Some icons we'd appreciate - hope this is the right place to request icons.
Utilities
A more space-concious form factor for the forward/back buttons in the breadcrumb
Not reporting download size in our confirmation box anymore
Games
Kill KDE3Support in Kolf.
Other
This branch of perlqt4 will contain an experimental version that doesn't use the Qt::this() value, or QtCore4::isa.pm.
Remove dependence on Qt::this().
Remove dependence on QtCore4::isa.
Remove space-prefixed class names.
XS_AUTOLOAD no longer has to call perl methods.
But, it doesn't work. XS_AUTOLOAD can't tell if it was called via $object->method() or Qt::Object::method(), making it unusable. The current solution is to examine the op tree of the entersub op inside XS_AUTOLOAD, but that fails when running in the debugger, because the debugger calls it differently.