cat /dev/maxilys

A glance in the mind of a KDE/Linux developer to see how ideas turn into code.

2006-02-16

KDE: First time

In a previous post, I talked about straightening up some tunnels in KDE's anthill. (Once again, an ant is an insect, not a bug. I don't mean KDE is a mountain of bugs but a complex structure like an anthill.)

So, for the first time, I patched KDE. Yes! That's possible and really easy. There's a kind of visual glitch in the taskbar applets: The tasklist labels are drawn with the button text color on the general background. You can't see the problem when the button text color is (usually) the same than the general foreground but imagine just this: A bright background and dark buttons with bright text. Here comes the glitch: the bright button text on the bright background. (This is what can happen when the buttons are set to react like toolbuttons, i.e. with a "real" button only on mouseover.)

I already looked in KDE sources and knew where to patch. I did ./configure at the base of the sources tree and make in Kicker's folder. The make failed because some other parts needed to be built first. I built the missing parts as soon as I got an error and I reached the end of Kicker's make without noticing it.

Well, I just forgot that I use the Taskbar2 applet instead of the Taskbar(1) that I patched. Apart from that, my patch works as planned. The colors used by the Taskbar(1) applet are now correct on my system. I just need to do the same thing for Taskbar2... but that won't be so easy since I feel there are some missing parts... Well, I don't really understand what's going on. There must be some invisible ants. ;-) I need to dig a little more to find the queen ant... err... to reach the bottom of this affair.

In the mean time, I'm gonna try to do the same thing with the toolbuttons: correct the colors. This problem is closer from a real bug. KDE hardcodes the colors used by the toolbutton labels and they suffer from the same problem than the taskbar: button text color on general background. I know a toolbutton has the button color as default background... but in fact it never happens! You can't use KDE without a style --some widgets are even undefined-- and (almost*) all the styles do the same thing: A toolbutton uses the general background by default and displays a real button only on mouseover. So KDE hardcoded colors are (usually*) totally wrong, especially the color that is used by the labels on mouseover. It's called toolBarHighlightColor() in the sources but it doesn't prevent it from coming right out of the blue. It doesn't even works right with the old-timer CDE style! It's just plain ugly.

*almost and usually: The really ooooooold styles like CDE, B3 and KDE classic are the only styles that work right with these KDE hardcoded colors. Well, --at least-- I'm sure for CDE that I just tested and which made me wonder why this horror is still maintained in our 21st century.

Now, I'm putting my helmet back on. I still have some deep mining to do.

Ho! And by the way, if somebody wonders why this blog is called "Kritiks", that because English isn't my L1. I though the french word critiques should be written "critics" in English while in fact it's "criticisms". I left it this way because I was too lazy to search in Blogger's poor crippled interface if there's a way to change it.

0 Comments:

Post a Comment

<< Home