prev
Issue 72
19th August 2007
by Danny Allen
next


This Week...
The Summer of Code for 2007 nears its end. Implementation of more features in the Step physics simulation package. More graphical game themes in KMahjongg, KWin4 KShisen, KGoldRunner and KJumpingCube. The start of a new game, KDiplomacy. More development in the Blitz graphics library. Lyrics Plasma applet and other interface work for Amarok 2. The start of the implementation of panels, and a clipboard engine in Plasma. More features in the ODBC Data Sources KControl module. Animation support in the Raptor menu. KCacheGrind is ported to QGraphicsView. MusicXML import function in KOffice. Ability and an application for viewing statistics in KPixmapCaches. KGraphEditor imported, an application to edit "dot" graphs. A new architecture for KMobileTools. KTrace renamed to Inspektor.

Last week, Daniel M. Duley (aka. Mosfet) returned to KDE SVN development. I asked Daniel for a reintroduction and an overview of his work on the Blitz graphics library:
How I came back to developing for KDE?
I've actually been back for a while, I just haven't been making much noise because I haven't had anything to release yet. Nonetheless I've been chatting with various developers and coding my own stuff mostly with Qt 4 for quite some time.

How Blitz came about and what does it do?
Since I've been coding on my own for some time one of the things I've been doing is improving the old effects from KDE3.x. These were originally pretty buggy and sloppily coded, (at least the stuff I wrote ;-). So I dumped the old code and reimplemented most things from scratch using Qt 4. Sometimes I kept the same algorithm, often I used new ones, added a sprinkling of MMX here and there. That type of thing.

My original intention was just to use this myself until the new KDE imaging library, Quasar, became available. Then I'd port the good stuff to that. But when it became apparent that Quasar wouldn't be ready until KDE4.1 and the old KDE effects were hopelessly broken I suggested that they use the filters I have been working on in the meantime. That's how Blitz came to be. Once Quasar is available I'll try to make sure it supports all the stuff Blitz does in order to make the transition for KDE4.1 as easy as possible.

Besides being much better coded the improvements in Blitz are numerous and include:
  • MMX Smoothscaling and a high quality, filtered smoothscale
  • MMX-SSE Grayscale and invert
  • MMX-SSE Sobel edge
  • MMX-SSE Integer convolve
  • MMX-3DNow! Floating point convolve
  • MMX-3dNow! Gaussian blur
  • Inline HSV and interpolation
  • New blurs and sharpens
  • Far more efficient methods for things like despeckle, equalize, normalize, etc...
For the methods that existed before in KDE virtually every one has had multiple improvements and should perform visibly better using either the MMX or plain C++ versions. Each has also been thoroughly tested on 8bit, 32bit RGB, 32bit RGBA, and premultiplied images, (I took a vacation day just to do this >:).

Another thing people may not be aware of is just how much Qt has improved in it's graphics handling, especially using a QPainter on a QImage. If you go looking around Qt's source, (src/gui/painting/), you'll find all sorts of very clever MMX/SSE accelerated goodness. For some of the things we used to do manually using scanlines such as blending images, it now makes more sense just to use Qt. They deserve a lot of credit on this.

Anyways, currently I've been back hacking in KDE's SVN, just going through things and fixing some of the old graphics code. For example I just finished a large KIconEffect rewrite that should both perform much better and fix some bugs with the new Qt4. Small stuff, but someone needs to do it before KDE 4 gets released.

Other things I've been working on...
Some of you may remember an application from the old days of KDE called "Pixie". It was meant to be a high performance image manager for people with a ton of images, (several thousand), per folder. Well, I've been working on that and hope to get an initial version out soon.

With excellent image related applications like Digikam, Krita, KolourPaint and Gwenview around some people may wonder why I'm bringing back Pixie, but for me it's mostly a testbed for trying out new technology, user interfaces, and ideas. I occasionally chat with Aurelien Gateau of Gwenview and Boudewijn Rempt of Krita, share ideas about code, etc... so Pixie has been just a way for me to re-familiarize myself with KDE/Qt and experiment with stuff.

On the technology side the most obvious benefit to be gained so far from this is Blitz, (much of which I plan to add to Zack Rusin's Quasar). But I'm also working on different things like a high performance iconview that follows Qt's model/view architecture and other people can use:

Note these are all just early development screenshots of me experimenting with stuff :P

Pixie's high performance icon view.

I also have been playing with KParts and Pixie is now a KParts host that can load any KDE component into a tab and properly merge it's interface. Konqueror it ain't but this is good practice for me and a way to re-familiarize myself with KDE's internals after being gone for so long.

Pixie using a KParts component.

On the user interface side I'm taking a cue from the interfaces you see on newer digital satellite and cable television receivers. I've gotten rid of the statusbar and "spinning gear" progress indicator and replaced them with translucent overlays. This is just me experimenting with user interface ideas.

Using overlays to present information.
Even other KDE components use them.

On a more random note, if you don't make tooltips toplevel windows you can make them translucent without requiring composite and it will work on everyone's machine. The downside: it has to fit into the main window :(

A somewhat ugly tooltip using the mainwindow.

On an even more random note, with improvements in Qt you can now easily do crazy stuff like have a scaled wallpaper that properly shows through all the widgets on top of it. No this is not going to be how the application actually looks, but it's fun to play with!

Crazy scaled wallpaper stuff :)
I've been using this wallpaper from kde-look.org for testing because the spider is right where the widgets meet :)


Jason vanRijn Kasper provides a round up of the progress in the KPilot Summer of Code project, "Enhance KPilot Record-based Syncing":
The KPilot Summer of Code project is winding down to a close, with this Monday being the “pencil's down” date. Bertjan Broeksema has done an outstanding job and has accomplished all that we said we wanted to on our Summer of Code proposal. The problem that we faced in KPilot was that each of our conduits did a lot of things in common, but all of them had their own code for doing these things. This has made maintenance a much harder job than it should be, and has led to some conduits being less feature-complete than they should be - not to mention having too many bugs from the duplicate code.

So the idea was that each of our record-based conduits should be doing the same sorts of things as far as algorithm, process, and flow, and that we should pull as much of this common code out of the conduits (and into some base classes) as possible. This leaves our conduits to be responsible mainly for data transformation (turning a PC calendar VCal record into something that can be synchronized with a Palm database record), and should address the problems listed above.

But while we were at it (and while we were taking the time to think through and design how KPilot should work), we also put as much effort into making it as hard as possible for our conduits to destroy our user's data. It's something that needs to be carefully included in the design process, since it simply doesn't happen by accident (not destroying data during edge cases, etc.). So we made some intentional design decisions that should hopefully result in fewer "KPilot ate my future" e-mails.

We officially had 3 main goals for our Summer of Code project:

KPilot Class Diagram1. Sequence Diagrams and Class Diagrams

We used a loose interpretation of the Rational Unified Process for our project this year. We spent 5 weeks at the beginning of the project, creating the Use Case for our upcoming work, and then laying down some Class and Sequence diagrams which showed how all of the requirements and flows from our Use Case would be realized. We used BOUML for our UML diagrams (I'd have rather used Umbrello, but Bertjan had some difficulties in getting it working on his Gentoo box). All in all, though, I believe we found a good balance between spending enough time to make sure we had a well-thought-out design and having enough time to implement it all.

2. Implementation of the abstract record framework

Since our Use Case focused almost entirely on the functionality required for all of our conduits, Bertjan was able to fairly quickly write the code for the base conduit classes. We found very few design challenges and misses during the code-writing phase, which I credit largely to the thorough work we did on our Use Case and UML models. It goes against the typical Open Source Hacker mindset to spend so much time preparing to code and not actually coding (I mean, coding is the fun part, right?). But Bertjan patiently worked with me through this phase and I think we have some really good quality code as a result. Bertjan also wrote a series of unit tests to help verify his code in the base classes.

Exciting New KPilot Keyring Viewer3. Implementation of a new conduit as proof of concept.

Early on, we weren't sure which route to go - whether we should try to port one of our existing conduits to the new base classes or whether we should just create a new conduit. As it turns out, we did our SoC work in trunk/, which means we didn't have a very stable code base (we're still working on getting KPilot stable in trunk/) to start from. So we decided to create a new conduit to use as an implementation for our new base classes rather than struggle with porting code and also trying to fit it into the new base system. I've been wanting to have a way to sync with the Keyring Palm application (encrypted, multi-purpose Palm database for storing passwords, account numbers, etc.) for a long time now, so we decided to create a new conduit in trunk to test and verify the new base classes. We're just finishing up a few minor nits with it and hope to have it fully functional by EOD, Monday.

So, to summarize, thanks to this year's Google Summer of Code KPilot project, we now have a solid base conduit framework that is implemented in a new Keyring conduit. Our next steps in the KPilot team are:
  • stabilize the daemon and user-visible portions of KPilot
  • finish porting the old conduits over to the new KDE4 APIs
  • port the old/existing conduits over to our new base record framework
  • stabilize, test, wash, rinse, repeat
  • look at OpenSync framework again and (now that we have a common conduit framework in KPilot) see if we can leverage OpenSync's libraries for the underlying syncing algorithms.

Inge Wallin writes an update on the new features (including Summer of Code projects) in Marble (illustrated by screencasts by Andrew Manson):
For some reason, Marble has become a poster boy for the new generation of KDE applications. It's graphic, it's beautiful, fast, and uses Qt4 to it's full potential. It has also managed to gather a sizable development team in almost no time. An interesting thing with Marble is that it exists in two incarnations: one as a KDE application in the KDE-Edu module, and one as a Qt-only version. So to keep up with a good tradition, here are the latest developments.

Two days ago, this Friday, we released version 0.4. Among the new features from last version is a KDE version, configurable legend, improved performance, new map types, better data sets, support for downloading tiles on the fly, and more. See the release announcement above for the full details.
Download Marble Demonstration video (15.3 MB, MPEG)

Personally I think that the most interesting "feature" is the improved datasets. For instance we got a new set of satelite images with a resolution of 500m/pixel. Obviously, this is not as good as Google Earth, but it's good enough to make a very impressive map. Since Marble is tile based, and all of this data would make the KDE-Edu module far too large, the tiles with the highest resolutions are stored on a server and downloaded when needed. This will make much demand on the servers when KDE 4 is finally released and millions of users start using this feature. There is an active discussion within KDE on how to solve it.

During the development of 0.4, we managed to attract help from outside KDE. This has lead to support for both MacOS X and Windows.

Even with this impressive list of new features, most of the latest developments within Marble are missing in this release. I am talking about the projects of the Summer of Code students. They are basically ready, but disabled in 0.4. Marble had 3 students, and the next week will mean integration and enabling of all the projects: Flat projection, GPS support and support for Google Earth KML files.

Andrew Manson, GPS programmer writes:
"The GPS GSoC project was to implement GPS device support and GPX file reading and writing. GPX files contain important GPS data such as:
- Trackpoints, which are generally generated by the GPS device as a form of tracing where you have been;
- Waypoints, which are user-defined points of interest, and
- Routes, which contain a series of waypoints that represent a directional path.
Download GPS integration in Marble video (8.1 MB, MPEG)

The GPX file view is a very simple interface to deal with open GPX files and can be enabled by running marble with the --enableFileView command line argument. GPS tracking is provided by the gpsd project and can be enabled by compiling Marble on a Linux system that has libgps (provided by installing gpsd) installed and running marble with the --enableCurrentLocation command-line argument."

Most of these features will of course be enabled by default after the project is fully integrated.

The second project, support for Flat Projection, was done by Carlos Licea.
Download Flat (2d) Projection in Marble video (2.6 MB, MPEG)

Carlos writes:
"The flat projection project has evolved very well, although not as fast, to a point in which it's almost usable now. We have finished almost everything the spherical projection has: texture, place-marks, vectors, distance measures, you name it :).

As usual some task were relatively easy while others were hard, and yet others that 90% of the task was just wrote in one go while the remaining 10% was harder or in some way complex, so that I actually had to think throughly about it.

Just to give a small example: have you ever stopped to think about how Asia crosses the dateline so that mostly of the continent is on one side of the Earth and the rest in the other? Well, I had never before, but now I had to do some voodoo magic and tricks so that the small bit of land that is on the other side of the map gets displayed correctly (for those curious I had to separate the polygon).

So in conclusion, there are a few glitches that need to be solved before this projection it's actually usable but, hey, Marble team is really fast, so it will not take too much time before you can pick "Flat projection" instead of a Spherical Projection".

Finally, support for the standard KML (Keyhole Markup Language) format used by many applications such as Google Maps was done by Murad Tagirov of Belarus.

We were not able to reach him for a comment, but his project is also being integrated right now without too much trouble.

An interview with Carlos Licea, the student working on the "Flat (2d) Projection in Marble" Summer of Code project, can be read here.

As you might have read last week, the author of Kalzium, Carsten Niehaus, removed a couple of features which have been in KDE 3 version of Kalzium but didn't make it into KDE 4.0. The reason is that Carsten doesn't have enough time right now for Kalzium to fix all remaining issues.

This is a call for interested coders to help Carsten maintain Kalzium. If you are interested in improving Kalzium by porting remaining features or adding new one contact the Kalzium mailing list. Thanks.


Statistics
Commits: 2547 by 234 developers, 6323 lines modified, 1198 new files.
Open Bugs: 14204
Open Wishes: 12945
Bugs Opened: 160 in the last 7 days.
Bugs Closed: 122 in the last 7 days.

Commit Summary
Module Commits
/trunk/KDE
1064
/trunk/l10n-kde4
390
/trunk/koffice
208
/trunk/playground
186
/branches/work
160
/branches/stable
88
/trunk/extragear
77
/trunk/www
76
/branches/extragear
72
/trunk/kdesupport
67
Lines Developer Commits
285
Arto Hytönen
122
209
Pino Toscano
96
191
Laurent Montel
81
271
Clarence Dang
62
55
Thanomsub Noppaburana
49
260
Torsten Rahn
46
103
Inge Wallin
45
44
David Nolden
44
43
Kevin Patrick Scannell
43
80
Marijn Kruisselbrink
40

Internationalisation (i18n) Status
Language Percentage Complete
Portuguese
99.56%
Swedish
98.34%
Japanese
93.79%
Greek
91.47%
Chinese Traditional
87.87%
Spanish
85.89%
German
81.18%
Dutch
76.21%
Farsi/Persian
74.62%
Italian
72.28%

Bug Killers and Buzz
Bug Killer Number Of Bugs Closed
Bram Schoenmakers
24
Stefan Nikolaus
19
Rolf Eike Beer
19
Thomas McGuire
16
Tommi Tervo
9
Bruno Virlet
7
Harald Sitter
7
Felix Seeger
5
Mark Kretschmann
5
Richard Lärkäng
5

Program Buzz
Amarok
  6305
K3B
  5640
KMail
  5120
Kopete
  4330
Kontact
  3948
Kate
  3880
KDevelop
  3205
digiKam
  2798
Kicker
  2436
SuperKaramba
  2154


Person Buzz
David Faure
  856
Sebastian Kügler
  854
Stephan Kulow
  771
Matthias Kretz
  654
Adriaan de Groot
  630
Allen Winter
  629
Waldo Bastian
  440
Aaron J. Seigo
  364
Boudewijn Rempt
  340
George Staikos
  322
Commit Countries

Commit Demographics
Sex
98.9 %       Male
1.29 %       (unknown)
0.313 %       Female
Motivation
52.1 %       Volunteer
37.8 %       (unknown)
10.5 %       Commercial
 
Ages
61.7 %       (unknown)
19.6 %       25 to 34
14.2 %       18 to 24
3.49 %       35 to 44
0.717 %       45 to 54
0.672 %       Under 18


Contents
  Bug Fixes Features Optimise Security Other
Accessibility
Development Tools [*] [*]
Educational [*] [*] [*]
Graphics [*] [*]
KDE-Base [*] [*] [*] [*]
KDE-PIM [*] [*]
Office [*] [*] [*]
Konqueror
Multimedia [*] [*]
Networking Tools [*] [*]
User Interface [*]
Utilities [*] [*] [*]
Games [*] [*] [*]
Other [*]


Bug Fixes
Games
Nicolas Roffet committed a change to /trunk/KDE/kdegames/libkdegames/highscore/kscoredialog.cpp:
Fixed a bug in the highscore dialog.
If you opened it with some tabs and then closed it and played a game of a group that was NOT one of these tabs, if you won, the the dialog and the game crashed... -> not nice.

However, I discovered other serious bugs in this dialog like:
- wrong tag displayed ( -> not the one where you have to type your name!...)
- click on "Close" before "Enter" do not save the highscore
And I'm not writing about the wanted improvements... -> A lot of work for KDE 4.1! ,o)
Diff Revision 700979

KDE-Base
Daniel Teske committed changes in /trunk/KDE/kdelibs/kio/bookmarks:
Fix how the ContextMenu are shown, to make it far easier to show a custom contextMenu for your bookmarks.
(This only affects Konqueror, which is also ported with this commit.)

And make the KBookmarkOwner API to enable/disable actions future proof. Instead of using one virtual function per action, use one virtual function with an enum parameter. (Which can be binary compatible extended.)
Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 699518

David Faure committed changes in /branches/KDE/3.5/kdelibs/kdeui:
Use KLineEdit instead of QLineEdit so that Ctrl+Insert works for copying out of those fields (I copy all the time from kcolorchooser, so it's frustrating when Ctrl+Insert doesn't work and I have to remember to use Ctrl+C...)
Diffs: 1, 2 Revision 699954

Pascal Létourneau committed changes in /trunk/KDE/kdelibs/kdeui:
Fix handling of shortcuts containing a ';' by adding an extra space after the ';' used to separate each QKeySequence (QKeySequence::toString() do something similar)
Diffs: 1, 2 Revision 700094

KDE-PIM
Will Stephenson committed a change to /branches/kdepim/enterprise/kdepim/kmail/messagecomposer.cpp:
When sending an encrypted message, with an empty body, and the encryption key selection or encryption prefs selection dialogs were cancelled, mNewBodyPart was deleted without ever having been initialised.

Also init some other vars ASAP. I've looked for cases of things being used uninitialised and this should be safe.
Bug 144303: KMail/Kontact crashes when cancelling GnuPG signing a new message
Diff Revision 700035

Thomas McGuire committed changes in /trunk/KDE/kdepim/kmail:
Fix the cursor position for templates.
Now %CURSOR works again, this was somehow lost in porting.
Additionally, it is now possible again to set the cursor to the first line.
Bug 141459: when replying kmail starts at the end
Bug 140917: Not possible to set cursor to beginning of message with templates
Diffs: 1, 2, 3 Revision 700430

Utilities
Rolf Eike Beer committed changes in /trunk/KDE/kdeutils/kgpg:
Fix saving of display options

The visibility of the columns (like trust and creation date) were only stored if you chose quit from the context menu of the applet, not when you used Alt-F4 or quit from the main window. The options to hide expired keys or show only secret ones were never stored at all.
Diffs: 1, 2, 3, 4 Revision 699444

Rolf Eike Beer committed changes in /trunk/KDE/kdeutils/kgpg:
Improve and fix key exporting

-allow exporting not only to default keyserver, but to any in the config list
-key may also exported as minimal key (e.g. for keysigning parties)

-exporting to local files did not work (gpg doesn't understand file://)
Bug 114303: Enhancement: Allow --export-options export-minimal option in expo...
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 700349
View Visual Changes (to 1 file)

Rolf Eike Beer committed a change to /trunk/KDE/kdeutils/kgpg/keyservers.cpp:
Fix wrong import key ids if key server returns complete fingerprint

While at it: use the last 16 bytes of the fingerprint to receive the key.
This should ease the problem with duplicate key ids a bit.
Bug 117799: duplicate Key ID confuse kgpg
Bug 139774: kgpg uses wrong keyid to import key from keyserver
Diff Revision 700719

Features
Development Tools
Allen Winter committed a change to /trunk/quality/krazy2:
New export mode called "textedit", as requested by Mirko.
Prints 1-issue per line in the format, file:line:issue

Mirko, you can help me test krazy2 (which is in trunk/quality) or you can wait until krazy2 is finished and renamed back to "krazy".

Hope this is what you wanted.
Diff Revision 699411

David Nolden committed changes in /trunk/KDE/kdevelop/languages/cpp/duchainbuilder:
Create nice dot-graph dumps of the contexts, where relationships between declarations, contexts, definitions, imported contexts, etc. are visualized
Diffs: 1, 2 Revision 699761

Vincent Verhoeven committed changes in /trunk/playground/bindings/krossjava:
Registering multiple scripts seems to work, try "krosstest DelayedScript DelayedScript".

There are problems with inner classes and Java threads, probably related to the classloader.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 700998

David Nolden committed changes in /trunk/KDE/kdevelop/languages/cpp:
Compute context match qualities and return them to the completion-widget when requested. This will be used for highlighting best matches.
Diffs: 1, 2, 3, 4, 5, 6 Revision 701004

Josef Weidendorfer committed changes in /trunk/KDE/kdesdk/kcachegrind/kcachegrind:
kcachegrind: Port to QGraphicsView

The cause of the slowdown before was the scaling down of the background blending in the birds-eye view. This is fixed by using a QGradient there.

Improvements by taking advantage of the levelOfDetail in paint methods of QGraphicsItems, e.g. scale line width accordingly and leave out tiny names in the birds-eye view.
Diffs: 1, 2 Revision 701265

Educational
James Bowlin committed changes in /branches/work/kdeedu_kstars_htm/kstars/kstars:
Labels are now never overlapping the info boxes. The problem _was_ that the coordinates were changing when the boxes weren't being drawn.

[Holy Heisenberg Batman!]

I fixed the problem with the kludge of copying the coordinates every time the boxes are drawn and then using the copies when it came time to reserve space for the boxes in the SkyLabeler. If the coordinates stop changing (when the labels don't move) then this code can be removed.

I made an array of InfoBox* which greatly simplified the drawBoxes() routine and also the new reserveBoxes() routine. The array can be used to simplify a lot of the other code in InfoBoxes but I haven't done that yet.

I also noticed that the InfoBoxes seem to get drawn more often than is needed. The get drawn about 20 times in quick succession at startup and then they get drawn twice per second thereafter. The two draws are in rapid succession and I suspect that just one would suffice.

I'm returning out of SkyMap::drawHighlightConstellation to keep my draws fast. The code that lets the user select this should be waiting for me in the trunk.
Diffs: 1, 2, 3 Revision 699382

James Bowlin committed a change to /trunk/KDE/kdeedu/kstars/kstars/skymapevents.cpp:
Added slewing to the zoom keys: plus, equals, underscore, and minus.

It was a simple change and is pretty cool. I had originally intended to have control+ those keys take larger zoom steps but this was much easier to implement. If people don't like this, I'll be glad to remove it. I did it to make debugging zoom-dependent label thresholds easier.
Diff Revision 699649

Pino Toscano committed changes in /trunk/KDE/kdeedu/kig/kig:
use KUndoStack to be more KDE-ish
Diffs: 1, 2 Revision 699980

Vladimir Kuznetsov committed changes in /trunk/playground/edu/step:
Lots of work done offline:
- item groups in WorldBrowser, loading and saving
- initial version of Gas
- custom context menus for items
- html in notes
- many bugs fixed, even more introduced
- maybe something more which I've forgotten
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 25 more) Revision 700348
View Visual Changes (to 4 files)

Carlos Licea committed changes in /trunk/KDE/kdeedu/marble/src/lib:
Finished the integration of the flat projection.
Where the function were short enough they were just wraped in a switch, where the differents in function were too big they were replaced by 2 different functions.

In order to get a flat map ViewParams' m_projection must be se to Equirectangular and MarbleModel.cpp line 99 Spherical must be changed to Equirectangular. Next steep, bind it to GUI.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 7 more) Revision 700441

Vladimir Kuznetsov committed changes in /trunk/playground/edu/step/stepcore:
Implemented collisions between particles and polygons
Diffs: 1, 2 Revision 700772

Pino Toscano committed changes in /trunk/KDE/kdeedu/marble:
Add KConfigXT settings for the KDE GUI.

It has less options than the QSettings used for the Qt GUI, as all the main window saving/restoring is handled automatically by the KDE main window classes.
Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 701250

Vladimir Kuznetsov committed changes in /trunk/playground/edu/step/step:
Initial units support.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 5 more) Revision 701492

Games
Luciano Montanaro committed changes in /trunk/KDE/kdegames/kgoldrunner/themes:
A retro theme for KGoldrunner.
Diffs: 1, 2, 3, 4, 5 Revision 699070
View Visual Changes (to 3 files)

Eugene Trounev committed changes in /trunk/KDE/kdegames/kjumpingcube/pics:
Added test background for kjumpingcube. Improvements to follow.
Ian, I have added 6 new elements to the theme: face1, face2..., face6 they are to make it possible to create nmbered theme later.
Diffs: 1, 2 Revision 699285
View Visual Changes (to 1 file)

Mauricio Piacentini committed changes in /trunk/KDE/kdegames/libkmahjongg/tilesets:
Add the beautiful Traditional tileset by Shamus.
Diffs: 1, 2, 3, 4 Revision 699629
View Visual Changes (to 1 file)

Mauricio Piacentini committed changes in /trunk/KDE/kdegames/libkmahjongg/tilesets:
Adding Alphabet tileset by Raquel Ravanini, to be used by KShisen and KMahjongg.
Diffs: 1, 2, 3, 4 Revision 699633
View Visual Changes (to 1 file)

Mauricio Piacentini committed changes in /trunk/KDE/kdegames/libkmahjongg/backgrounds:
Add Light Wood background by Raquel Ravanini, a good bg to use with Alphabet tileset.
Diffs: 1, 2, 3, 4 Revision 699634
View Visual Changes (to 1 file)

Luciano Montanaro committed changes in /trunk/KDE/kdegames/kgoldrunner/themes:
Added a variation on the Nostalgia theme, with blue, shadowed bricks.
Diffs: 1, 2, 3 Revision 699894
View Visual Changes (to 1 file)

Ian Wadham committed changes in /trunk/KDE/kdegames/kgoldrunner/src:
Implement new level-selection dialog box, simplified menu and last game and level saved in config, the default (for first-time players) being Tutorial level 1.
Diffs: 1, 2, 3, 4, 5 Revision 700986

Nicolas Roffet committed changes in /trunk/KDE/kdegames/kblackbox:
Huge changes.
I was a long time offline and could not commit them separately. I try to summarize:
- I moved the elements of the left (score and balls) in the view itself. So the game looks better and is better integrated. It's also more like the other KDE games of KDE 4. The great think is that it's now possible to drag and drop the balls directly. :o)
- I added some "What's this?" texts.
- I changed the way the score is calculated. It's more like "arcade" now as the elapsed time counts.
- I added highscore support with the class of libkdegames.
- I fixed some bugs and EBN points.
- Some small usability improvements also.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 17 more) Revision 700987
View Visual Changes (to 1 file)

Eugene Trounev committed changes in /trunk/KDE/kdegames/kwin4/grafix:
My take on 'pretty' theme for kwin4. Lots of changes this time. Please try it out and comment.
Diffs: 1, 2 Revision 701296
View Visual Changes (to 1 file)

Graphics
Daniel M. Duley committed changes in /trunk/kdesupport/blitz:
Filling a developer's request by adding a cheap sharpen ported from Imblib2.

I evaluated this before and didn't like it because it's not as good as the convolve based one with it's fancy kernel and proper edge handling. But it's simple and faster. I also added it to the test app to make sure it works.

If your a developer handle it the same way as blur: use sharpen() for quick sharpening and use gaussianSharpen() for higher quality results.
Diffs: 1, 2, 3, 4, 5 Revision 699374

Albert Astals Cid committed changes in /trunk/KDE/kdegraphics/okular:
Back from holiday, let's do some committing :-)
* Update some copyright years and mail addresses
* Search does not block the GUI anymore YUHUUUUU
Well, it it does but it's almost unperceptible, that means the searching methods of Document no longer return a bool but a void and the Document::searchFinished signal is used to know if something was found, nothing was found or the user pressed the cancel button !YES! one can cancel search now :-)
* TextPage no longer holds the area and the current transformed area, it took TOO MUCH memory, now we transform the area each time, it's much more CPU intensive but i could not measure a time loss while searching big documents and i could measure HUNDREDS of MB of usage less.
* MICRO optimization: Change some code to not detach some containers
* I still don't have ADSL so this is something like a "blind" commit, Pino will check it compiles against current KDE, not against what's on my computers
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 699701

Adam Treat committed changes in /branches/work/kst/portto4/kst/src/libkstapp:
* Labels, refactoring, drawing code, plots are much better now.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 700131

Clarence Dang committed changes in /trunk/KDE/kdegraphics/kolourpaint:
Simulate raster operations -- e.g. selection border -- using stippling.
This should make such visual elements more visible on top of the document content. Backend:

* NOT operations do not require a color since they ignore the source pixels

* All operations need 2 color hints for stippling

* Tweak color hints so that things are clear and look good

* Assert-fail in some raster-simluating methods if transparent colors are passed (not supported yet due to unprotected call to kpColor::toQColor())

* Comments, style
Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 700213

Tim Beaulen committed changes in /trunk/playground/graphics/athec/src:
The start of loading style definitions.
Diffs: 1, 2, 3 Revision 700387

Gaël de Chalendar committed changes in /trunk/extragear/graphics/kgraphviewer/src:
Added a Save As action and created a new Edit toolbar
Diffs: 1, 2, 3, 4 Revision 700790

KDE-Base
John Layt committed changes in /trunk/KDE/kdelibs/kdeui/widgets:
Major code clean-up of date widgets.

1) Replace calls to global calendar with local calendar to allow display of calendar systems other than global
2) Now support full date range of calendar system, e.g. for Gregorian from 2/1/4713 BC to 31/12/9999 AD
3) Don't draw day on table if not a valid date in the calendar system, and
don't allow to be selected
4) Fix lots of direct references to QDate methods with calendar methods to ensure non-Gregorian calendars work properly
5) Removed all magic numbers of 7, replaced with daysInWeek or numRows, allows calendars with more than 7 days in week
6) Renamed lots of locals to more meaningful names to improve readability
7) Simplified several algorithms, fixed others that failed for certain dates
8) Added lots of date validity checks
9) Renamed KDateInternalYearSelector to KDatePickerPrivateYearSelector and moved from KDateTable private to KDatePicker private as that's the only place it actually gets used.
10) Moved a couple of private methods in public class into private class
11) Cleaned out crufty old commented out code, removed too-verbose debug statements

Still some outstanding corner cases with the weeks combo, e.g. in year -4713, and underlying KCalendarSystem methods still relying on occasionally invalid dates in their algorithms, but is only at extremes of date range.
Diffs: 1, 2, 3, 4, 5, 6 Revision 699386

Percy Leonhardt committed changes in /trunk/KDE/kdebase/workspace/libs/plasma:
Added a signalplotter to plasma.
Diffs: 1, 2, 3 Revision 699576

Daniele Galdi committed changes in /branches/work/soprano2/soprano/query:
Initial memory management support
Diffs: 1, 2, 3 Revision 700051

Rafael Fernández López committed changes in /trunk/KDE/kdelibs/kutils:
Better delegate size depending on system settings (on fonts specifically). They won't seem as a toy, and more plugins will fit on the same view size :)
Diffs: 1, 2 Revision 700095

Robert Knight committed changes in /trunk/KDE/kdebase/apps/konsole:
Support for -e command line argument to specify a custom command to run when starting Konsole. Also added a -p command line argument which can be used to change almost any other option for that Konsole instance using the same syntax as the konsoleprofile tool. Update TODO.
Diffs: 1, 2, 3, 4 Revision 700451

Sebastian Trueg committed changes in /branches/work/soprano2:
* Made Parser a separate plugin.
* Introduced Plugin class which is the new base class for Backend and Parser.
* Moved the redland parser stuff into the new plugin raptorparser (still linking to redland though)

The new parser is not tested yet!
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 20 more) Revision 700504

Ian Ventura-Whiting committed changes in /trunk/playground/base/datasources:
This commit includes the following ODBC Data Sources KCM updates:
* Users can now add user data sources using a wizard.
* Administrators can add user, system and file data sources.
* You can delete old data sources.

The next commit will include code to both test and edit data sources. :-)
Diffs: 1, 2, 3, 4 Revision 700535

Robert Knight committed changes in /trunk/KDE/kdebase/apps/konsole/src:
Add --new-tab command line option which starts new instance in a new tab rather than creating a new window.
Diffs: 1, 2 Revision 700656

Peter Penz committed a change to /trunk/KDE/kdelibs/kfile/kurlnavigator.cpp:
insert the protocol- and host-widget before the (optional) drop down button -> if the available width is too small, the drop down button is beside the path as expected
Diff Revision 700671

Daniel M. Duley committed changes in /trunk/KDE/kdelibs/kdeui/icons:
Very much needed developer-luvin for KIconEffect :)

I kept the same algorithms and this does not require Blitz, nonetheless this class was pretty nastified so this update pretty extensive. Due to this I also wrote a companion kiconeffect test to make sure everything works.

Changes so far include:

Don't use QColor just to get rgb components of a pixel.
Don't use pixel() and setPixel() when looping through an image.
Don't use the old fp-style alphablending, use integers.
Slightly more efficent math.
Check for premultiplied images.
Use KColorScheme, not KGlobalSettings.
Use QSysInfo and not defines

Still a little more work to be done but this should be much better.
Diffs: 1, 2 Revision 700732

Robert Knight committed changes in /trunk/KDE/kdebase/workspace/libs/plasma:
Add LayoutAnimator class. This provides a way to animate changes in layouts. eg. Fading in new items, fading out removed items, moving and resizing items smoothly as the layout changes. The layouts themselves need some small changes to make use of this class, and the client code must create the animator, attach it to the layout and choose the animation effects to use.
Diffs: 1, 2, 3, 4, 5 Revision 700844

Daniele Galdi committed changes in /branches/work/soprano2/soprano/query:
Finally we have a first version of Query API.

We have finished an internal query rappresentation that provide a way to convert different RDF query language into a common Soprano::Query rappresentation.
This is very powerfull because we can Convert a SPARQL query to an equivalent RDQL and vice versa.

May ways are now open...fulltext search, query optimization, custom triplestore...etc.

Memory management isn't completed but for now we have happy enough.
Diffs: 1, 2, 3, 4, 5 Revision 700852

Sebastian Trueg committed changes in /branches/work/soprano2:
An attempt for a query parser plugin API (my plans changes... :(
Diffs: 1, 2, 3, 4, 5 Revision 700887

Rafael Fernández López committed changes in /trunk/KDE/kdelibs/kutils:
Full support for RTL languages. Remove links "More Options" and "About"
and put buttons instead.
Diffs: 1, 2 Revision 700917

Siraj Razick committed changes in /trunk/playground/base/raptor:
Basic and simple animations and 3D flip support : This is not production code yet ;-) )
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 700935

Bernhard Loos committed changes in /trunk/KDE/kdelibs/solid:
This adds a method to Solid::Processor to query the instruction sets supported by the CPU.
The hal back end doesn't use hal but the cpuid instruction. Hal has no support for the instruction sets afaik.

Many thanks to jpwhiting and mwoehlke for many tests and review.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 700972

David Nolden committed a change to /trunk/KDE/kdelibs/kate/completion/expandingwidgetmodel.cpp:
use quint64 for the color-mixing while visualizing match-qualities, and keep alternating those colors. This makes match-quality highlighting actually work (see kdevelop)
Diff Revision 701013

Rivo Laks committed changes in /branches/work/soc-iconcache/kpc_stats_viz:
Add patch for getting KPixmapCache statistics as well as an app for visualizing them.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 701089
View Visual Changes (to 1 file)

Matthias Kretz committed changes in /trunk/KDE/kdebase/runtime/phonon/xine:
use new up-/downstreamEvent functions to implement
- aboutToDeleteVideoWidget
- aspect ratio
- scale mode
- mouse events
- audio volume changes
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 701092

Matt Broadstone committed changes in /trunk/KDE/kdebase/workspace/plasma/plasma:
Initial implementation of panels
Diffs: 1, 2, 3, 4, 5 Revision 701270

KDE-PIM
Volker Krause committed changes in /branches/work/kmail-favorite-folder-view/kmail:
allow to add favorites from the folder tree context menu
Diffs: 1, 2, 3, 4, 5 Revision 700004

Bertjan Broeksema committed changes in /trunk/KDE/kdepim/kpilot/conduits:
Record syncing of the keyring conduit seems to work. Needed to fix a couple of things for that:

* Make hhdataproxy generate a bit more realistic temporary id.
* After the syncing is finished first setEndCount is called (which sets the endcount of the CUD counters and when the commit is finished syncFinished is called which give the proxy the change to clean up things like resetting sync flags.
* Set the id as a QString::number( 0 ) and not just 0.
* The backup database is now updated by record conduit. No need for implementing classes to bother about that.
* Make the check in hhrecord for setting an id working properly.
* The keyringdataproxy must read the zerorecord when opened with a path to a file.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision 700429

Matthias Lechner committed changes in /trunk/KDE/kdepim/kmobiletools/kmobiletools:
Ok, the foundation of kmobiletools' new architecture is finally ready.

Sorry I can't give a complete change log for this commit ;-), but the most important change is:
We can now define and implement so called "core services" which are the counter-part of an interface defined by an engine and which automagically can determine at run-time if they are supported by the current engine (for example if the engine which communicates with the mobile phone implements an address book interface, the corresponding address book service is loaded which presents the user with the address book information).

So now it's possible to extend KMobileTools dynamically at runtime which opens new possibilities in user participation (e.g. you could now easily create a plasma applet which presents phone information).

What we need to do from here is (TODO):
- remove and port old classes to the new architecture
- implement all available interfaces for the fake engine to be able to test all features (and at the same time refine the interface
definitions themselves...)
- complete at least the address book core service and create a sms core services (I don't want any feature regression)
- finally port the available engines to the new interface driven architecture

**What we need urgently is manpower. Porting the existing classes is not that hard and needs only basic Qt knowledge.**
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 48 more) Revision 700493

Marc Mutz committed a change to /trunk/KDE/kdepim/kleopatra/tests/test_keylistmodels.cpp:
Implement -flat and -hierarchical options, and honour them.
Diff Revision 700830

Mike Arthur committed changes in /trunk/KDE/kdepim/korganizer:
Add initial HTML editor for incidences.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 701220

Juan González Aguilera committed changes in /branches/work/soc_kdebluetooth4:
First version of the btpm. Actually it just display known remotes, indicating if they are alive through icon greying. It also let's you select whether to show only remotes alive or not.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 701469
View Visual Changes (to 1 file)

Multimedia
Leo Franchi committed changes in /trunk/extragear/multimedia/amarok/src/context:
new lyrics applet, with svg (courtesy of beast). no lyrics are actually displayed yet, but this is a qdbus issue i'm working on.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 699153
View Visual Changes (to 1 file)

Christoph Pfister committed changes in /branches/work/kaffeine4/kaffeine/src/dvb:
add support for removal of devices (through solid signals)
Diffs: 1, 2, 3 Revision 699293

Leo Franchi committed changes in /trunk/extragear/multimedia/amarok/src:
yay, lyrics applet works :)
note: the layout code isn't there yet. it'll take some major refactoring as now the *applet* needs to define its minimum height, and the layout needs to take care of that, instead of vice versa.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 699433

Martin Aumüller committed changes in /trunk/extragear/multimedia/amarok/src/strigi:
pretty ugly mp4/mov stream analyzer
Diffs: 1, 2, 3, 4 Revision 699730

Mark Kretschmann committed a change to /trunk/extragear/multimedia/amarok/src/MainWindow.cpp:
Make the toolbar gradient less gross. Lighter alpha value.
Diff Revision 700033

Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src/servicebrowser:
First (very small) baby step towards a new Service info plasma applet to replace the small window in the bottom of the services: Add a simple observer base class
Diffs: 1, 2 Revision 700538

Jeff Mitchell committed changes in /trunk/extragear/multimedia/amarok/src/portabledevices/kioslaves/mtp_backend:
Add get functionality to MTP (not tested) and some cleanup
Diffs: 1, 2 Revision 700541

Leo Franchi committed changes in /trunk/extragear/multimedia/amarok/src/context/applets/lyrics:
umpteenth attempt at making the lyrics applet sane. split the theme into two separate SVGs, no more funky calculations in the applet code. mostly works, lyrics are a little bit lower than flush with the header box when the lyrics are very long, but thats minor.
Diffs: 1, 2, 3, 4, 5 Revision 700612
View Visual Changes (to 2 files)

Bart Cerneels committed changes in /trunk/extragear/multimedia/amarok/src/playlistmanager:
A framework for managing Meta:Playlists that can be provide from other application parts.
Diffs: 1, 2 Revision 700827

Richard Lärkäng committed changes in /trunk/extragear/multimedia/kaudiocreator:
Add macro for "Artist initial"
Bug 91081: Add support for "albumartistinitial" macro
Diffs: 1, 2, 3, 4 Revision 700861
View Visual Changes (to 1 file)

Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src:
Work towards a generic plasma engine for providing context data relevant to the service that is currently being browsed. WIP. Still need to create an applet and define exactely what data should be provided
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 5 more) Revision 700913

Jeff Mitchell committed changes in /trunk/extragear/multimedia/amarok/src/portabledevices/kioslaves:
Deleting works, kinda, although Dolphin crashes (seems internal KIO crash). Getting might work too, but haven't tested it yet.
Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 700928

Networking Tools
Cláudio da Silveira Pinheiro committed a change to /branches/work/kopete/comunip/libkopete/avdevice/videodevice.cpp:
UVC colors are handled fine now.YUV-colorspace code cleaned-up and fixed, now working for every colorspace Kopete may ask to a videocard/webcam.
Diff Revision 699218

Urs Wolfer committed changes in /trunk/KDE/kdenetwork/krdc:
Implement new send-special-keys-to-remote-desktop action.

This way the user can send for example already used shortcuts to the remote desktop without execute them on the local machine.

This action is now also available in the remote view toolbar (fullscreen toolbar).
Bug 108619: Special Keys button in full screen mode
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 699338

Urs Wolfer committed changes in /trunk/KDE/kdenetwork/krdc/rdp:
Add option to use current screen resolution for RDP connection. This is usefull for fullscreen mode.
Diffs: 1, 2 Revision 700106
View Visual Changes (to 1 file)

Jernej Kos committed changes in /trunk/extragear/network/kftpgrabber/src:
Reimplemented the tree view to use the new directory model. Adapted the model to support a single directory lister used by both models (for detailed and tree views).
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 7 more) Revision 700427

Dario Massarin committed changes in /trunk/KDE/kdenetwork/kget:
Make the downloads start immediatly after adding it through the dbus interface. Note that in order to do that, the interface has been changed. The newly added downloads, once added, are started without starting the whole queue.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 1 more) Revision 700552

Javier Goday committed changes in /trunk/KDE/kdenetwork/kget:
Usage improvements in the konqueror LinkList extension, described here: http://okular.holehan.org/KGet/LinksList#toc4/
Diffs: 1, 2, 3, 4, 5 Revision 700943

Office
Sebastian Sauer committed changes in /trunk/koffice/kword/part:
Added KWStatusBar that implements additional stuff displayed in the statusbar.

So far we have;
* Modified/Saved document state
* Current Page/Total number of pages
* Mouseposition X:Y

May an idea to make this configurable and be also able to add even more infos (e.g. zoom and statistics :)
Diffs: 1, 2, 3, 4, 5 Revision 699115

Sebastian Sauer committed changes in /trunk/koffice/kword/part:
made displaying current page number work && added zoom-control back to the statusbar (that is still disabled in the hope the dockwidget-crasher will be fixed or already got :)
Diffs: 1, 2 Revision 699611

Marijn Kruisselbrink committed a change to /trunk/koffice/shapes/musicshape/core/MusicXmlReader.cpp:
load voices for notes as well. This will work properly for all files generated by the music shape, but it won't work correctly for all valid MusicXML files in general. To make that work the whole loading needs to become quite a bit more complex.
Diff Revision 700399

Pierre Ducroquet committed changes in /trunk/koffice/libs/kotext:
Add support for saving paragraph styles...

Currently, only alignment is saved, other properties must be added in KoParagraphStyle::saveOdf.

BTW, small cleanups in the style saving code...
Diffs: 1, 2, 3, 4 Revision 700520

Marijn Kruisselbrink committed changes in /trunk/koffice/shapes/musicshape:
change the way the part details dialog works; it is still not possible to change the number of staves of a part, but I think the bahavior improved a bit
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 700828

Jan Hambrecht committed changes in /trunk/koffice:
Added support for displaying shape config widgets in the path tool options widget.
Added a pathShapeId() function to KoPathShape to return a specific path shape id.

As a start, I added a star shape config widget for editing the star properties.

If a single path shape is selected and the path tool is active an (existing) config widget for that shape is then shown in the tool options docker.

Next thing to do is to apply the config changes to the selected shape. And then to create some more config widgets for the other parameter shapes.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 7 more) Revision 700977
View Visual Changes (to 2 files)

Marijn Kruisselbrink committed changes in /trunk/koffice/shapes/musicshape:
start implementing a musicXML import function; this still needs a lot of sanity checks, but the basics are there
Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 701186
View Visual Changes (to 1 file)

Jan Hambrecht committed changes in /trunk/koffice/shapes/pathshapes:
implemented a config widget for the rectangle shape which is automagically shown in the path editing tool
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 701521
View Visual Changes (to 1 file)

Pierre Ducroquet committed changes in /trunk/koffice:
Add a first 'proof of concept' to save pictures. The PictureShape part is working, the KWord part is not perfect yet (problems with anchors and positionning)
Diffs: 1, 2 Revision 701585

User Interface
David Jonathon Miller committed changes in /trunk/KDE/kdelibs/pics/oxygen:
new icons -- emotes :) -- only 22x22 and 16x16 at the moment. bigger sizes to follow
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 73 more) Revision 699340
View Visual Changes (to 80 files)

David Jonathon Miller committed a change to /trunk/KDE/kdebase/runtime/pics/oxygen/index.theme:
pretty much rewritten

* all directories are now listed
* changed scalable sizes from MinSize=1 MaxSize=256 to MinSize=32 MaxSize=256
* scalable/small/?? min/max sizes are set to the dir size the svgz's are drawn for
* removed references to the filesystems directory.
reasons: not in spec, no icons in ours anyway
Diff Revision 700081

Nuno Fernades Pinheiro committed changes in /trunk/KDE/kdebase/runtime/pics/oxygen:
new scribus icons
Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 700505
View Visual Changes (to 7 files)

David Jonathon Miller committed changes in /trunk/KDE/kdebase/runtime/pics/oxygen:
emblems redrawn, now look a lot like a plasma applet
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 700826
View Visual Changes (to 10 files)

David Jonathon Miller committed changes in /trunk/KDE/kdebase/runtime/pics/oxygen:
small versions of new emblems
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision 700843
View Visual Changes (to 16 files)

Utilities
Rolf Eike Beer committed changes in /trunk/KDE/kdeutils/kgpg:
Implement setting the primary user id of a secret key.

While at it improve deleting a user id: preselect the selected user id in gpg command window.
Bug 80848: can not set the primary user ID with kgpg
Diffs: 1, 2, 3, 4, 5, 6 Revision 699446

Nicolas Ternisien committed changes in /trunk/playground/sysadmin/ksystemlog/src:
Using a new log system (with colors, prototype functions, file line,...), but still based on kDebug() and friends
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 40 more) Revision 699662

Rolf Eike Beer committed changes in /trunk/KDE/kdeutils/kgpg:
Improve popup menus

-"Generate key pair" should not show up in any popup menu
-importing of several missing signatures at once works now
Bug 104825: Item "delete signature" missing from context menu for m...
Bug 74873: wish: "download unknown keys" menu option when [User-ID...
Diffs: 1, 2 Revision 699871

Rolf Eike Beer committed a change to /trunk/KDE/kdeutils/kgpg/kgpginterface.cpp:
Honor trust level even when signing in terminal
Bug 148241: The cert-level dropdown list is not honored when signing a key
Diff Revision 701419

Rolf Eike Beer committed changes in /trunk/KDE/kdeutils/kgpg:
Implement "double click on signature jumps to key"
Bug 104829: Double-clicking on a signature should jump to the corresponding k...
Diffs: 1, 2, 3 Revision 701575

Optimise
Educational
James Bowlin committed changes in /trunk/KDE/kdeedu/kstars/kstars:
Experimental: Am now drawing a filled rectangle the color of the sky background behind transient star labels. I'm not doing it for non-stars ATM so you can compare and contrast the two different ways. If the object is surrounded by empty space, there is no visual difference. I noticed the biggest difference when the object was in the Milky Way because then you see the rectangle clearly.

It would be easy and fast to first check to see if the transient label would overlap an existing label and then only draw the background rectangle in the case of an overlap. PLMK if you would like to see this. It would be very easy to implement. IMO it is best to always draw the rectangle and thus ensure the transient label is always legible.

Also cleaned up SkyMap::drawTransientLabel() a little bit.

BTW: I don't know why the asteroid transient labels don't exactly overlap the normal labels.
Diffs: 1, 2 Revision 700573

James Bowlin committed changes in /trunk/KDE/kdeedu/kstars/kstars:
Changed the mesh level from 5 to 4. This seemed to speed things up when the screen was zoomed out. You are encouraged to try different mesh levels yourself. You can change it in skymapcomposite.cpp on line 55. I don't recommend using levels greater than 6.

FYI:

level # of trixels
----- ------------
2 128
3 512
4 2,048
5 8,192
6 32,768

Added 4 new data files that contain pre-computed indices for the constellations. This greatly speeds up the constellation boundary initialization. If the index file does not exist, we fall back to computing the indices. There is a separate index file for mesh levels 3 through 6. There is also a mechanism for creating the data files in ConstellationBoundaryLines::init() by setting verbose to -1. This will cause the indices to be computed and printed on stdout.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 700649

KDE-Base
Sebastian Trueg committed changes in /branches/work/soprano2:
Added class BindingSet which holds a copy of one row of query result bindings for caching purposes.

Internally it is nothing more than a QHash but it is quite useful when you want to iterate over a query result and use each row to do something to the model (again the problem that iterators are invalidated by model actions)

Now that I could finally test my optimized inferencing algo I found the last (hopefully) bugs and it works. It got a bit more complicated but I think i did a good job in designing the code and I think I never before documented code this well (which still does not mean that everyone can understand it from the start ;)

The tests were very encouraging. I got a major speed improvement by my optimizations.

Maybe I will write my algo down in a little paper these days, just for fun (and to make Nepomuk reimplement it in java ;)
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 4 more) Revision 700098

Peter Penz committed changes in /trunk/KDE/kdebase/apps/dolphin/src:
Smoother animations for the pixmap viewer if the pixmap is changed constantly during small time slots (thanks to Rafael Fernández López for the original patch!).
Diffs: 1, 2, 3 Revision 700580

Enrico Ros committed changes in /trunk/KDE/kdebase/workspace:
Faster background drawing. Speeds up a lot zooming operations and general compositing.
Diffs: 1, 2, 3 Revision 701053

Rivo Laks committed a change to /trunk/KDE/kdelibs/kdeui/icons/kpixmapcache.cpp:
Use a background thread for automatic cache size limiting so that it won't block ui.
Diff Revision 701473

Office
Stefan Nikolaus committed a change to /trunk/koffice/kspread/Cell.cpp:
Commands
Autofill, Copy & Paste, Cut & Paste
Rewrite Cell::encodeFormula to use the formula tokens. This ensures, that the LOG2() function will not be identified as cell reference and the processing should be faster and more reliable than the old algo.
Bug 140312: copy & paste treats log2 as a cell (MAJOR)
Diff Revision 699362

Stefan Nikolaus committed a change to /trunk/koffice/kspread/Sheet.cpp:
OpenDocument Loading.
Speed up for loading of repeated rows. Comments, conditions, styles and validities are stored in RectStorages and repeated rows often have only styles set, but no contents. Take advantage of this fact. For cells with contents it stays slow, because the iteration can't be avoided.
Bug 132454: kspread crash when opening a large opendocument spreadsheet
Diff Revision 700440

Other
Development Tools
Adriaan de Groot committed changes in /trunk/kdesupport/taglib/taglib:
Somewhat hackish; might be better off as a downstream patch.

Sun Studio fails on taglib because Map specializes in too many ways;
adding the class keyword reduces the specializations to one and it's ok, but not all specializations of Map actually use T as a template class parameter. So introduce a #define to switch that around.

Original patch from Stefan Teleman, pared down by me.
Diffs: 1, 2, 3 Revision 700759

Educational
Jasem Mutlaq committed changes in /trunk/KDE/kdeedu/kstars/kstars/indi:
INDI Apogee Alta driver has been converted to INDI Library environment standards. Hopefully, we'll have some testing soon to make sure it works fine with the actual CCD.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 64 more) Revision 699071

Inge Wallin committed changes in /trunk/KDE/kdeedu/marble:
Rename KAtlasFlag into DeferredFlag

This concludes the name changes from KAtlasFoo, and thus erases the last traces of this historic name. Death to KAtlas! Long live Marble!

I for one greet our new Geo overlord!
Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 701334

Jasem Mutlaq committed changes in /trunk/KDE/kdeedu/kstars/kstars:
Removing 'setup telescope' page from startup wizard, since the telescope wizard is meant to aid the user to connect immediately to the telescope and doesn't save any settings, so it doesn't make sense to include it in the startup wizard. Also removing ccd preview since no drivers are using this.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 3 more) Revision 701418
View Visual Changes (to 1 file)

Jasem Mutlaq committed changes in /trunk/KDE/kdeedu:
First revision of the manual to reflect recent changes in KStars. Mostly in INDI for now, but a complete revision is planned.
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 16 more) Revision 701460
View Visual Changes (to 2 files)

Games
Saro Engels committed a change to /trunk/playground/games/KDiplomacy:
Starting new project KDiplomacy more informations on irc.freenode.net #kde-diplomacy
Diff Revision 699724

Nicolas Roffet committed changes in /trunk/KDE/kdegames/doc/kblackbox:
Updated the manual of KBlackBox. This was needed because of the huge changes since the version 0.3.

if you have time and feel like reviewing the text before the string freeze, it would be realy nice (for the sake of the english version). If you cannot, I hope someone else will do this. Thanks.
Diffs: 1, 2 Revision 700975

Nicolas Roffet committed a change to /trunk/KDE/kdegames/libkdegames/kstandardgameaction.cpp:
Add "..." to the text of the action "Show High Scores" as this action opens a dialog. This is a KDE (and Windows...) standard.
Diff Revision 700980

Graphics
Clarence Dang committed a change to /trunk/KDE/kdegraphics/kolourpaint/imagelib/effects/kpEffectEmboss.cpp:
* Port "Emboss" effect from crashing-and-will-be-killed KImageEffect to Blitz

* Remove unneeded #include
Diff Revision 699142

Allen Winter committed a change to /trunk/KDE/kdegraphics/kolourpaint/CMakeLists.txt:
kolourpaint requires Blitz now.
You'll need to update kdelibs before re-building kdegraphics.
Diff Revision 699282

Gaël de Chalendar committed changes in /trunk/extragear/graphics/kgraphviewer:
new program in kgraphviewer: kgrapheditor, allowing to edit dot graphs
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 36 more) Revision 699447
View Visual Changes (to 1 file)

Clarence Dang committed a change to /trunk/KDE/kdegraphics/kolourpaint/imagelib/effects/kpEffectFlatten.cpp:
No more KImageEffect in KolourPaint at all: Port Flatten Effect from KImageEffect to Blitz.
Diff Revision 701078

KDE-Base
Thiago Macieira committed a change to /trunk/KDE/kdelibs/kdecore/io/kdebug.cpp:
Turn extended debug info on by default. Let's see if people like it.
Diff Revision 699081
Discussion

Fredrik Höglund committed changes in /trunk/playground/base/plasma/engines:
Start work on a clipboard engine for plasma.
Diffs: 1, 2, 3, 4, 5, 6 Revision 699352

Daniel Teske committed changes in /trunk/KDE/kdebase/workspace/kicker/menuext/konsole:
Remove the importing of old bookmarks. As old is before kde 3.0.
(I think somewhere around kde 2.2.) And that is using a depreceated class KNSBookmarkImporter. (Dead code, I presume, but still.)
Diffs: 1, 2 Revision 699408

Matthew Woehlke committed changes in /trunk/KDE/kdebase/runtime/kioslave/thumbnail:
Remove KPixmapSplitter dependency (trying/planning to kill off the class)
Diffs: 1, 2 Revision 699574

Ivan Čukić committed changes in /trunk/playground/base/plasma/applets/lancelot/app:
Lancelot application base import
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 7 more) Revision 699596
View Visual Changes (to 4 files)

David Faure committed changes in /trunk/KDE:
Icons are a runtime dependency -> moved to kdebase/runtime as discussed
Diffs: 1, 2 Revision 699615

David Faure committed a change to /trunk/KDE/kdelibs/khtml/khtml_part.cpp:
Don't tell people "Something is very wrong in KHTMLPart!" when they simply forgot to run dbus
Diff Revision 699715

Mickael Marchand committed a change to /branches/work/kconfig_sql:
creating branch to commit my patches :
API change in kconfig really basic SQL backend

this is work-in-progress
Diff Revision 699746

Mickael Marchand committed changes in /branches/work/kconfig_sql:
so we have a (as suggested by ossi in June) KConfigFileBackend in order to make KConfigBackend less "file" dependent.
KConfigINI now inherits KConfigFileBackend

I have also changed some functions names to match a more generic concept of namespaces instead of pure "files" (this still is not really great since KConfig is used to open files by full path name apparently -think of icon theme configuration file for example-)

KConfig also has a setFilePermission function that needs to be removed (was does FilePermissions means for a DB ?) (not used anywhere in KDE)

probably lots of other stuff I forgot, but you'll find your way in the code ;)

and, the SQL backend, just a basic sqlite one for now (not even checking for locks/nb of connexions/... etc)

till now, I was able to get kconfigtest to success all tests with the DB backend, and was able to run kwrite, modifying options etc

there are stills major things to fix :)
feel free to comment and help
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 3 more) Revision 699749

Luboš Luňák committed changes in /trunk/KDE/kdebase/workspace/kwin:
Use always float as the floating point type for compositing
(http://lists.kde.org/?l=kwin&m=118493073424327&w=2).
Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 18 more) Revision 700026

Rafael Fernández López committed changes in /trunk/KDE/kdebase/apps/kfind: