* title bar now tries to avoid to become completely obscured by other windows ;)
* moving of title bar flicker free (at least on my machine)
* all repaint problems fixed (those I knew of course), even the one on resize
* mousePosition (those arrowed cursors) now complete
svn path=/trunk/kdebase/kwin/; revision=48189
now only has one button entry, "ButtonBg", instead of 3. It's up to the client
what to do with it. All the clients are updated except mwm. As the
author noted in his README, mwm isn't Motif window manager at all but KStep ;-)
I disabled it for now until there is new drawing code in there, it would
confuse users anyways since were about to release another Krash and it is
identical to KStep.
Also, I removed the Groove and GrooveText color entries. We now use the
normal TitleBar and Font entries. Hence system will probably look funny until
you adjust the colors since it draws text on the frame and not the titlebar
bg. All the rest look much better by default.
To configure button colors set the active/inactive button background color
in KControl. I'll remove the other entries ASAP. You'll also note that the
active/inactive colors are now actually what you would expect.
svn path=/trunk/kdebase/kwin/; revision=47753
three entries (button fg, bg, and blend) to one - button color. What exactly
to do with this is up to the individual style. This is less customizable but
a hell of a lot more coherent since the styles all draw their buttons so
differently. Right now I'm just using the button background entry. Once all
the styles are ported I'll switch to a generic button color entry.
Also I made my buttons more like other window manager styles/themes that
aim to more or less emulate platinum, but not enough to get nasty mail from
Apple ;-)
svn path=/trunk/kdebase/kwin/; revision=47697
from the KStyle aqua theme - color reduced, converted to bitmaps, and drawn
using the color scheme. The buttons in different color schemes shows why it's
really cool to support dynamic C++ engines as well as pixmap themes ;-) Also
uses a small frame with a resize handle and mac-like (hehe - of course ;-)
drawing for everything else.
Preliminary screenshots with different color schemes are at:
http://www.mosfet.org/modern-0428.html
svn path=/trunk/kdebase/kwin/; revision=47624
to be avoided. It also updates nicely. Just move kicker from the
bottom to the left, say, and open a new window. It doesn't cover
kicker. Maximise. Still doesn't cover. Seems to work, then.
svn path=/trunk/kdebase/kwin/; revision=47602
which otherwise would occur when you click on the Alt-Tab-window with the
mouse. I hope I didn't break anything because this X-stuff is rather mystical.
BTW Why does KWin get so many "MotionNotify" events when you move your mouse
across certain windows?
svn path=/trunk/kdebase/kwin/; revision=47554
properly, the whole thing needs an overhaul (I never anticipated the thing
being movable) and I want to use it now ;-)
svn path=/trunk/kdebase/kwin/; revision=47542
Anyway, this is the eventsrc for the kwin events (window shadow, minimize,
etc). I've not connected any of the code to KWin itself because I don't
feel like damaging it :). KConfig is broken, so foo to the kcontrol module
until someone feels like fixing it, which, most certainly, does not include
me.
I've got a teeny tiny addition to make to KNotifyClient (so to make it
start the KNotify daemon if/when needed.)
And I think "we" should patch Linux's ld.so so that it caches references
to functions. I believe this will speed up startup times significantly.
Why am I ranting on a cvs commit off-topicly? Well. I'm aware of my weirdness.
What're you going to do about it? :)
svn path=/trunk/kdebase/kwin/; revision=47402
which want to be permanently visible.
I've used an XAtom called '_NET_AVOID_SPEC'. This of course can change
if need be. I think it's correct according to the wm spec, but the
wm spec seems to be empty on gnome.org, so who knows.
Windows can choose to be avoided by setting an XTextProperty
with one value, which can be either 'N', 'S', 'E', or 'W', according
to which screen edge they are anchored to.
kwin then sets its 'clientArea' rect appropriately, so that (in
theory at least) clients will not enter this area in some circumstances,
such as when being mapped for the first time.
You can see that this actually works if you start lots of konsoles. They
don't appear over the panel. I don't know what happens if you move the
panel, but I presume things will be screwed up, because I haven't
looked at that yet.
If you maximise a window, it'll still fill the screen, because the
implementation of maximise in kwin/client.cpp doesn't take account
of the workspace's clientArea rect. This is easy to fix, but I've
been awake for too long, so I'll do it after 42 winks.
svn path=/trunk/kdebase/kwin/; revision=46772
Removed link testing and debug flags from Makefile.am
Some magic to give a nice 3D look even when specified background colour
is dark (looks good with NeXT colour scheme now).
BTW, what's the point in translating 'RISC OS' ? It's a brand name,
like IBM.
svn path=/trunk/kdebase/kwin/; revision=46360
* Implemented colour scheme support, including antialising of symbols
and coloured edges to 3d items.
* Increased speed and reduced memory usage.
* Implemented raising when button-down on resize bar, unless you use
the middle/right buttons, in which case you can resize without raising.
svn path=/trunk/kdebase/kwin/; revision=46233
First off, Rikkus was right about double buffering. I really didn't think this
was needed and tried everything to get rid of the flicker but it didn't happen
until I double buffered the title. I was able to optimize this quite a bit
(only recalc on resize, only buffer the active title/color scheme, etc...).
In the meantime, I got rid of a lot of non-optimal painting and now use
NoBackground for the widget. The latter was a obvious move as it avoids a whole
clearing of the widget :P This resulted in a big speed improvement, which helps
offset the time taken in buffering ;-)
svn path=/trunk/kdebase/kwin/; revision=45264
client, which used matrixes and QPainter drawPixmap stuff. Now all that is
gone and it's almost entirely bitBlts.
Still buggy tho, so I'm keeping it disabled for now - but now it's
fast and buggy so I guess that should count for something ;-)
svn path=/trunk/kdebase/kwin/; revision=45235
For inclusion in CVS you must:
a) Follow the user color settings. This means no normal pixmaps, which when
used in a dedicated KWin style allow no configuration at all (you can't
override the pixmaps and you can't follow the color scheme). KWM themes
are for that, at least then everything is configurable. It makes no sense to
just make pixmaps then bitblt them, since it is way less functional than KWM
themes.
If you want to draw decorations first you can use kpixmap2bitmap in kdegraphics
to separate the shades and then kColorBitmaps in kdrawutil.h to draw it using
a colorgroup from the options class.
b) You must follow at least the color settings from the user Options class.
svn path=/trunk/kdebase/kwin/; revision=45132
Screenshot at http://www.geoid.clara.net/riscos.png
Next thing to do is to remove the lines of the title pixmap where
they pass under the text, fading them out as they approach the text.
I'd also like higher contrast between active and inactive, so the
active title might turn black (I'm a NeXT addict)
svn path=/trunk/kdebase/kwin/; revision=45099