- Modifying the default style to use the new kwin plugin interface for proper
resource management.
- The new default style looks nearly the same, but adds several nice features
such as titlebar height and button position customisation among others,
and adds a config module for configuration.
- kwin plugin loader modified to reflect the new default plugin change. The
old default will be removed shortly.
- oh, and never ever flicker :)
svn path=/trunk/kdebase/kwin/; revision=100839
- Added missing stickyChange(bool) since this client was based on Quartz
- Minimised shade animation flicker (all unpainted areas are painted now)
- Code cleanup
- some other things I probably can't remember anymore :)
svn path=/trunk/kdebase/kwin/; revision=100352
- Uses its own config file "kwinquartzrc" not to clutter kwinrc
- Fixed an unpainted area problem when windows are shaded
svn path=/trunk/kdebase/kwin/; revision=100337
- When titlebutton pixmaps totally cover a toolbutton, they are
moved by a (1,1) offset when clicked so users have a visual prompt
that they are attempting to click the button. (i.e. for MGBreizh theme)
- Titlebar buttons follow isMinimizable() and isMaximizable() and
are hidden when not required
- Sticky button is drawn correctly now
- Made shading animation nice and smooth
svn path=/trunk/kdebase/kwin/; revision=98699
style to be. I don't like styles that let you resize by the top edge.
I want to be able to throw the mouse to the screen top or corners and
hit the buttons or the titlebar so I can iconify, close or move the
window.
svn path=/trunk/kdebase/kwin/; revision=97774
If you had shortened titlebar text, theme problems, or funny stuff with
the titlebar text for small windows, try this version.
Helix, BrushedMetal, ThinSki, Fire95 et al., should work perfect now.
All drawing is now buffered so there's no flicker - ever.
svn path=/trunk/kdebase/kwin/; revision=93891
increases/decreases. This makes small apps like the GIMP look much better,
and allows small windows to be shrunk much smaller than previously
allowed.
svn path=/trunk/kdebase/kwin/; revision=93712
The patch allows the modsystem handle to be shown / hidden, and
adds a config plugin for kwindecoration where this can be configured.
svn path=/trunk/kdebase/kwin/; revision=93544
init() called after client got loaded
deinit() called when client is about to get unloaded
reset() called once before Options::resetClients() is emitted
svn path=/trunk/kdebase/kwin/; revision=93372
Go and download some themes from icewm.themes.org! The client has customisable
button positions, and uses my newly added kwindecoration module to configure
its settings. Enjoy!!!
svn path=/trunk/kdebase/kwin/; revision=92316
According to him, okayed by Mosfet and Matthias Ettrich,
I add it now to get it in before the freeze as he's got no account (yet)
svn path=/trunk/kdebase/kwin/; revision=77435
In [WM] section of kdeglobals, add IconifyAnimationStyle=1 to see the
first new animation. (you should change wm style away from, then back
to, RISC OS, if you're already running it)
svn path=/trunk/kdebase/kwin/; revision=69144
enough for you to see them. Oh yes, the titlebar now changes size
with your font size. See http://www.geoid.clara.net/silly.jpg for
a (silly) example of this. This is in fact an essential feature
IMO, for people who can't read titlebar text at the restricted
sizes that the other styles allow.
New funky iconify animation, but I haven't made it available via
a config key yet, so you can't use it :P
svn path=/trunk/kdebase/kwin/; revision=69021
missing sometimes)
Added 'ToolManager' class. Still haven't found any apps that set
WStyle_Tool on any windows, so it's untested.
svn path=/trunk/kdebase/kwin/; revision=68501
button order on the titlebar, for the RISC OS theme at least.
I now have [Sticky][(Help)].....Title.......[Iconify][Maximise][Close].
Much more sensible than the stupid RISC OS layout.
svn path=/trunk/kdebase/kwin/; revision=67108
visible dialogs for stays-on-top fullscreen windows (helps with Konqueror's dialogs)
Fixed lock with Alt-Tab box plus accelerator
svn path=/trunk/kdebase/kwin/; revision=65241
+ button[1]->setBitmap(sticky_bits, 10, 10);
Fixes br 10156:
On the desktop, I right-click the title bar of a window and select the KStep
decoration. Then I click on the `+'' titlebar button to pin the window on all desks.
The button turns empty. I click again to unpin the window, and, instead
of showing the usual `+'', I get a corrupted button pixmap.
svn path=/trunk/kdebase/kwin/; revision=63501
The class still duplicates too much functionality of the base class (Client).
IMO the ResizeBar widgets have to go, it can all be done by painting directly
on the main Manager.
svn path=/trunk/kdebase/kwin/; revision=59127
Changed spaces to tab for ettrich in client.cpp ;)
Changed something that looked like it was trying to do manhattanLength()
so it actually does.
svn path=/trunk/kdebase/kwin/; revision=49144
everything else. kwin assumes you want it to mess with the cursor, and
provide edge-based resize etc. You can't override it easily. In fact,
I still haven't found out how.
svn path=/trunk/kdebase/kwin/; revision=49114
* 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
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
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
It uses Be-like shaped titlebars, KDE standard buttons, has a shaped resize
handle, and automatically detects if you are on a highcolor display and if so
uses gradients based off the current color scheme. BTW, the buttons don't
necessarily match the titlebar but use the button foreground setting in KDE's
display settings so you can change them to whatever you like.
If no one objects I'll probably disable the old Be style. Unlike this style it
uses Be-like buttons but the drawing isn't very fancy and Be's two buttons are
a big restriction in KDE.
You can see a screenshot at:
http://www.mosfet.org/b2kwin.gif
svn path=/trunk/kdebase/kwin/; revision=44420
smaller than the sizeHint of the bar.
Repainting is also messed up with all the clients it seems... dunno how that
happened :P
svn path=/trunk/kdebase/kwin/; revision=43873
today.
First: All decoration pixmaps are now regenerated when the palette color scheme
changes. There is no longer any need to apply color schemes *before* switching
styles or reload the plugin. The schemes can change any time and be handled
correctly by styles that generate their pixmaps based on the color scheme.
Second: The color scheme has been extended to allow separate entries for
different visual styles. For example there are now entries for both titlebar
rectangle fills like those used in the standard KDE style and KStep vs.
titlebar grooves like those used in System. The same thing applies to
foreground colors for buttons that follow the button background settings like
KStep and System vs. those that don't like the standard style.
Right now none of the color schemes have the new entries so defaults are
calculated, usually by judging the intensity of what the decoration is
drawn on and contrasted with that. To check things out look at the standard,
KStep, and System styles under color schemes like default, CDE, and Digital
CDE.
The Be style is not updated because I have a cooler one on my HD ;-)
I hope this makes David happier <grin> :)
svn path=/trunk/kdebase/kwin/; revision=39126
top and bottom automatically gradient bevels according to the color scheme.
Very cool looking, and no configuration required. If you want to see a pic
look at http://www.mosfet.org/system-gr.gif.
To try it out update, set the system color scheme, and the switch to the System
style via the right mouse menu on the kwin titlebar.
svn path=/trunk/kdebase/kwin/; revision=39064
compatible style. This isn't done but currently reads most of the entries. It
requires you use kwinrc and kdeglobals so kthememgr will need to be updated if
you don't want to apply things manually ;-) I also have to add custom cursor
positioning and some other small things. Also, KWM used a bitmap to set the
mask and I do for now as well. This needs to change into regions as it is
*really* inefficent with KWin. For now installing the .desktop for the plugin
is disabled. I will provide some screenshots for the curious when I launch
mosfet.org ;-)
svn path=/trunk/kdebase/kwin/; revision=37503
and it kept segfaulting because I wasn't releasing windows, and b) The plugins
didn't want to resolve anything in the kwin executable, only to the other
libs. I finally solved this by using -rdynamic in kwin's LDFLAGS, which I hope
is okay ;-)
svn path=/trunk/kdebase/kwin/; revision=37234