Issue 58
13th May 2007 by Danny AllenThis Week...
Each Flake shape will now have a method to load itself from ODF, with a global registry linking shapes to the ODF types that they can load. The registry will allow multiple shapes to offer to open the same types, with an algorithm to choose between the available shapes. With feedback from application developers available during the design process, the implementation was started immediately, with commits from Thorsten Zachmann and Boudewijn Rempt.
Galmuri will keep your data securely and easily. Free from repetitive manual tasks for data archiving, Galmuri will provide easy interface to data archiving and restoration.
Key concepts are done. I've just started actual implementation - though I haven't made lots of progress so far, there is a huge load of work left to do! The first thing I've got to do is to make Galmuri usable.
The goal of Galmuri is to become a comprehensive solution for data security in KDE 4. I want to make it seamlessly integrate with KDE. When Galmuri becomes usable enough, I would like to see it included in the default KDE 4 distribution.
The word 'Galmuri' came from my mother tongue, the Korean language. It means 'conserve' or 'to keep' in Korean. Once I named it KBackup, but another KBackup already exists, so I thought of the new name. A name should imply the purpose of a program, and 'Galmuri' is the name I finally decided on.
Galmuri is extremely flexible: the 'backup targets' are fully plugin based. If you want to store local files, there is a 'target plugin' for storing files. If you want to backup a database dump, the SQL target plugin will do that. Not only built-in plugins, but you can freely create new target plugins. For example, a plugin that archives application domain data or a HTTP-based webpage grabber, and so on.
However, this doesn't mean that Galmuri will be hard to use. Galmuri will feature a simple and intuitive user interface. There are more features I'm planning to add, current development is just the tip of iceberg :).
Galmuri is under heavy construction. I'm working on internal codebase, there aren't many things I can show you. The screenshots below show the only UI that i've done at this point.
Productive suggestions are always welcome. Feel free to give advice and help me improve Galmuri!
Statistics
Commits | 2471 by 233 developers, 4960 lines modified, 1725 new files |
Open Bugs | 13571 |
Open Wishes | 12571 |
Bugs Opened | 202 in the last 7 days |
Bugs Closed | 156 in the last 7 days |
Commit Summary
Module | Commits |
/trunk/KDE |
865
|
/trunk/extragear |
260
|
/branches/stable |
234
|
/trunk/playground |
218
|
/trunk/l10n |
173
|
/trunk/www |
162
|
/trunk/koffice |
119
|
/branches/work |
113
|
/branches/KDE |
84
|
/trunk/kdesupport |
76
|
Lines | Developer | Commits |
283
|
Laurent Montel |
129
|
191
|
Gilles Caulier |
98
|
75
|
Adriaan de Groot |
73
|
125
|
Simon Huerlimann |
57
|
127
|
David Faure |
55
|
64
|
Mark Kretschmann |
40
|
86
|
Marco Gulino |
40
|
86
|
Pino Toscano |
39
|
122
|
Luboš Luňák |
38
|
73
|
Dirk Mueller |
35
|
Internationalization (i18n) Status
Language | Percentage Complete |
Portuguese (pt) |
99.99%
|
Dutch (nl) |
96.63%
|
Estonian (et) |
96.14%
|
French (fr) |
93.44%
|
British English (en_GB) |
87.11%
|
Polish (pl) |
86.19%
|
Galician (gl) |
85.23%
|
Turkish (tr) |
83.46%
|
Russian (ru) |
81.69%
|
Catalan (ca) |
78.06%
|
Bug Killers and Buzz
Person | Bugs Closed |
Robert Knight |
38
|
Thomas McGuire |
29
|
Kevin Funk |
15
|
Joris Guisson |
11
|
Bram Schoenmakers |
10
|
Lex Hider |
9
|
Stephan Kulow |
8
|
Tommi Tervo |
7
|
Oswald Buddenhagen |
7
|
Andrew Walker |
7
|
Program | Buzz |
Amarok |
5310
|
KMail |
2360
|
K3B |
2140
|
Kate |
1986
|
KDevelop |
1854
|
Kopete |
1432
|
Ark |
1004
|
Kicker |
944
|
digiKam |
902
|
Quanta |
880
|
Person | Buzz |
David Faure |
895
|
Stephan Kulow |
566
|
Adriaan de Groot |
548
|
Waldo Bastian |
464
|
Stephan Binner |
404
|
Allen Winter |
392
|
Aaron J. Seigo |
362
|
George Staikos |
280
|
Jonathan Riddell |
249
|
Thiago Macieira |
238
|
Commit Countries
Commit Demographics
Sex
Age
Contents
Bug Fixes | Features | Optimization | Security | Other | |
---|---|---|---|---|---|
Accessibility | |||||
Development Tools | [] | ||||
Educational | [] | [] | |||
Graphics | [] | [] | [] | ||
KDE Base | [] | [] | [] | ||
KDE-PIM | [] | [] | [] | [] | |
Office | [] | [] | |||
Konqueror | [] | ||||
Multimedia | [] | [] | [] | [] | |
Networking Tools | [] | [] | [] | ||
User Interface | [] | [] | |||
Utilities | [] | [] | |||
Games | [] | [] | |||
Other | [] | [] |
There are 151 selections this week
Bug Fixes
Graphics
Improve handling of page sizes when printing.
Thanks a lot for testing the patch
KDE Base
make sure we unmount the device before we even try to eject - and give correct error message if the device is busy
Remove deleted clients also from the list for 'show desktop'.
- Don't disable font anti-aliasing in all applications at KDE startup if the user hasn't explicitly enabled it in KControl. (Especially since the checkbox in the fonts KCM indicates that it's on by default)
- Don't override default font settings with bogus values when they haven't been configured by the user in the fonts KCM.
KDE-PIM
Apply ported version of the mail loss debugging and explicit deletions patch, which I've been developing with the help of some adventurous users. Thanks!
This tracks all deletions that happen through user actions and adds a check to the sync making sure that only things that were explicitely deleted are removed during sync. If unsure, the sync now re-downloads (duplicates) instead of removing mails, which should be safer. Also adds a lot of conditional debugging and refactors open/close to duplicate less code.
Will has a ported version of this for 3.x, which will go into pim+ shortly.
Fix sendMessage() DCOP call failing to wait for attachments to be downloaded and included in the message, before sending it.
This fixes KAlarm failing to send attachments when KMail is used as the email client. The fix will be included in KDE 3.5.7.
Multimedia
Fix...
Dynamic mode fixes:
Make sure that double-clicking on a track when the engine is stopped moves it to the correct place when it starts playing
Disable sorting altogether. Maybe revisit it when I have the time or inclination, but it's really troublesome, especially descending sort.
Networking Tools
Revert the commit that broke the cryptography plugin in the previous Kopete version
Fix bug 145199: ICQ "Hide IP address" feature not working
Fixed encoding handling in ICQ authorization messages.
This is already fixed in trunk, so this change can be considered to be simplified backport of encoding fix.
Features
Development Tools
Basic support for precompiled .class files
KDevelop say hello to your new way of handling context menus.
This is a first simple implementation, without the weights or any other extra logic. I added a build entry to the project manager view context menu to demonstrate it. The docs on the Context class got updated with some hints what a plugin has to do.
Unfortunately for some unknown reason the signal mapper doesn't work, so only the dummy buildSelectedItem slot is called at the moment. If anybody can give me a hint whats wrong there that would be great
- Add first ever IPC interface using D-Bus. The famous method is named checkAndExportToHtml. It can check a site and save the results on an HTML file. It receives the path of the configuration file which has the site URL to check, etc.
- Remove Qt3 compatibility dependency
- Change ResultSearchBar from QWidget to QFrame, in order to set border color, which is not working yet
- Move and separate the generation of XSL stylesheet and write to a file code- Other cleanups and EBN fixes
Educational
I so much like Qt StyleSheet that I now use it for KHangman.
Fixed a bug when nothing was entered as input.
- Marble got Tooltips and WhatsThis now.
- Applied patch by Ralf Habacker for improved icon support in Windows
Finished implementation of keyboard editor. Complete german keyboard layout file added.
More oxygen for blinken, and first kdeedu commit for me ;) Thanks a lot for the original artwork from dannya (I think)
Graphics
Add a Reload menu item to manually reload a document.
Useful for example when not using the watching file features.
Implements KPDF bug #136820.
Implement rudimentary global session management. It saves the URLs, which is the most I dare implement in the stable branch so as to not break anything.
Local session save/restore is not implemented, although some psuedo-code exists for it.
I don't intend to implement this since I don't think any other KDE app does.
* Change minimum allowed zoom level for the grid from 600% to 400%
Years ago, people on kde-apps.org thought that the zoom did not work since they were expecting it at 400%.
Adapt the line step of the scroll bars to the zoom factor.
For low zoom factors, scrolling with the mouse wheel is still precise, for higher zoom rates the steps get bigger.
This means the approx. the same amount of mouse wheel scrolling is required for to scroll the same span in the original picture, regardless of zoom rate.
For the overall relative speed, I added a factor of 2 which feels good, please report if scrolling steps are too big or too small.
(bug 145237, #4)
KDE Base
Remove a number of older color schemes from the default installation. Remember to unpreview changes if the edit profile dialog is not accepted.
Build the new Konsole. It's not yet complete (notably key bindings cannot be edited and transparency has yet to be implemented), but most of the new stuff is there. Test it, break it, etc. -> give me feedback!
When a session closes, switch to the previous view before deleting the session's displays. This (in most cases) prevents the 'flash' which occurs as one view disappears but before Konsole has switched to the next view.
added the get option to strigicmd, using it you can retrieve all informations associated to one or more files indexed by strigi
Option for specifying Xinerama screen where new windows open.
Monday is funday:
* KMetaData resource generator:
- Do not generate inverse properties if they are already defined in the ontology.
- removed the "get" prefix from all getter methods.
- include cleanup
* Variant does not subclass QVariant anymore but uses it as a member
* Updated NAO to current changes in Nepomuk
added deindex option, it can be used for removing dirs or files from an index created by strigi
Adding Printing and Export to the KDE frontend.
Be gentle when killing processes spawned by a konsole part.
In the past, destroying a konsole part always resulted in a SIGKILL being sent to the child process (usually a shell). This in turn could have negative effects such as preventing the shell from writing its history file. This situation was very painful for users of QuadKonsole.
Now a SIGHUP is sent first. We wait up to 1 second for the process to terminate before sending a SIGKILL. The method is copied from the non-part konsole.cpp.
And they lived happily ever after.
GUI for some of the Xinerama options.
Patch up the includes for the KDE3 network compatibility classes as best as I can without reworking any code, and tell krazy to ignore the fact the files don't include their own headers first.
I don't think it's worth fixing these properly, especially given that netsupp.h isn't installed, k3socks.h isn't a public interface (you even have to define I_KNOW_KSOCKS_ISNT_PUBLIC to use it), and the syssocket.h thing is a peculiar work around for some stupid preprocessors and k3socketdevice.h doesn't need it to be used by users of the library (syssocket.h isn't installed).
Menu items and keyboard shortcuts to change the size of the current view in split-view mode. Use Ctrl+Shift+[ to shrink the size of the current view by 10% and Ctrl+Shift+] to increase the size of the current view by 10%
KDE-PIM
Try hard to keep the currently selected item selected when neww results come in during ldap completion, for example, and even move the mouse, so folks can't accidently click on the wrong thing, which has already moved away.
Cross port fixes and improvements from enterprise, including the ability to create resource folders via dcop, alarm relevance per folder, better internal uid and conflict handling, etc.
Port of commits to enterprise 658218, 658220, 658222.
Merge (mostly) hidden config options and their uses from proko2, namely:
- the ability to have a particular domain only allowed for MDNs
- the ability to send no MDNs to SPAM
- the ability to configure access to the above two options
- extended sieve parsing for vacation settings
- the ability to strip certain mimetypes (such as invitations) when inline forwarding emails automatically
These are mostly useful for Kiosk.
Get rid of the awful KPilot wizard, which had two pages: one to optionally autodetect your device and one which selected three options, none of which had any effect. Replace by a single autodetect-device button on the device page under general in the config dialog. Autodetect still crashes, but that's a separate problem.
Let's remove DCOP stuff instead, and keep D-Bus around.
give original style answers about meeting attendance
Tiny usability improvement: don't enable buttons when they don't mean anything (but do produce an error message when clicked)
Basic operations for akonadi ioslave.
(Remains writing support)
Office
Refactor list-styles and move towards the ODF1.2 model.
There was a general cleanup of roles and concepts of the KoListStyle, and also the introduction of storing multiple list-levels in a list-style (as OO.org does).
Also make alterign the list style actually update the lists it manages.
Do note that without all those unit tests this would have been an impossible job! I just love unit tests :)
Implement macro-command handling for text editing.
New feature; honor 'nonBreakableLines' boolean. If set on a parag it will make sure the parag will not be split over two shapes/pages
(ICE hacking result)
Column/row resize tip:
- opaque, not transparent
- really follow QToolTip::palette()
- make it like a real tool tip (top level window, ....)
- don't cover the currently column/row that is being resized
Multimedia
removing collections at runtime works now. There are a few possible problems that still need to be fixed (like, what happens with tracks in the playlist, or with running queries when the collection is removed). and because it is so much fun, the second local collection will now appear/disappear every 30 seconds...
Please do some testing with this code and tell me if there are some updates. Note that you can only sort in ascending order now
-- if possible I'll allow descending but at the moment it's impossible with Qt, might have to seriously hack it to do so. But I don't think it crashes anymore.
Small tool for making amarok use the original oxygen icon names again. WIP.
may I introduce to you: the Amarok icon according to W3C SVG spec
still doesn't render with QSvgRenderer, but that's because it doesn't support the SVGMaskElement (yet)
Networking Tools
Added patch to show Seeders and Leechers columns in KTorrentView.
Thanks to Sebastian Goth for providing the patch!
- email invitation now working
- determine the peer address when we get a new connection
- use the configured port from kconfig insteand of the fixed :5900 value in personal invitation dialog
User Interface
some basic fixes after seeing KDE4 (toolbuttons w/ text below, tabbar bases (seems to be misused by kde tabwidgets?), listview checks like common checkboxes instead of menu ones - need a choice base here, properly aligned tabshadows for tab labels w/ icons - need to fix vertical tabs as well...)
another calendar action draft -- much cleaner
Seems that I have modified this icon some time ago, but never commited. I can't remember what I did, but svn diff shows big changes. =)
So, I'd choose just "improved" for the SVN log.
new menu options support
moved TODO-smallversions to a .ods file -- and to /playground/docs/ -- marked all 16x16 icons that are done and those that need doing -- i've marked source mimetypes as 'NEED' because as I understand it, there is someone redoing all of theose at the moment -- also all image mimes are marked as NEED until we work out which is using the hot air balloon and which will use the image mimetype in /playground/David
safari like tabbars for non tabwidgets
Utilities
Add support for colors with alpha channel
* Make the new behavior of the Open/Retract action focussing an already open Yakuake window optional.
* Minor string improvements.
- fixed kbluetooth crashes, when deleting default adapter object and background PeriodicDiscovery
- advanced kbluelock tray
- kbluelock screenlock via dcopclient
- added conditions, to not stop PeriodicDiscovery, when it is needed from a background bluetooth process
Added theme written in javascript. Does not work yet cause I need to wait till next monday to commit some code to kdelibs/kross/kjs.
Rework keyserver operations.
- avoid crashing if the list of received keys is empty (e.g. keyserver is unreachable)
- create the gpg process only at one place, call this function from different places
- don't abuse the search window for key refreshing from totally unrelated places in keysmanager.cpp, add KeyServer::refreshKeys() for this
I successfully refreshed keys with this :)
Fix key trust visualisation. While at it add more different colors.
Games
Committing a kpoker rewrite:
This code has been on my disk for a long time. It is in a "mostly usable"
state, however:
* It is entirely KDE 3 based
* I am mostly working on the gameengine and the general framework parts, the GUI is in a debugging state only.
* Singleplayer games are supposed to be working, multiplayer games "work", but the "raise" phase is mostly unimplemented.
In particular this code is KGame based and thus meant to support both, network games and computer players. The previous KPoker code had a computer player, but the code sucked a lot - the code was never meant for a computer player.
The AI in this code does exist, but is a dummy (debugging) one only.
Commit all the stuff, i was at this ->| |<- close of rm -rf'ing it
Things that work:
- SVG !!!
- Actions for languages and playgrounds are dynamicaly generated instead of beign hardcoded
What's missing:
- Texts :-( <-- That's going to be hard
- Some bugs in either my understanding of QGraphicsView or in QGraphicsView itself <-- That's going to be hard too
What i did not test:
- Sounds, phonon-xine does not compile here :_/
New game and Load game works again, at least with local no AI games
better artwork for kwin4. this is not finished, but it's better. I don't understood why the board is cutted???
Input device icons.
* Fixed saving
* Use Symbols class for serializing games
* Changed Symbols to be easier customizable
* Added configure dialog
* Fixed menu
* Other Bugfixes
(Cleanup of symbol handling needed, this ugly "select number"-toolbar is temporary)
Redone some graphics. Added background.
ksirtet stops moving pieces down automatically, when one piece has been dropped by the player. Big thanks to Markus Mauder for the patch that fix that, and make the game playable
KGameTheme(Selector)
* Allow for multiple theme types (e.g. tilesets, backgrounds)
* SVG and preview files are searched for relative to the location of the .desktop file
* .desktop theme files can be put anywhere (under share/apps/appname) as decided by the application maintainer
KMines
* Adapt to use new KGameTheme changes. Implement KGameTheme as a pointer
Potato game svg provided by Éric Bischoff
IMHO looks better than the current one
Other
Add Quaternion class
Mostly taken from Torsten Rahn's Marble, with permission to relicence
I also impoved it by adding loads of operators and stuff mostly copied from the vector class
Not tested in this new incarnation yet.
Optimization
KDE-PIM
When loading a large contacts folder, show one progress dialog instead of three. (minor speed improvement too)
Making it really faster (loading the mails once instead of 3 times) would involve making the kmail dcop interface more complex...
Multimedia
Calculate the size of sub-region that needs repainting, which can be a lot smaller than the region itself.
Greatly improves playing content of <a href="http://www.cwi.nl/projects/Ambulant/Demos/Euros.zip">http://www.cwi.nl/projects/Ambulant/Demos/Euros.zip</a> and the fadeIn trans-in (other transitions simply don't work yet :)
Other
Educational
blackhole KLatin, as decided with all KDE-Edu devels on the mailing list
Taking out the toolbar that was there for debugging. Marble already got a toolbar - on the left.
start of KAlgebra doc - added the CMakeList.txt so it's ready to be moved to kdereview
move kalgebra in kdereview
Graphics
Change kolourpaint-support at lists.sourceforge.net to <a href="http://www.kolourpaint.org/support">http://www.kolourpaint.org/support</a> (or nothing, due to string freeze). Rationale:
Permanently listed email addresses are always spammed and must be changed every few years. Hence, should not list email in program in first place.
Website content can always be changed - installed programs cannot be.
KDE Base
Move new konsole-split-view branch back to trunk.
Make KDialogs modeless by default, for compliance both with Qt and the KDE 4 which advocates modeless dialogs where possible. This may break a few things.
No "Piece of shit 1" button on querty keyboards available ...
Moving Marble into kdereview - yay!
Install KATE highlighers by glob pattern instead of requiring an explicit list; this way there is much less maintenance
Add a TODO list with features to implement, known bugs to squash, testing to do, user interface issues to look at and "artwork" to do before release.
Help from others would particularly be appreciated with respect to testing and UI issues. Especially unicode support testing. (Also add menu items that I forgot in a previous commit)
KDE-PIM
Remove port-to-trunk branch now that it's been merged to trunk.
Work will continue there.
Since all the icons were actually Kristof Borrey's iKons and not crystal *anyway* and we don't have oxygen icons for KPilot yet, shuffle them around and move into hicolor so that at least something gets displayed. Ditch the splash and other crufty images, too.
List KDE 4 changes
Office
icons on the buttons, not sure if this is the proper way to do this, but at least it makes the ui somewhat more usable :)
use macro_optional_ to allow disabling a koffice application (similar to DO_NOT_BUILD of 1.x, now it's something like BUILD_kword=false , I hope it can be improved before released)
Konqueror
Multimedia
Don't draw bullshit-salad in the slider when the engine is stopped.
Toying with widget style sheets.. check the search widget in the toolbar. Now I won't claim that it looks pretty yet (I suck at art), but there's potential.
Networking Tools
the metalink transfer has been disabled, due the transfer interface don't fill the needs of metalink. so we move the metalink parser to the core stuf and handle the metalink via a global funtion in KGet class.
now it works property. but some of it goods are not available yet like the checksum test.
please fill free to test it. feedback are very wellcome :)
User Interface
Adding a TODO file to coordinate better our work of creating special versions for small sizes.
Check in the file for all the detailed instructions on how to use it.
I already inserted a few icons in the list, but the it's far not complete.
Utilities
Turn 'an URL' into 'a URL' in the skin readme, as requested on IRC.
If this was the biggest outstanding problem with the beta, things bode well.
KDE4 branch for systemsettings.
Games
creating a workplace for my temporary ktuberling svg stuff
bovo move to kdereview from playground/games
Commit my SVG port of KTuberling, Johann agreed it should be moved if i grant it'll be finished before 4.0
And with the current state i can grant that.
default_theme2.svg is just default_theme with things moved around so i can test playground switching works.
Comments more than welcome.
remove any trace of text support, decided there's no need to display texts for kids