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
the text when using tiny titlebars but it looks like crap without it ;-)
BTW, is this style working well for laptop people?
svn path=/trunk/kdebase/kwin/; revision=44853
satisfy both laptop users who want large buttons and those who have low
resolution and want small bars. So I made it configurable :)
You can now set the titlebar height anywhere from 14 to 32 pixels, which also
changes the button size:
You currently need to edit ~/.kde/share/config/kwinrc and set:
[Laptop]
TitleHeight=Some number between 14-32.
Then restart KWin (it's not in the options class yet). The default is still
a small titlebar.
Here's the shot I put up before with the default small titlebar:
http://www.mosfet.org/kwinlaptop.gif
Here's one with a larger titlebar (21 pixels):
http://www.mosfet.org/laptop-bigtitlebar.gif
svn path=/trunk/kdebase/kwin/; revision=44755
width. The issue here is I want to make the buttons as wide as possible for
laptop mice without having the titlebar be all buttons and no title ;-) My
solution so far is making the common buttons bigger and the uncommon ones
smaller. It's not consistent but let's me make the areas frequently hit
wide as hell, which is good for a laptop :) Close, iconify, and maximize are
larger - sticky and help are smaller.
Another updated shot is at:
http://www.mosfet.org/kwinlaptop.gif
svn path=/trunk/kdebase/kwin/; revision=44698
It features a reduced height taskbar with oversized width buttons (I may make
these even wider to make them easier to hit), a minimal frame, and a
oversized shaped resize handle. Uses the system KWin style buttons, not just
because I like them but because they fit in the reduced size bar ;-)
As usual, here's a screenshot:
http://www.mosfet.org/kwinlaptop.gif
On another note, the Be style is going away and is now replaced by B2. Be
needs work so I asked Matthias Ettrich about it (he's the maintainer of that
style), and it turns out he's already using B2 :)
svn path=/trunk/kdebase/kwin/; revision=44656