qdrawutil.h doesn't seem to have a purely Qt4-style equivalent, so including the directory there disambiguates it from the Qt3 header.
svn path=/trunk/KDE/kdebase/workspace/; revision=770116
being v2+ (right now it says just GPL, which according to GPL itself
means any GPL). Decoration clients will come later.
CCMAIL: kwin@kde.org
svn path=/trunk/KDE/kdebase/workspace/; revision=742302
by not loading the support libraries and the complete kdelibs stack it depends
on. Gdb taking 0.5M and lousy handling of near-OOM in Linux kernel
can be a pretty bad combination :(.
svn path=/trunk/KDE/kdebase/workspace/; revision=741856
window, but I don't think it really works these days, and it's probably
also not useful at all.
svn path=/trunk/KDE/kdebase/workspace/; revision=689949
actually kept mapped, so that they still have the backing pixmap.
Plus some small tricks to prevent such windows from interfering.
Only two basic modes are implemented right now.
svn path=/trunk/KDE/kdebase/workspace/; revision=683156
r645397 | lunakl | 2007-03-22 15:27:04 +0100 (Thu, 22 Mar 2007) | 4 lines
Suspend updating of window-specific settings during shutdown,
so that KWin doesn't have to be killed as the first one during shutdown.
svn path=/trunk/KDE/kdebase/workspace/; revision=659567
r613271 | lunakl | 2006-12-13 19:29:43 +0100 (Wed, 13 Dec 2006) | 3 lines
Don't move a group transient with a group set to another group.
svn path=/trunk/KDE/kdebase/workspace/; revision=659475
r603295 | lunakl | 2006-11-08 14:59:27 +0100 (Wed, 08 Nov 2006) | 6 lines
Ok, with a compositing manager running, VisibilityNotify no longer
considers windows not visible just because a window is above them,
so the code from r198017 no longer works.
(#128648)
svn path=/trunk/KDE/kdebase/workspace/; revision=659308
KShellProcess -> K3ShellProcess
KProcIO -> K3ProcIO
KProcessController -> K3ProcessController
not deprecating, as we don't have a replacement yet.
not moving yet, as kdelibs still has heavy dependencies on it.
agreed upon with dfaure.
svn path=/trunk/KDE/kdebase/workspace/; revision=646732
change slides the old desktop out and the new one in. Should not
be really technically different from the cube.
svn path=/branches/work/kwin_composite/; revision=629163
instances and keeping them around after the window is closed, create
class Deleted as a representation of a closed window.
svn path=/branches/work/kwin_composite/; revision=626356
considers windows not visible just because a window is above them,
so the code from r198017 no longer works.
(#128648)
svn path=/trunk/KDE/kdebase/workspace/; revision=603295
work in the work/kwin_composite branch.
svn merge revs 558154,558180,558236,558243,558258,562201
svn path=/trunk/KDE/kdebase/workspace/; revision=571776
besides drawing what should be drawn anyway, and there are
still some things missing like stacking order for override
redirect windows, but KWin is basically a compositing manager now.
svn path=/branches/work/kwin_composite/; revision=558168
If you want KWin to obey the app's idea of what fullscreen geometry might be
just force obeying strict geometry in the workarounds tab in window-specific
settings.
svn path=/trunk/KDE/kdebase/workspace/; revision=514433
svn+ssh://coolo@svn.kde.org/home/kde/branches/work/kde4/kdebase
.
I couldn't resolve one kicker conflict that results from different
development directions, so I rely on Aaron to sort it out - the file
is commited with conflicts
svn path=/trunk/KDE/kdebase/kwin/; revision=439627
This time at least the code should detect properly all attempts
to use shaded geometry when the normal one is needed.
BUG: 96602
svn path=/trunk/KDE/kdebase/kwin/; revision=425377
This fixes comment #10 in 96602, I don't know if it fixes as a whole,
but I'm quite sure people will complain again if not.
BUG: 96602
svn path=/trunk/KDE/kdebase/kwin/; revision=423512
it manually all the time using setGeometry( geometry()).
Needed for getting geometry of the damn shaded windows right
finally.
svn path=/trunk/KDE/kdebase/kwin/; revision=423506
to also set some things only temporarily. E.g. in order
to set skiptaskbar flag on a window, it's just
Alt+F3/Advanced/Special Window Settings/Preferences ->
Apply Now for Skip taskbar, and turn on the checkbox.
svn path=/trunk/KDE/kdebase/kwin/; revision=423112
People who use hidden Kicker, have their taskbar configured to show
only windows on the current desktop or similar now may configure
it so that windows that didn't get focus because of focus stealing
prevention now can not only have their taskbar entry marked
but there can be e.g. also a passive popup.
svn path=/trunk/KDE/kdebase/kwin/; revision=419727
type means anyway, let's simply consider it to be a legacy way of saying "noborder"
and nothing more.
svn path=/trunk/KDE/kdebase/kwin/; revision=412372
possible to always have certain shortcuts assigned to their windows
if such windows are open. Still few TODO items left, but let's consider
it enough for #44268 to be marked as done.
FEATURE: 44268
svn path=/trunk/kdebase/kwin/; revision=379444
that's not exact multiple of its resize increments. Selecting obeying
strict geometry in window-specific settings makes KWin avoid this.
Maximization then doesn't work very well indeed, but one cannot please
everybody, and the bug is in xterm after all.
BUG: 94183
svn path=/trunk/kdebase/kwin/; revision=379401
rules for them to be assigned automatically, and some way to indicate
every window's shortcut, but it more or less works.
svn path=/trunk/kdebase/kwin/; revision=375458
what to do with it. I've never liked this hack much, and this should
also take care of #49375, and should make sure kstart options will
have higher priority than settings configured in kwin.
svn path=/trunk/kdebase/kwin/; revision=319662
Initial work on kwin rules, i.e. #36377 , per window specific settings.
So far only desktop/above/below work, no GUI, and settings from the old
'Save window settings' are ignored for now.
svn path=/trunk/kdebase/kwin/; revision=315446
workaround, don't make their user timestamp newer than the active window's
one (unless a real user activity takes place in them).
As they are belong to the active application and just fail to say so,
this makes sure they won't prevent that application from getting focus
by having newer timestamp. E.g. Alt+F2, typing URL, kio_uiserver dialog
shows (has workaround), SSL certificate dialog shows (shown by kdesktop),
and it wouldn't get focus, because kio_uiserver's timestamp would be later.
svn path=/trunk/kdebase/kwin/; revision=298357
reportedly improves move/resize performance on some systems
for some reason which I fail to see, but oh well.
(http://lists.kde.org/?t=107302193400001&r=1&w=2)
svn path=/trunk/kdebase/kwin/; revision=293755
on the whole group, so that the possible 'close?' dialog has a recent
timestamp even if the window about to be closed wasn't active.
svn path=/trunk/kdebase/kwin/; revision=291859
Qt3.3 capitalizes it (part of my own patch IIRC, hehe :-/), so all
the workarounds for specific apps no longer work -> force resource class
to be always lowercase.
svn path=/trunk/kdebase/kwin/; revision=290521
extended here, ask Lubos why :>). This patch also includes workaround
for kicker (in its current state, without extended-strut support), so it
works in xinerama setups as expected. Thanks go to Lubos for help with
implementation and for review.
svn path=/trunk/kdebase/kwin/; revision=288758
only if there's no menubar active. Helps Fredrik to have the menu shadow
exactly in the color he wants :).
svn path=/trunk/kdebase/kwin/; revision=273185
but at least now the code doesn't look like uncommented random something.
And who knows, maybe I even fixed it ;).
CCMAIL: staikos@kde.org
What the hell does "Show unmanaged windows on:" mean in the kcm dialog?
svn path=/trunk/kdebase/kwin/; revision=257723
do so, if size constraints allow it.
If resizing a window would make it get partially out of workarea,
move it so that it stays in workarea.
svn path=/trunk/kdebase/kwin/; revision=255616
where the it's transient therefore it's a dialog assumption is not true
often enough for this to be annoying.
svn path=/trunk/kdebase/kwin/; revision=255614
the focus and just are there. Therefore, as a part of focus stealing
prevention, let's also block raising of windows. Also added special
request for Kicker, as taskbar requests for raising should be obeyed.
(Not that this does anything to KPassivePopup.)
svn path=/trunk/kdebase/kicker/taskmanager/; revision=255070
and frame events, it's not necessary to handle them specially
there. Also move DestroyNotify handling to windowEvent().
svn path=/trunk/kdebase/kwin/; revision=252355
Since Qt propagates mouse events up the widget hierarchy, it's better
to filter out Qt events rather than X events for the decoration.
svn path=/trunk/kdebase/kwin/; revision=252346
No need to this duplication of Client::desk == NET::OnAllDesktops.
It's simple, desk == NET::OnAllDesktops - sticky
desk == 0 - not mapped yet
desk something else - the desktop the window is on
svn path=/trunk/kdebase/kwin/; revision=196529
Introduced Client::isDialog() and Client::isNormalWindow() checking
for NET::Dialog and NET::Normal, including NET::Unknown and workaround
for Qt<3.1 not setting NET::Dialog.
svn path=/trunk/kdebase/kwin/; revision=181308
Prefix all the #ifndef #define ... #endif symbols with KWIN_ , just in case
somebody uses CLIENT_H or so too.
And don't include config.h .
svn path=/trunk/kdebase/kwin/; revision=168940
happens triggered by a kdesktop bug on David Faure's machine).
You can now launch additional desktop applications with
kstart --type Desktop konqueror
or
kstart --type Desktop konsole
and toggle between them with
dcop kwin default circulateDesktopApplications
svn path=/trunk/kdebase/kwin/; revision=140330
Explicitly note in the headers that the classes have to keep BC ( after KDE2.2 ).
Fixed index in walking through desktops.
svn path=/trunk/kdebase/kwin/; revision=101972
by style plugins ( KWin has to keep BC for these ). I hope these are
all classes that need it.
And of course, this change is not binary compatible, but it fortunately
doesn't matter much for KWin these days.
svn path=/trunk/kdebase/kwin/; revision=90127
It's actually a derived class, but we can safely static_cast it back
to NETWinInfo. Makes it easier for clients to use it.
svn path=/trunk/kdebase/kwin/; revision=67689
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
#6808: selecting a "Decoration" by right-clicking on a window de-iconify windows.
#7983: SHIP STOPPER: kwin - titlebars get <2> after the name of the application when changing decorations
Reviewed by gis.
svn path=/trunk/kdebase/kwin/; revision=63563
- support for WM_COMMAND pseudo session management (xterm and friends)
- basic support for private colormaps, useful on the last remaining 8bit displays
svn path=/trunk/kdebase/kwin/; revision=62239
- adjust to workarea changes
- not movable or resizable
- not show vertical borders if not necessary
- new default style: middle mouse and right mouse for maximize button
- now resize mouse cursors if the window is not resizable
svn path=/trunk/kdebase/kwin/; revision=61240
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
/*!
Different focus policies:
<ul>
<li>ClickToFocus - Clicking into a window activates it. This is
also the default.
<li>FocusFollowsMouse - Moving the mouse pointer actively onto a
normal window activates it. For convenience, the desktop and
windows on the dock are excluded. They require clicking.
<li>FocusUnderMouse - The window that happens to be under the
mouse pointer becomes active. The invariant is: no window can
have focus that is not under the mouse. This also means that
Alt-Tab won't work properly and popup dialogs are usually
unsable with the keyboard. Note that the desktop and windows on
the dock are excluded for convenience. They get focus only when
clicking on it.
<li>FocusStrictlyUnderMouse - this is even worse than
FocusUnderMouse. Only the window under the mouse pointer is
active. If the mouse points nowhere, nothing has the focus. If
the mouse points onto the desktop, the desktop has focus. The
same holds for windows on the dock.
Note that FocusUnderMouse and FocusStrictlyUnderMouse are not
particulary useful. They are only provided for old-fashined
die-hard UNIX people ;-)
</ul>
*/
FocusPolicy=ClickToFocus | FocusFollowsMouse | FocusUnderMouse | FocusStrictlyUnderMouse
/**
Different Alt-Tab-Styles:
<ul>
<li> KDE - the recommended KDE style. Alt-Tab opens a nice icon
box that makes it easy to select the window you want to tab
to. The order automatically adjusts to the most recently used
windows. Note that KDE style does not work with the
FocusUnderMouse and FocusStrictlyUnderMouse focus
policies. Choose ClickToFocus or FocusFollowsMouse instead.
<li> CDE - the old-fashion CDE style. Alt-Tab cycles between
the windows in static order. The current window gets raised,
the previous window gets lowered.
</ul>
*/
AltTabStyle=KDE | CDE
svn path=/trunk/kdebase/kwin/; revision=54010
pasted everything from kwm. It works.
However, I don't know if this fits the new design or not. Maybe some
of the functions are accomplished elsewhere? I think Matthias needs
to take a look at this...
But like I said, it does work :-)
svn path=/trunk/kdebase/kwin/; revision=49849
which is called at the same places.
Mosfet: This is necessary because we are converting to not use QLayout
in clients. Without this, you can't get the right size for your windows.
Just implement it in your client and do your layout in it (surprise, eh ?)
svn path=/trunk/kdebase/kwin/; revision=49143
* 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
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
"Mouse emulation" (defaults to F12 currently) provides mouse emulation with
[Ctrl|Alt]-ArrowKeys. Unfortunatly, dragging isn't (technically) possible with
X, but at least normal clicks work with Space or Return.
svn path=/trunk/kdebase/kwin/; revision=35919