Issue 18

6th August 2006 by Danny Allen

This Week...

Support for PostScript page deletion and editing of metadata in KViewShell, and for using a SQL backend with KPhotoAlbum (feature derived from KexiDB). Strigi gets support for inotify. Plasmagik, an application to assist developers in making "Plasmoids" (Plasma applets), is imported into KDE SVN. Rendering development work continues in the Unity web rendering engine. Work stars on a "Magnetic Outline Selection" tool for Krita.
Tom Albers introduces his new project, KTU, which stands for KDE Translation Updater - a tool for using and managing interface translations fresh from the KDE source repository:
A couple of weeks ago I started working on KTU. The idea is to create an interface to fetch translations straight from KDE SVN and install them for the user. Translations can be downloaded and installed on a per-application basis.

A great use of KTU is in providing feedback to new translators, as they no longer have to wait untill there is a new point release of KDE to see their work, and of course, using KTU (with its GUI interface) is a lot better then installing translations manually and trying to keep track of them.

The development of KTU completes an old wish from me from several years ago. At that time I created a proof-of-concept based on some bash scripts and kdialog dialogs. Adriaan de Groot then helped to port it to C++, but we ran into some technical problems (read: I did not know any C++ or Qt) and we lost interest due to lack of time, and KDE transitioning from CVS to SVN did not help either.

I have just released version 0.0.2 with a bunch of features; some screenshots and tarball at kde-apps, kubuntu packages are available at my repository.

I would love for users (especially those involved in the translation scene) to try out KTU and give me feedback!
Though not thought to be humanly possible, Andreas Kling has crushed his record of 102 bugs last week, with a mighty 121 bugs closed this week. This is an achievement so great that i'm running out of worthy adjectives!

Statistics

Commits 2427 by 194 developers, 5511 lines modified, 1677 new files
Open Bugs 13012
Open Wishes 11399
Bugs Opened 316 in the last 7 days
Bugs Closed 361 in the last 7 days

Commit Summary

Module Commits
/trunk/www
525
 
/trunk/KDE
484
 
/trunk/l10n
298
 
/branches/stable
237
 
/trunk/playground
187
 
/branches/work
184
 
/trunk/extragear
174
 
/trunk/koffice
104
 
/branches/koffice
67
 
/branches/KDE
52
 
Lines Developer Commits
271
 
Laurent Montel
126
 
112
 
Thomas Nagy
56
 
107
 
Dirk Mueller
52
 
54
 
Ludovic Grossard
48
 
46
 
Rinse de Vries
46
 
90
 
Marcus Furlong
45
 
145
 
Rainer Endres
34
 
93
 
Nicolas Goutte
33
 
130
 
Luboš Luňák
33
 
88
 
Thomas Zander
33
 

Internationalization (i18n) Status

Language Percentage Complete
Portuguese (pt)
99.99%
 
Swedish (sv)
99.54%
 
Danish (da)
99.47%
 
Spanish (es)
96.84%
 
Dutch (nl)
96.22%
 
Estonian (et)
94.36%
 
Italian (it)
94.19%
 
French (fr)
93.92%
 
Greek (el)
93.2%
 
German (de)
91.48%
 

Bug Killers and Buzz

Person Bugs Closed
Andreas Kling
121
 
Alexandre Pereira de Oliveira
25
 
Luboš Luňák
24
 
Joris Guisson
16
 
Stefan Nikolaus
15
 
Martin Aumüller
13
 
Seb Ruiz
12
 
Roman Jarosz
9
 
Stefan Borggraefe
8
 
Matt Rogers
7
 
Program Buzz
Amarok
2922
 
Kopete
1314
 
K3B
1006
 
KMail
905
 
Kate
889
 
SuperKaramba
701
 
Kontact
640
 
KDevelop
628
 
Kicker
572
 
Quanta
455
 
Person Buzz
telex
275
 
zogje
265
 
wheels
246
 
George Staikos
245
 
pipitas
236
 
boud
225
 
David Faure
222
 
Aaron J. Seigo
212
 
carsten
205
 
riddell
202
 

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 68 selections this week

Bug Fixes

Development Tools

Andreas Pakulat committed changes in /branches/work/kdevelop-qmake4/buildtools/qmake:

Fix various bugs reading/writing project files, now Qt4 support is really working.

Diffs: 1, 2, 3, 4, 5 Revision 567865

KDE Base

Kurt Hindenburg committed changes in /branches/KDE/3.5/kdebase/konsole/konsole:

Fix to display bold. For those for whom bold worked in KDE 3.5.3, this is the regression fix. For those, like me, for whom bold never work, this is the fix.

No patch is needed for KDE4 as bold works there.

KDE-PIM

Ingo Klöcker committed changes in /branches/KDE/3.5/kdepim/kmail:

Fix bug 126837 (KMail does not correctly detect UTF-8 encoding)
Fall back to automatic encoding if we encounter an unknown encoding.

Allen Winter committed changes in /branches/KDE/3.5/kdepim/libkcal/libical/zoneinfo:

Fill in some gaps missing from libical's zoneinfo.
These are simply copies of existing .ics files.

The hard part comes now: To create new .ics files
for ~15 zones that exist in /usr/share/zoneinfo/zone.tab
but don't exist in the libical zoneinfo database.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 568936

Multimedia

Seb Ruiz committed changes in /trunk/extragear/multimedia/amarok/src/playlistbrowseritem.cpp:

Some podcasts come with no date, so they will be ordered by the insertion order in the feed.

This fixes a regression brought upon by the changes in the parsing in podcast feeds.
Remove the ElementList class - there is no need to do sorting of the feed before we insert it.

Andreas Kling committed changes in /trunk/extragear/multimedia/amarok/src/dbsetup.ui:

Don't show MySQL settings when compiled with PostgreSQL support only.

Networking Tools

Joris Guisson committed changes in /trunk/extragear/network/ktorrent:

Made sure that average speed is displayed as zero when a torrent is imported

Diffs: 1, 2, 3 Revision 567803

Utilities

Jason Kivlighn committed changes in /trunk/extragear/utils/krecipes/src:

-Clean up the USDA weight portion of the import.

What it does now is looks at a list of known units and prep methods.
If the unit of an entry is in the list, it'll create a weight entry
using it. This way, an arbitrary number of units won't end up being
created, only those in the list can be created from the import.

The unit is considered the part before a comma, the rest is the prep method.
Once the unit is accepted, it checks that the prep method matches one of
the acceptable entries. If it does, it adds the weight using that prep
method. If not, it stills adds the entry, but without whatever extra
info the USDA entry held (which most often isn't of importance).

-Fix some indexes in the SQLite database. Some weren't being created
which would slow things down a bit.

Diffs: 1, 2, 3 Revision 570167

Features

Development Tools

Allen Winter committed changes in /trunk/playground/devtools/krazy:

added Andreas' new passbyvalue plugin (a C++ program)

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 568051
Jakob Petsovits committed changes in /branches/work/kdevelop-pg/src:

Implement backtracking for kdevelop-pg.
(Also known as LL(k) for poor people ;)

The new backtracking construct "try/rollback" is able
to replace all your hand-adapted lookahead hacks.
Use it for conflicts that require arbitrary-length LL(k) lookahead.
Don't use it when you can determine the upcoming rule with
simple [: LA(2).kind == Token_BLAH :] checks.


Old solution
(with lookahead_is_conflicting_item_1() being defined somewhere else):

(
[: lookahead_is_conflicting_item_1() == true :]
var1=conflicting_item_1
|
var2=conflicting_item_2
)

New solution:

try/rollback(var1=conflicting_item_1) catch(var2=conflicting_item_2)


It works this way:
- try to derive conflicting_item_1
- if there are no parsing errors, proceed.
- if there are any errors, go back to the token where
conflicting_item_1 started, and derive conflicting_item_2.
On errors, conflicting_item_1 is not assigned to var1.

Note that if you have multiple annotated items inside the try block
("try/rollback(var1=item1 var2=item2) catch(...)")
and there are parsing errors in item2, then the item1 node is still
assigned to var1. So, it's best to only have single items inside
a try block.

This commit also renames recover(...) to try/recover(...),
as there are many similarities to try/rollback.

If the grammar is using either try/recover or try/rollback constructs,
you now have to provide custom stuff for parser state management:
- a struct named parser_state containing all the variables
that may change during parsing. (It can also be an empty struct.)
- two parser class methods:
* copy_current_state() returns a new parser_state object, or 0
* restore_state() restores the variables in the given
parser_state object back to the parser class.

This is required for a clean rollback or recovery, for parsers
that change some state variables in code segments.
(Like the ltCounter variable in the Java and C# parser.)

Also, the yy_expected_token() and yy_expected_symbol() methods
must now return void instead of bool.

Sorry for the long commit message :]

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 9 more) Revision 568589
Jakob Petsovits committed changes in /branches/work/kdevelop-pg/examples/csharp:

Provide a C# 1.0 compatibility mode.
If you're using the command line parser, you can say
"./csharp --compatibility=1.0 file.cs"
and the parser lists 2.0-only features as errors.

Also, implement the non-specified but MS/Mono-supported
fixed size buffer array declarations, which improves
the passed/failed test case ratio so that only
2 of 17050 files deliver errors when they shouldn't.

Also, let modifier flags be unsigned instead of signed ints.

Diffs: 1, 2, 3, 4, 5, 6 Revision 568824
Tim Beaulen committed changes in /trunk/KDE/kdesdk/kbabel/kbabel/kbabelview.cpp:

Show the dockers again.

Qt4 doesn't seem to have "tab"-able dockers. But Qt4.2 will, as I've read somewhere, be able to have some sort of ideal view if there are a lot of dockers.

I think the three main widgets should be layout using splitters and set as a mainwidget (not being able to undock them). I think this will make the
userinterface more clear.

Educational

Jason Harris committed changes in /trunk/KDE/kdeedu/kstars/kstars/opsadvanced.ui:

Add checkbox to the Advanced tab of the Options window for toggling
Antialiased drawing (default is off)

David Saxton committed changes in /trunk/KDE/kdeedu/kgeography/src:

Added "Automatic Zoom" action (in addition to the "Original Size") action.
- Automatic Zoom action makes the map automatically scale to window size.
- Original Size action has been fixed to its previous behaviour.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 568638
Jasem Mutlaq committed changes in /trunk/KDE/kdeedu/kstars/kstars:

I removed 'image reduction' tool in the FITS Viewer, I will try to make
the viewer as simple as possible. I also removed the brightness/contrast
dialog, it will be integrated in the histogram later on.

FITS statistics are working now, along with zooming and scale functions.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 4 more) Revision 569809

Graphics

Pino Toscano committed changes in /trunk/playground/graphics/okular:

Show the title of the current document - if available - as title of the main window, as requested in comments of KPDF bug #103362.
Adapted the poppler(pdf) and the chm generators to return the title of the current document.

Diffs: 1, 2, 3, 4 Revision 568059
Stefan Kebekus committed changes in /trunk/KDE/kdegraphics/kviewshell/plugins/ps:

add support for PS Metadata editing and PS page deletion

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 5 more) Revision 568114
Marcel Wiesweg committed changes in /trunk/extragear/graphics/digikam/kioslave/digikamthumbnail.cpp:

Rotate RAW thumbnails as well, not only JPEGs contains rotation information.

CCBUGS: 131532, 131603

Tuomas Suutari committed changes in /trunk/extragear/graphics/kphotoalbum:

SQLDB support with KexiDB. (Still incomplete)

- This needs KexiDB installed.
- To be usable user still needs to create indexes by hand.
- Doesn't yet save member maps.
- Needs optimization here and there.
- Error handling is not yet complete.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 42 more) Revision 568863

KDE Base

Nikolas Zimmermann committed changes in /branches/work/unity/WebKit/WebCore/CMakeLists.txt:

Make JPEG image loading work, by enabling the supplied libjpeg.

I'm staring too long at the valgrind output, which made loading jpegs fail:
<a href="http://rafb.net/paste/results/ovJIik75.html">http://rafb.net/paste/results/ovJIik75.html</a>;

Anyone has a clue why it doesn't work with my libjpeg? :-)
Is there any policy against the supplied image loading
libraries - I saw the PNG stuff enabled.....

If this is wrong, please revert.

Now that kde.org works, it's just fair to make apple.com also work ;-)
Screenie: <a href="/issues/2006-08-06/files/unity2.png">http://ktown.kde.org/~wildfox/ktown/unity2.png</a>;

Riccardo Iaconelli committed changes in /branches/work/kde4/playground/base:

Initial checkin of Plasmagik, a small application that "magically" creates plasmoids.
It is intended to be used by developers to make others using their creations.
Of course this is the first checkin, and this app needs to be improved a lot, adding artworks, improving the code, adding features, and so on, but now it's already working and doing its work in.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 568019
Nikolas Zimmermann committed changes in /branches/work/unity/WebKit/WebCore/platform/qt/RenderThemeQt.cpp:

First stab at themeing. Buttons are now drawn properly by Qt.
I'll go on hacking in that area now :-)

Nikolas Zimmermann committed changes in /branches/work/unity/WebKit/WebCore/platform/qt/RenderThemeQt.cpp:

The show must go on: Draw radio buttons The show must go on: Draw radio buttons & check boxes - qt styled.
text field are a bit hacky - just drawing them with one rect at the moment.

<a href="/issues/2006-08-06/files/unity3.png">http://ktown.kde.org/~wildfox/ktown/unity3.png</a>;

Nikolas Zimmermann committed changes in /branches/work/unity/WebKit/WebCore/platform/qt/RenderThemeQt.cpp:

Rewrote themeing code, now perfectly working for buttons/checkboxes/radio buttons.

Hover (mouse over), focus changes, checked/unchecked all seem to work fine.

<a href="/issues/2006-08-06/files/unity5.png">http://ktown.kde.org/~wildfox/ktown/unity5.png</a>;
(just hovering the "I feel lucky" button on that screenshot)

Nikolas Zimmermann committed changes in /branches/work/unity/WebKit/WebCore/platform/qt/TransferJobManager.cpp:

Add simple POST support works for all kind of forms I tested with.

Debugging Rob's AJAX WebApp (iTunes Music DB) since quite some
hours, XMLHTTPRequests now work in POST mode, only the response
headers parsing is not done yet - doing it atm :-)

Nikolas Zimmermann committed changes in /branches/work/unity/WebKit/WebCore/platform/qt:

Making XMLHttpRequest work with this and my previous commit.

- Implement receivedResponse() Making XMLHttpRequest work with this and my previous commit.

- Implement receivedResponse() & assempleResponseHeaders()
in the TransferJob interface. Call it from TransferJobManager.
(quite hackish using curl, see comments)

This makes it possible to receive answers from Rob's Ajax WebApp.
Jay! Now it crashes when displaying the new content, next one to fix :-) assempleResponseHeaders()
in the TransferJob interface. Call it from TransferJobManager.
(quite hackish using curl, see comments)

This makes it possible to receive answers from Rob's Ajax WebApp.
Jay! Now it crashes when displaying the new content, next one to fix :-)

Diffs: 1, 2, 3, 4, 5 Revision 569986
Dominik Haumann committed changes in /trunk/KDE/kdelibs/kate/scripts/script-indent-c-test.js:

* indent after '{'
* unintend if you type a '{'
* unindent if you type '}' and there is a corresponding '{'

If you type a '}', the script searches the corresponding '{'.
Use case: If you have your source code wrapped by a namespace {...}, then
it is likely to have severyl thousand lines between the { and the colosing }.
My test: If you type the '}' 3000 lines after the opening '{', the script
takes 1000ms (1 second!) to indent the line.

1000ms is a delay you notice, not that nice... --> todo: find workarounds

Christoph Cullmann committed changes in /trunk/KDE/kdelibs/kate/part:

remove lua stuff
will rework the jscript stuff to be per document interpreter,
this won't make much mem difference, even for 50 open documents
only around 1 MB
this way, the indenters for example or other scripts can store some state,
as their interpreters will be bound to one document for ever, only thing
switching will be the view object, which will be set to the active view

Diffs: 1, 2, 3, 4, 5 Revision 570271

KDE-PIM

Szombathelyi György committed changes in /trunk/KDE/kdepimlibs:

Add libkldap, an LDAP binding library for Qt-KDE. Now requires openldap client
libs, but it's easy to extend e.g for Windows wldap32.dll

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 19 more) Revision 568211
Friedrich W. H. Kossebau committed changes in /trunk/playground/pim/contactsapplet/contactproperties/birthday:

product of unability to concentrate on important things: action service to look up a date in wikipedia...

Diffs: 1, 2, 3, 4, 5, 6 Revision 568763
Tobias Koenig committed changes in /trunk/KDE/kdepim/akonadi/server:

Added the class DbInitializer, which creates the necessary tables
from a xml based description which is part of the binary (Qt rcc).

So when akonadiserver is started the first time, it creates all tables
automatically now. Changes to the tables structure have to be done in

server/src/storage/akonadidb.xml

In a later version DbInitializer should also fill the tables with basic
data (mimetypes, flags etc.)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 569056

Office

C. Boemann committed changes in /trunk/koffice/krita/plugins/tools/defaulttools:

Let the move tool take Alt or Ctrl modifier (per KOffice standard)
result is that the move is limited to x or y depending on dominant
direction

forward port from 1.6

Bart Coppens committed changes in /branches/koffice/1.6/koffice/krita:

First stab at a possible masks implementation. Not everything works (apply selection, redo'ing mask creation, display mask when the mask's extent is too small, etc), but it gives a fair idea about how it could look like. Plus, it gives you something to complain about already :P

What this patch adds:
* A mask to the PaintLayer: this is both a grey8 paintdev and a kisselection (grey8 for editing and displaying, selection to actually render/merge it and to convert it easily to a selection later on)
* Some basic functions you can do with it: create and remove it, and it is rendered quite nicely I think.
* If the edit-checkbox is selected, you can edit the mask layer instead of the current paint device (similar to what the gimp does)
* If you select the display checkbox, it will display the grey8 mask instead of the masked paintdev. This is what the gimp can do, too. (somewhat buggy still)
What this patch does _not_ add:
* Bug-free masks :P
* A decent UI bit in the layerbox. Gimp and apparently ps display a small preview of the mask in the layerbox, next to the small preview of the layer. I fear this might not be possible in 1.6, which would be sad. It would be cool if it would be possible to add, though
* A 2.0 port. But that should be easy to do once finished
* Load and Save support. Unfortunately, the masks do not get saved or loaded yet. This must be fixed...

Comments and criticism on the krita-ml is appreciated ( no flaming please ;-) )

Diffs: 1, 2, 3, 4, 5, 6, 7, 8 Revision 568360
Emanuele Tamponi committed changes in /branches/koffice/1.6/koffice/krita/plugins/tools/tool_curves:

Initial commit for the Magnetic Outline Selection (what-a-long-name) Tool.

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 568986

Multimedia

Sebastian Trueg committed changes in /trunk/extragear/multimedia/k3b/src/rip:

Video DVD title preview in the ripping view. The preview is generated by transcode which is quite slow. This should sometime be replaced with a simpler method which directly extracts an mpeg frame from the vob stream.

Diffs: 1, 2, 3, 4, 5, 6 Revision 568299
Jeff Mitchell committed changes in /trunk/extragear/multimedia/amarok/src/metabundle.cpp:

Attempt to allow FLAC ATF reading (although no writing yet, due to taglib bugs), and fix a slight mistake in the generation code.

Martin Aumüller committed changes in /trunk/extragear/multimedia/amarok:

collection browsable by composer

Martin Aumüller committed changes in /trunk/extragear/multimedia/amarok:

support for using the ipod plugin with itunes phones
- however initializing will not work because of the changed directory structure

Sebastian Trueg committed changes in /trunk/extragear/multimedia/k3b/libk3b/projects/datacd:

Completey reimplemented data verification:
Now K3b compares the complete iso image instead of single files. This way
no charset problems will occure anymore. The downside at the moment is
that K3b cannot verify a grown DVD+RW session anymore. I will see about that
later.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 570032

Networking Tools

Andre Duffeck committed changes in /trunk/KDE/kdenetwork/kopete/libkopete:

Add optional preview picture to the fileconfirm dialog.
Yahoo for example sends small preview pictures along with the filetransfer invitation, if the file is a picture.

Diffs: 1, 2, 3, 4 Revision 568010

User Interface

Kenneth Wimer committed changes in /trunk/playground/artwork/Oxygen/theme/svg/mimetypes/source_csharp.svg:

adding c sharp mimetype

Utilities

Tom Albers committed changes in /trunk/playground/utils/ktu/src:

Support for mailing the changes you made...

Diffs: 1, 2, 3, 4, 5, 6 Revision 568369
Tom Albers committed changes in /trunk/playground/utils/ktu/src:

Implement trunk/branch system. Default setting is set to Automatic, which fetches the most likely translation for that app. Completely working. Second bit is about the installation state. Keep track what is installed and what not. Needed because the .mo file for trunk/branch is compiled to the same target.

Diffs: 1, 2, 3, 4 Revision 568670
Tom Albers committed changes in /trunk/playground/utils/ktu:

Implement a delete all installed translations to cleanup your home directory.

Diffs: 1, 2, 3, 4 Revision 569027
Tom Albers committed changes in /trunk/playground/utils/ktu:

Added a firstrunwidget and moved some code to it. Work in progress.

Diffs: 1, 2, 3, 4, 5, 6 Revision 569482
Thomas Kadauke committed changes in /trunk/playground/utils/workflow:

Workflows containing errors are not executed anymore. Instead, a messagebox is informs the user about all errors.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 5 more) Revision 569722
Jaison Lee committed changes in /trunk/KDE/kdeutils/kjots:

Much needed refactoring of printing system. KJots can now print the fancy HTML
it supports. Also, KJots requires Qt 4.2 now.

Diffs: 1, 2, 3 Revision 570181
Jason Kivlighn committed changes in /trunk/extragear/utils/krecipes/src/dialogs:

Now that the Page Setup stopped crashing, here's the initial work on printing using a separate layout/style when printing. When printing, a "Print Preview" dialog pops up. An "Edit" button is available for editing the print layout directly from this dialog, without having to cancel the print and come back.

I really need a good template now for printing on note cards.

Diffs: 1, 2, 3, 4, 5 Revision 570204

Optimization

Development Tools

Adam Treat committed changes in /trunk/KDE/kdevelop:

Optimize project loading, document loading, and background parser.

1. Introduce caching mechanism in the background parser and codeproxy. This allows us to perform an expensive operation only after a number of files have been parsed rather than for every file.

2. Part creation now caches the KParts::Factory(s) so we don't use KLibLoader for every creation of a document.

3. Change KDevDocument so that we cache information like the mimetype rather than looking it up by url every time.

4. Change the way we load KTextEditor documents at startup. Basically, KParts::openURL is expensive so we don't do that at startup. Instead this is done when the doc first becomes active. Will revisit this if it is too much of a delay for the user.

5. For the time being load every project file into the backgroundparser at startup. Use
this to test for other machines. I want to see how long it takes.

Some marks:

With these optimizations I can load 1268 files (every c++ src/header file in kdevelop project) at startup as open documents in under two minutes. Each file is parsed and a codemodel is computed. Each file has a KTextEditor part created for it. And it takes about %32 of active memory once it is done.

With no open documents at startup, I can still parse every file, all 1268, at startup in under 1 minute.

That's pretty fast.

Congratulations to Roberto and everyone else.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 6 more) Revision 569772

Educational

David Saxton committed changes in /trunk/KDE/kdeedu/kgeography/src:

Cache the image as a pixmap. This speeds up painting a lot. Before, QPainter has to convert from QImage to QPixmap before being able to paint the map, which is an expensive process (especially for large zoomed images).

KDE Base

Luboš Luňák committed changes in /trunk/KDE/kdebase/workspace/startkde:

Start the simple splash that doesn't depend on kde libs sooner, before all things needing kde libs (which can take quite some time to load with cold caches).

Robert Knight committed changes in /trunk/KDE/kdebase/apps/konsole/konsole:

* Improved performance when saving large history logs by rewriting text-retrival code with care to cut down the number of memory allocations, simplified things generally as well.

* Performance when working with 'unlimited' history logs (Settings > History > "Set Unlimited")
improved by mmap'ing the log files when many consecutive reads occur.

* Added support for exporting terminal history (aka. "scrollback") to web pages (HTML).
Select "Edit > Save History As..." and select "HTML" in the Filter dropdown.

The HTML is quite lengthy at the moment, will work on that in future.

Suggestions on other export formats that would be useful are welcome :)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 3 more) Revision 569508
Robert Knight committed changes in /trunk/KDE/kdebase/apps/konsole/konsole:

Optimise searching of large history (particularly when dealing with 'unlimited' scrollback history). Relates to bug #99746

Diffs: 1, 2, 3, 4 Revision 569751
Dominik Haumann committed changes in /trunk/KDE/kdelibs/kate/scripts/script-indent-c-test.js:

* "x" -> 'x'
* by using a regexp, finding { for } went down from 1000ms to 300ms.

Utilities

Tom Albers committed changes in /trunk/playground/utils/ktu/src:

- Make the start of ktu with loads of applications faster by processing the eventloop, so that the mainwindow is drawn earlier the apps will arrive a bit later, but I like that effect.
- Made the routine to determine branch/trunk static and make use that. Prevents duplicate code.
- Prevent reading the installed applications from disk twice after changing the language.
- Random cleanups.

Diffs: 1, 2, 3, 4 Revision 568871

Other

Development Tools

Tim Beaulen committed changes in /trunk/KDE/kdesdk/kbabel/kbabel/kbabelview.cpp:

Turn the three main dockers into regular widgets seperated by splitters.
This makes KBabel look better (to me).

Screenshot:
<a href="/issues/2006-08-06/files/kbabelkde4yy6.png">http://img431.imageshack.us/my.php?image=kbabelkde4yy6.png</a>;

Educational

Jason Harris committed changes in /branches/work/kdeedu_kstars_htm:

Adding a branch for adding a hierarchical triangular mesh to KStars

Joseph Kerian committed changes in /trunk/KDE/kdeedu/kiten:

Removing the last of the qt3 code... I'm not entirely certain that the preferences code will work cleanly, but it was a work in progress in the qt3 version as well.

Diffs: 1, 2, 3, 4, 5, 6 Revision 568420

Graphics

George Staikos committed changes in /trunk/extragear/graphics/kst:

unfortunately there was disappointing (read: no) feedback on the advanced
locking branch. This is a major blocker for merging other things and it works
for me, so in it goes.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 77 more) Revision 568075
Pino Toscano committed changes in /branches/work/okular-newpageview:

Make the text selection work almost correctly. Now it's possible to drag the mouse to select the text even for more than one page at once, like a text editor.
The next step about text selection is making it select char-by-char and not line-by-line as we do currently.

Finally, forwardported <a href="http://websvn.kde.org/?rev=569954">r569954</a>; fro trunk to make also this branch compile with a recent kdelibs.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9 Revision 570114

KDE Base

Olivier Goffart committed changes in /trunk/KDE/kdebase/khotkeys:

merge the voice recognition stuff into kde4. arts stuff are not compiled anyway, so it doens't works

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 53 more) Revision 567824
David Jarvie committed changes in /trunk/KDE/kdelibs/kdecore:

Add KTimeZonePhase class as a member of KTimeZoneData, to standardise
access to daylight savings changes.

Diffs: 1, 2, 3, 4, 5 Revision 568302
Benjamin Meyer committed changes in /trunk/KDE/kdelibs/kdeui:

Removed old depricated KEdit Removed old depricated KEdit & freinds class. I have gone through KDE and fixed those classes that still used it or happen to still include the header. KMail and KNode have a copy, but will be porting away from it. KEdit will either die or get a maintainer and be ported.

Diffs: 1, 2, 3, 4, 5, 6 Revision 569582

Office

Sander Koning committed changes in /branches/koffice/1.6/koffice/doc/krita:

Explain layer compositing modes.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 5 more) Revision 569561

Multimedia

Mark Kretschmann committed changes in /trunk/extragear/multimedia/amarok/src/app.cpp:

Re-enable HyperThreading fix for the beta release. I hear Amarok doesn't even start for some users without it.

Sebastian Trueg committed changes in /trunk/extragear/multimedia/k3b/src:

* Made Ogg-Vorbis the default audio ripping format.
* Use the long readable file pattern in the default file naming schemes.

Diffs: 1, 2, 3, 4, 5 Revision 570020

Utilities

Benjamin Meyer committed changes in /trunk/KDE/kdeutils/kedit:

Copy Old KEdit class from kdelibs before it is removed from kdelibs. If this app survives the app should be ported to the new KTextEdit by the new author otherwise this class is copied simply to keep KDE compiling.

Diffs: 1, 2, 3, 4 Revision 569579

Games

Dmitry Suzdalev committed changes in /trunk/KDE/kdegames:

Yay!
Ported libksirtet, klickety, ksirtet to QGraphicsView.

Zoom actions don't work atm
(problem with KZoomMainWindow + non-virtual-in-qt4-adjustSize())

KSirtet compiles but crashes at start (in some network IO-related code)

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 5 more) Revision 568165