KDE Traffic #17 For 13�Jul�2001

By Aaron J. Seigo

Table Of Contents


Welcome to KC KDE! This isn't just any KC issue, either. This is a double issue covering the last two weeks of online conversation. Many of the KDE developers were at LinuxTag in Stuttgart from July 5th to 8th, including contributing KC KDE author Rob Kaper. This contributed to a slight quieting of the mailing lists as conversations and hack sessions were able to be conducted face-to-face. While this gathering of Free Software fans and hackers was going on, your editor was watching enviously through a web-cam as he crammed to complete a project whose deadline was suddenly bumped up.

But all's well that ends well... as we move ever closer to KDE 2.2 going gold and I have time to sleep again, here is a double-shot KC KDE. Enjoy and happy hacking!

1. Keyboard Shortcuts for kdesktop and kwin

23�Jun�2001�-�29�Jun�2001 (14 posts) Archive Link: "[PATCH] Shortcut for Show Desktop"

Topics: Keybindings

People: Carsten Pfeiffer,�Ellis Whitehead,�Ralf Nolden,�Richard Moore

Many people prefer to use keyboard shortcuts whenever possible and so KDE developers pay a good amount of attention to how easy it is to drive the desktop using only the keyboard. Carsten Pfeiffer announced a patch to add a keyboard shortcut for "Show Desktop". While implementing this shortcut, Carsten came across a limitation of KGlobalAccel and noted this in his email saying: "To avoid having tons of KGlobalAccel objects all over the place in kicker, I moved the existing object (for the K-Button) to PGlobal. Keep in mind you can also have multiple K-Buttons or Show-Desktop buttons, we don't want one KGlobalAccel object for every button." Ellis Whitehead responded saying, "Doing it "right" will require redesigning kcontrol/keys and altering some KGlobalAccel member variables. It was too close to freeze to make such changes, though, so the insertItem() abomination is just a temporary solution. ;) Presuming that I don't get kidnapped by international terrorists or burned at the stake by rabid farmers (niether of which are common occurances in urban Michigan, USA), this will be on the top of my priority list for the next KDE release." This should make implementing keyboard accelerators in areas such as KWin less painful in the future.

During this same thread, Ralf Nolden announced the availability of a screen capture shortcut, saying: " Rich and I want to add a screenshot function to kwin as well (on the PrtSc button, that function is heavily missing) including (I think) Ctrl+PrtSc for a screenshot of the active window including dcop interface so other apps can make use of that function from outside." Elsewhere Ralf expanded on the initial announcement saying, " Richard Moore added the shortcuts for taking a snapshot of the desktop and one for the currently active window, including dcop interface. Now, first we had to struggle with the fact that we didn't have an application that makes use of the clipboard for graphics :) Then we digged out the kscribble example in kdevelop (updated that to 2.0 in kdevelop/kdevelop/examples/kscribble-2.0.tar.gz so it compiles and runs) that does that so we could test it. Now, with dcop everything works fine but it just doesn't with the shortcuts and we don't know why." As with many such oddities in the land of Unix GUIs, XWindow key mapping was to blame for the otherwise innexplicable PrtScr key problems.

2. Years Listed in Copyright Notices

27�Jun�2001�-�28�Jun�2001 (16 posts) Archive Link: "Copyright years"

People: Gioele Barabucci,�Michael Matz,�Rob Napier

Free software depends on copyright to ensure it is used and available exactly as the author wishes it to be. Unfortunately, copyrights can be very tricky and few programmers happen to also be lawyers. Questions on the topic are therefore quite common. Gioele Barabucci asked, " I still see many (c) 1999 - 2000 around KDE, shouldn't this be updated to 2001?" Michael Matz provided a succinct answer saying, " If they weren't changed in 2001, then the above is correct. If OTOH they _were_ changed that needs an adjustment, correct." .

Rob Napier supplied a more comprehensive answer:

Ah, now we wander into that bizarre world of software copyrights (well, it's not just for software, but software has some special problems). It seems obvious that you would change 1999-2000 into 1999-2001, but in most cases, it actually should be "1999-2000, 2001" (and in many cases it should be "1999, 2000, 2001"). "But that's madness!" you say. Yes, but read on....

The first date in a copyright notice is the date when it was first developed. So say I worked on a brand new tool all by myself from 1996 until 1998 and then released it to the public for the first time in 1998. Then I made some updates in 1999 and re-released it. That would be 1996-1998,1999. "But software is never complete!" you say. Well maybe you say that, but that's not how copyright sees it. They see it as being complete and released at some given time. This idea of releasing code that doesn't really do anything (Linux 0.1) is kind of alien to the the copyright system. Even more alien is the idea of having your work in progress be publicly available.

This can then lead to copyrights like "1996-1997, 1997-1999, 2001" and similar crazy-looking things.

Anyway, the short answer is: if you want it to be "correct", keep tacking on ", <year>" instead of using ranges once the software has been released. Never update a copyright at all unless you're also modifying the code in that year (as David pointed out).

Think it's annoying here? Try dealing with this issue surrounded by programmers on one side who could care less, and the company lawyers on the other side who *really* want it to be absolutely right.

A bizarre world indeed...

3. Proxy Support in kio_ftp

27�Jun�2001�-�30�Jun�2001 (21 posts) Archive Link: "Patch to add direct FTP proxy support in kio_ftp"

Topics: KIO

People: Michael Goffioul,�Dawit Alemayehu,�Dawit Al

Proxy-related issues have been a hot topic on the devel lists lately. One such issue is related to FTP proxies, which are currently handled via kio_http. Michael Goffioul said, " Following the small discussion about the problems when using a real FTP proxy server (not an HTTP proxy, but a real FTP server that acts as a proxy, like DeLeGate), and after being bored of changing everytime the '@' char to '%40'. I decided to hack kio_ftp to see if it was possible to add direct FTP proxy support. Indeed it's only a matter of redirecting the connection and using a processed login. This results in the attached patch, which could be commited to CVS if anybody finds it useful."

This spawned a long thread between Michael and Dawit Alemayehu regarding the correctness of various parts of the patch. After coming to some understanding of the issues on both said, Dawit posted a patch saying, " Can update kdelibs/kio and try the following patch please. The patch assumes that the proxy FTP server does not require you to login, but the remote server can as needed." Michael tried the patch, noted some issues and Dawit addressed them before committing to CVS.

4. And another one bites the dust... kdesupport no longer packaged

28�Jun�2001 (4 posts) Archive Link: "kdesupport???"

Topics: KDE 2.2, Building KDE

People: David Faure

With the release of KDE2.2beta1, many users were confused at the lack of a kdesupport package. The question continues to be raised by users and casual developers alike. As a definitive answer to the "Where is kdesupport?" question, David Faure posted the following:

If you're building from _CVS_ then you can use the kdesupport module. If you're building from the tarballs, then you're supposed to either go find those libs from their original location, or binary packages. We could also provide a kdesupport tarball for convenience, somewhere else, like we provided qt at some point... but the point is, we don't support the stuff in kdesupport (despite the name :), and people shouldn't create binary packages of it, since it's stuff that gets already packaged in another form.

5. New Proxy Configuration GUI

30�Jun�2001�-�1�Jul�2001 (5 posts) Archive Link: "NEW Proxy config dialog [Correction: new links :)]"

Topics: KDE Core Development

People: Dawit Alemayehu,�Dawit Al

Those using KDE2 and accessing the network through a proxy will be happy to hear that Dawit Alemayehu finished work on the new proxy configuration dialog, which he announced by saying, " Here is the new proxy config dialog I have been promising for a while now. It is fully functional and with the exception of few and perhaps annoying cosmetic bugs which can be worked out later :) It has quite few features that are not present in the current dialog. It also fixes the infamously missing config option for setting up HTTPS proxy servers. The intention of me providing it now is to have people try it and give me feedback. It probably would not be in the 2.2 release since it contains many new messages etc... etc... Anyways, I appreciate any feedback specially from those using the auto discover mode (Malte will also appreciate this as well :) ) " Dawit also provided several screenshots:

and posted instructions on getting the new proxy dialog:

  1. Download the following two files:
  2. Untar/Uncompress (tar -zxvf) the contents of the tgz file package into kdebase/kcontrol/kio
  3. Apply the patch from the same directory mentioned above.
  4. Re-compile and try out :) Please note that the cache and proxy configuration have been separated. You can now invoke the cache config dialog separately using the "kcmshell cache" command.

6. New KOffice Library to be Written

1�Jul�2001�-�3�Jul�2001 (12 posts) Archive Link: "Plans for the port of KPresenter to the new QRT stuff"

Topics: KOffice

People: David Faure

KWord has benefit quite a lot from using the QRichText widget that has been backported from Qt3 to Qt2. KPresenter will be the next office app to enjoy the benefits of this work, according to an email by David Faure outlining plans for KPresenter after KOffice 1.1. After listing in detail all the specific changes that would be need to made, David added, " I suggest to put all those classes, together with the QRT classes, into a new koffice library called libkofficetext or something like that... Well, I have started splitting the basic classes (still in kword/ currently to avoid merging problems, but I'll create the kofficetext lib soon, moving that stuff into it)" This was met with general approval and excitement.

7. Cross Referenced KDE2 Source Code Tool Now Online

2�Jul�2001 (4 posts) Archive Link: "New CROSS-REFERENCED source code tool online"

Topics: HowTo, KDE 2

People: Kurt Granroth

Probably the biggest hurdle to getting involved in an already active software project is becoming familiar with the code base. The larger the project the larger that hurdle is, and KDE is a very large project. It takes new KDE developers some time to get acquainted with all the nuances and capabilities available to them in the KDE source. Anything a project can do to lower the learning curve will go a long way to helping those interested get involved. By allowing easy access to the structure and usage of the code base, experienced developers are also aided in visualizing and improving their own work. Kurt Granroth announced the availability of an exciting new online resource that goes a long way to furthering these causes:

For those of you who don't read dot.kde.org (shame on you!), we now have a site with all KDE source code cross-referenced! This is done using the LXR engine. It's *very* cool and something that I've been looking forward to for a long time now. No more tearing out your hair wondering where KFoo is defined :-)

The URL: http://lxr.kde.org
The story: http://dot.kde.org/994130455/

8. kio_http Being Ported to TCPSlaveBase

2�Jul�2001�-�4�Jul�2001 (5 posts) Archive Link: "PATCH: HTTP ioslave port to TCPSlaveBase"

Topics: KIO, Security, Performance

People: Dawit Alemayehu,�Waldo Bastian,�Dawit Al

In an effort to make HTTP protocol handling more efficient and secure in KDE2, kio_http is being ported to the TCPSlaveBase class that the other protocols that use TCP all use now. Initial work on this was announced by Dawit Alemayehu:

Here is a link to a first run patch (rather large to post here) that attempts to port kio_http to use TCPSlaveBase:


This patch fixes:

  1. Security concerns regarding fake certificates being accepted without a warning the end user, i.e. no certificate verification ?? See the recent thread on this subject in kfm-devel
  2. SSL tunneling finally works!! Yeah!!! This means SSL over authenticating proxies works with this io-slave. Not only that the changes in tcpslavebase.* enables any inheriting io-slave to do SSLTunneling with very little work.
  3. But most of all no more kio_https!!!! R.I.P. Now kio_http does it all.
I have also made some changes/additions to TCPSlaveBase to allow for SSLTunneling etc. See the header documentation once you apply the patch.

Known problems with patch:

  1. When connecting to SSL sites you get a constant warning about IP address of certificate not matching IP address of the site. George how does this get fixed ? I remember you saying something about you needing to do somethings once io-slaves were ported over to TCPSlaveBase.
  2. The "Lock" in konqy does not get activated even though the connection is actually secure. This probably fails under the same issues as #1 since everything that had to do with SSL has completely been ripped out of the http io-slave :)

This is obviously a very important piece of work that has a far reaching impact on web browsing performance and capability. After some discussion Dawit committed a portion of the patch to CVS and asked Waldo Bastian, "is there any way we can move some of these config initializations from kio_http ? For example the language settings, whether we should use the cookiejar etc seem to me to be things that we can move into the SessionData class I created for password caching or back out to the application level. This should make the instantiation of kio_http io-slave a bit more faster :) We also need that limitation on the number of io-slaves that can connect to a given site at a time. Is there anyway we can have this for 2.2 since it definitely have impact on performace (http and as David recently pointed out for tar io-slave as well) ?" Encouragingly, Waldo "The Tireless" Bastian replied, " I will make the maximum nr of slaves / protocol slightly more configurable. But not per host yet. (the tar stuff doesn't really has this host-notion anyway)"

9. To Megagradient? or Not to Megagradient? That is the Question.

3�Jul�2001�-�10�Jul�2001 (17 posts) Archive Link: "Megagradient kstyle issues"

Topics: Look and Feel, Art

People: Karol Szwed

Mosfet made a splash not too long ago when he unleashed the Megagradient style upon the KDE2 world. Many people ooh-d and ah-d over the new eye-candy. Much has occurred since then, including people finding numerous bugs in the style. The current resident KStyle guru, Karol Szwed, took it to task and posted the following email for comments and opinions:

There are still many issues with the megagradient style code that make it not fit for release with KDE 2.2 IMHO.

Problems such as:

  1. Setting a menu effect such as fade or scroll makes kdeapps coredump when accessing menu items, even though the code seems to attempt to disable these effects unsuccessfully.
  2. Many widgets such as labels do not get their background colors updated when resizing for example dialogs. This leaves ugly bars of colour when resizing.
  3. there are various issues with torn-off popup at this point in time.

Even though I am attempting to fix these issues, I have serious doubts about whether this code should be released with kde 2.2 as these issues may not be resolved in time with reasonable stability.

The only thing that depends on megagradient is kpersonalizer. Thus, I would like to come to a concensus here before I disable it in cvs, as kpersonalizer would have to be modified.

This inspired much discussion ranging in topic from the transparent menus in Megagradient, to overall stability of the style, to cross platform issues. Some favored disabling the transparent menus, others fixing them. Some thought that the code should be removed as Mosfet would be maintaining it outside of CVS anywas, others were of the opinion that people were already expecting it to be in KDE2.2 and should therefore remain. Nearly two weeks after the start of the discussion it was removed from the main build, though kept in CVS.

10. Signals of Success?

6�Jul�2001 (4 posts) Archive Link: "KDE Job Opportunity in USA"

People: Mike Pilone

You know a system is becoming successful when a job market starts to form around it. We are perhaps seeing the beginnings of this with the following email from Mike Pilone:

I was recently contacted by a company in Boston, Mass. USA. They are looking for a KDE developer for:


A Linux/KDE developer project (2-3 months) in the Boston, Mass area. I am having a very difficult time finding people who have KDE experience! This is a two-three month project (with the possibility of extending), and they need someone who can be onsite full time during that period. If you think of someone who might want to do this, I can pay up to $45/hour, depending on experience.


I personally don't have anymore information, but the contact person is "Peggy Nix" <pnix@abtsolutions.com>, she should be able to give you some more info if you are interested. Sounds like you will need to move or live in the Boston area however. The company isn't looking for remote contractors, which rules me out! If you live in the area or are willing to move, sounds like a great opportunity to "Do what you love" (TM)

Some suggested it would be useful for the KDE League or perhaps The Dot to start hosting a KDE (paying) jobs page. It will be very interesting to watch and see if more KDE related job opportunities arise.

11. WYSIWYG Support in KWord

6�Jul�2001�-�9�Jul�2001 (5 posts) Archive Link: "Status of the WYSIWYG support in KWord."

Topics: KOffice, KWord

People: David Faure

KWord, along with many other KOffice components, has matured tremendously since the 1.0 release. However, there are still issues with hardcopy produced by KWord looking different that what may be shown on-screen. David Faure posted a status report on this issue, saying:

After all the discussions about the WYSIWYG problems in KWord, and after reading a little bit of Abiword's source code ... I have started to implement a solution in KWord. Obviously, this is about doing the layout at a constant, precise resolution (1440 DPI is what I found in abiword and it sounds ok to me), with big fonts, and displaying the stuff with smaller fonts but using that precise layout. This requires to change a lot of KWord's code (not the class design, but all the coordinate conversions), so this won't go in before KOffice-1.1.

David noted that large changes to KWord should not be made until his work is committed after the KOffice 1.1 freeze as the changes are substantial. He also said that if there is enough interest, he would commit the changes to a CVS branch for others to compile and test.

12. aRts VideoPlayObject to Allow Video in Konqueror

11�Jul�2001 (6 posts) Archive Link: "PATCH: Arts::VideoPlayObject + mpeglib adapted"

Topics: aRts, Multimedia, Konqueror

People: Nikolas Zimmermann,�Nikolas Zimmerman

Konqueror the webbrowser keeps getting more capabilities all the time. Java, Javascript (still a little buggy), Netscape plugins, sound file embedding and recently experimental ActiveX support. What's next? Embedded video of course! Nikolas Zimmermann posted his (rather large and sprawling) patch to supply a video play object for aRts and added, " here is a patch, which adds support for Video Embedding, ie. into Konqueror. It's not stable, but this is a mpeglib issue! This patch is definately _not_ for KDE 2.2 but a kind of RFC and technology preview." There was some discussion as to the amount of code duplication that was occurring in the various Konqueror extensions and when this should be added to CVS. Of course, the answer was post 2.2.

Sharon And Joy

Kernel Traffic is grateful to be developed on a computer donated by Professor Greg Benson and Professor Allan Cruse in the Department of Computer Science at the University of San Francisco. This is the same department that invented FlashMob Computing. Kernel Traffic is hosted by the generous folks at kernel.org. All pages on this site are copyright their original authors, and distributed under the terms of the GNU General Public License version 2.0.