Rivo Laks
02032f8587
Move most (all?) internal methods from EffectsHandler to EffectsHandlerImpl.
...
The ugly side effect of this is that there are tons of static_casts in the code now... maybe it
would be better to add effectImpl() convenience method and use that?
svn path=/branches/work/kwin_composite/; revision=652348
2007-04-10 18:47:13 +00:00
Luboš Luňák
2c928221a4
namespace KWinInternal -> KWin - shorter typing of names in gdb, yay
...
svn path=/trunk/KDE/kdebase/workspace/; revision=650773
2007-04-05 12:12:10 +00:00
Luboš Luňák
e3b865cd5f
namespace KWinInternal -> KWin - shorter typing of names in gdb, yay
...
svn path=/branches/work/kwin_composite/; revision=650770
2007-04-05 12:07:35 +00:00
Luboš Luňák
35bbf89aed
Add support for activating features using window borders/corners.
...
Enabled it for PresentWindowsEffect for now.
svn path=/branches/work/kwin_composite/; revision=650532
2007-04-04 19:08:03 +00:00
Luboš Luňák
3617d1bf8a
Merge r649608, r649403, r649230 and r648582 from trunk (porting).
...
svn path=/branches/work/kwin_composite/; revision=649948
2007-04-03 13:24:05 +00:00
Luboš Luňák
10ea80a963
KWin/KWinModule -> KWM
...
svn path=/trunk/KDE/kdebase/workspace/; revision=649608
2007-04-02 21:30:50 +00:00
Luboš Luňák
8b5b40e4e8
Shadows. Right not it's only flat black rectangle, but otherwise
...
everything should work.
svn path=/branches/work/kwin_composite/; revision=646315
2007-03-25 10:48:07 +00:00
Luboš Luňák
f6ad1881e1
Support for window thumbnails.
...
svn path=/branches/work/kwin_composite/; revision=640344
2007-03-07 17:50:33 +00:00
Luboš Luňák
4019dff500
Distinguish between damage and repaints - damage is when windows contents
...
change, repaint just triggers repaint of the area (without e.g. the texture
updating for OpenGL).
addDamage() -> addRepaint()
CCMAIL: kwin@kde.org
svn path=/branches/work/kwin_composite/; revision=632866
2007-02-12 15:22:43 +00:00
Luboš Luňák
559f90a06a
Damage also new position after moving.
...
svn path=/branches/work/kwin_composite/; revision=632609
2007-02-11 18:46:50 +00:00
Philip Falkner
ca856c28e1
Fix compositing repaint bug where moving a window would not draw properly (especially noticeable when snapping to a border).
...
svn path=/branches/work/kwin_composite/; revision=632339
2007-02-10 18:28:04 +00:00
Luboš Luňák
4e20ef71e4
r629143 was supposed to go to trunk, kwin_composite is only for compositing work.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=629362
2007-02-02 14:24:00 +00:00
Dirk Mueller
b34d4ac7c4
xrandr support (hopefully this compiles, can't test here)
...
svn path=/branches/work/kwin_composite/; revision=629143
2007-02-01 15:39:44 +00:00
Luboš Luňák
7cb649edcb
Tell scene about size changes.
...
svn path=/branches/work/kwin_composite/; revision=628606
2007-01-30 16:49:08 +00:00
Luboš Luňák
0ae5a772e7
Add EffectWindow as a window representation for effects,
...
to hide the change from Client/Unmanaged and eventually also
act as the only API available to effects.
svn path=/branches/work/kwin_composite/; revision=626360
2007-01-22 22:57:22 +00:00
Michel Hermier
0fdc6c4469
#625468 ported to KDE4
...
svn path=/trunk/KDE/kdebase/workspace/; revision=625469
2007-01-20 09:56:57 +00:00
Luboš Luňák
ab8d845718
Reset compositing on XRandr changes to react on screen
...
size or refresh rate changes, patch by Philip Falkner.
svn path=/branches/work/kwin_composite/; revision=610114
2006-12-03 13:29:57 +00:00
Luboš Luňák
b1ce5309a3
Configure mouse to the screen when doing move/resize.
...
BUG: 88506
svn path=/trunk/KDE/kdebase/workspace/; revision=608815
2006-11-28 14:15:38 +00:00
Luboš Luňák
951448b575
Try to reduce damage caused by window moving.
...
svn path=/branches/work/kwin_composite/; revision=606266
2006-11-19 20:08:56 +00:00
Luboš Luňák
09781249b9
Name the class used to postpone geometry changes also Blocker,
...
to be consistent with the one used for stacking changes.
svn path=/branches/work/kwin_composite/; revision=606262
2006-11-19 20:04:31 +00:00
Luboš Luňák
3f46d36bb9
Add convenience functions for damaging full area.
...
svn path=/branches/work/kwin_composite/; revision=598834
2006-10-24 19:28:17 +00:00
Luboš Luňák
b168c35384
Don't cache window pixmap, it's used only after it
...
changes.
svn path=/branches/work/kwin_composite/; revision=593453
2006-10-07 21:20:23 +00:00
Luboš Luňák
06203d0652
Don't bother with trying to transform window damage,
...
when there are any transformations, it should simply
repaint everything (todo).
svn path=/branches/work/kwin_composite/; revision=593450
2006-10-07 21:18:36 +00:00
Luboš Luňák
649887d6c2
Looks like using XserverRegion for keeping damage regions
...
wasn't that good idea. Changed to QRegion.
svn path=/branches/work/kwin_composite/; revision=590648
2006-09-30 15:40:03 +00:00
Luboš Luňák
fa8cd7541f
It wasn't a very good idea to do even compositing-unrelated
...
work in the work/kwin_composite branch.
svn merge revs 558154,558180,558236,558243,558258,562201
svn path=/trunk/KDE/kdebase/workspace/; revision=571776
2006-08-10 17:00:14 +00:00
Luboš Luňák
293f093ea1
Support for input shape from XShape1.1 ( #122425 ).
...
svn path=/trunk/KDE/kdebase/workspace/; revision=571712
2006-08-10 13:15:16 +00:00
Luboš Luňák
e24815411a
Keep damage info separately for every window.
...
svn path=/branches/work/kwin_composite/; revision=561966
2006-07-13 18:17:49 +00:00
Luboš Luňák
0516e1e73b
Add support for translation and add two "plugins" that
...
make windows transparent or shake them while moving.
svn path=/branches/work/kwin_composite/; revision=559013
2006-07-06 13:17:44 +00:00
Luboš Luňák
f400646a6d
xrender compositing work - now it uses damage areas
...
to reduce amount of painting
svn path=/branches/work/kwin_composite/; revision=558580
2006-07-05 16:04:11 +00:00
Luboš Luňák
f4f07d4fd3
Remove kompmgr-related code except for the generic parts like
...
the slider in Alt+F3.
svn path=/branches/work/kwin_composite/; revision=558258
2006-07-04 23:30:05 +00:00
Luboš Luňák
4f12c1e606
Some first attempt at effects interface.
...
svn path=/branches/work/kwin_composite/; revision=558191
2006-07-04 20:51:01 +00:00
Luboš Luňák
571ba9cf9e
Basic compositing support. It doesn't actually do anything
...
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
2006-07-04 20:02:07 +00:00
Luboš Luňák
e0dcc3ba46
Some convenience functions for QX11Info stuff.
...
svn path=/branches/work/kwin_composite/; revision=558154
2006-07-04 19:36:19 +00:00
Luboš Luňák
5646eafb33
Do the miscalculated-place-at-the-same-position hack only
...
if it comes from an application.
svn path=/trunk/KDE/kdebase/workspace/; revision=548841
2006-06-06 15:56:43 +00:00
Luboš Luňák
d3b5bf8a68
Size can be empty during attempted resize, avoid the warning.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=546265
2006-05-29 16:00:19 +00:00
Thorsten Roeder
e000f78091
fixing some EBN issues
...
svn path=/trunk/KDE/kdebase/workspace/; revision=542916
2006-05-20 15:56:37 +00:00
Laurent Montel
5725624c8b
#include <q...h> -> #include <Q...>
...
svn path=/trunk/KDE/kdebase/workspace/; revision=540496
2006-05-13 16:33:18 +00:00
Luboš Luňák
7f04417ad5
One more of "When a window resizes, first try to keep it inside its xinerama screen."
...
svn path=/trunk/KDE/kdebase/workspace/; revision=528602
2006-04-11 13:47:32 +00:00
Luboš Luňák
21644ee234
I hate backwards compatibility.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=527752
2006-04-09 09:40:21 +00:00
Luboš Luňák
f9a6c6c9ba
So this is why fullscreening on xinerama is so random ... reverting r423736.
...
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
2006-02-28 13:03:31 +00:00
Luboš Luňák
c4e72833fe
When a window resizes, first try to keep it inside its xinerama screen.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=513048
2006-02-24 10:36:03 +00:00
Luboš Luňák
cfb1b5e42d
Handle struts set by panels that are at xinerama edges that
...
are inside the virtual area.
svn path=/trunk/KDE/kdebase/workspace/; revision=511696
2006-02-20 17:41:13 +00:00
Luboš Luňák
10775a9763
ScreenArea is supposed to be without struts.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=511672
2006-02-20 16:48:48 +00:00
Luboš Luňák
b9f3db77d4
Dump the hack that tries to guess partial xinerama-aware struts from the old ones.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=511660
2006-02-20 16:18:18 +00:00
Allen Winter
ae65a40c7a
TRUE->true, FALSE->false
...
svn path=/trunk/KDE/kdebase/workspace/; revision=511180
2006-02-19 01:33:48 +00:00
Allen Winter
441523a689
Replace obsolete QMAX() and QMIN() with qMax() and qMin().
...
svn path=/trunk/KDE/kdebase/workspace/; revision=510739
2006-02-17 21:54:55 +00:00
Luboš Luňák
406c89a8b2
Fix setting of minsize used in Client::sizeForClientSize()
...
if base size is set and minsize is not (#121968 ).
svn path=/trunk/KDE/kdebase/workspace/; revision=509609
2006-02-15 09:53:06 +00:00
Laurent Montel
0fa10f318d
Deprecated--
...
svn path=/trunk/KDE/kdebase/workspace/; revision=506323
2006-02-06 14:47:18 +00:00
Eike Hein
0aeabb9550
Forward-port r494303 from 3.5 branch.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=494311
2006-01-04 16:16:26 +00:00
Stephan Kulow
6c821aba01
some more compiling
...
svn path=/trunk/KDE/kdebase/workspace/; revision=473006
2005-10-22 11:35:06 +00:00
Luboš Luňák
7abacfa2fb
When just adjusting maximized state e.g. because of workarea changes,
...
don't destroy data about restoring back.
svn path=/trunk/KDE/kdebase/kwin/; revision=449976
2005-08-17 09:34:00 +00:00
Eike Hein
b5ff06d5f8
Backport svn commit 449791
...
svn path=/trunk/KDE/kdebase/kwin/; revision=449793
2005-08-16 18:41:06 +00:00
Luboš Luňák
3ec72118f2
Some fixes for placement code, so that e.g. placing a dialog
...
on its mainwindow also still maximizes it if maximizing placement
policy is used.
svn path=/trunk/KDE/kdebase/kwin/; revision=444048
2005-08-08 14:25:41 +00:00
Stephan Kulow
b464518b3c
svn merge svn+ssh://coolo@svn.kde.org/home/kde/trunk/KDE/kdebase@438057
...
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
2005-07-28 14:59:42 +00:00
Luboš Luňák
30cab17748
Another final attempt at sorting out the shaded geometry problems.
...
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
2005-06-14 15:35:44 +00:00
Fred Emmott
b10e8e559b
Improved support for xinerama-fullscreen apps
...
svn path=/trunk/KDE/kdebase/kwin/; revision=423736
2005-06-09 14:40:36 +00:00
Luboš Luňák
da00272012
An attempt to get the crazy shaded windows geometry handling right.
...
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
2005-06-08 18:07:27 +00:00
Luboš Luňák
5587e43337
Fix last commit.
...
svn path=/trunk/KDE/kdebase/kwin/; revision=423507
2005-06-08 17:32:19 +00:00
Luboš Luňák
8ef2a46218
Use functions for postponing geometry updates, rather doing
...
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
2005-06-08 17:16:53 +00:00
Luboš Luňák
90b92dd290
Temporarily block geometry while (re)setting fullscreen mode, otherwise
...
updateDecoration() can cause resizing and changing the maximize state.
BUG: 106019
svn path=/trunk/KDE/kdebase/kwin/; revision=417304
2005-05-23 11:43:29 +00:00
Luboš Luňák
e4c84f39e4
Fix usage of PBaseSize and PMinSize in size hints. Makes geometry tip
...
show proper size for xterm.
svn path=/trunk/KDE/kdebase/kwin/; revision=415390
2005-05-18 13:59:59 +00:00
Luboš Luňák
4bc13d6293
Oops, fix #80545 .
...
svn path=/trunk/KDE/kdebase/kwin/; revision=414893
2005-05-17 08:38:14 +00:00
Luboš Luňák
ced5ab580a
Die, window type override, die! Since nobody really knows what this window
...
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
2005-05-11 14:20:54 +00:00
Luboš Luňák
2322833673
Try to avoid resizing windows due to workarea changes.
...
BUG: 80545
svn path=/trunk/KDE/kdebase/kwin/; revision=409244
2005-05-04 12:14:34 +00:00
Luboš Luňák
de67ff5bad
Update geometry also of NET::Desktop windows e.g. on xrandr resolution changes.
...
BUG: 103586
svn path=/trunk/kdebase/kwin/; revision=404767
2005-04-11 11:43:20 +00:00
Luboš Luňák
e808718c0a
Prefer keeping fixed width when keeping aspect ratio.
...
BUG: 87298
svn path=/trunk/kdebase/kwin/; revision=393796
2005-02-28 13:44:19 +00:00
Thomas Lübking
90e5b03c31
BUGS:99832
...
BUGS:99833
BUGS:93380
kompmgr now should get proper window shapes, removing several artefact bugs
just swapping two lines in this file
svn path=/trunk/kdebase/kwin/; revision=393629
2005-02-27 20:49:13 +00:00
Thomas Lübking
05eda26865
added support for unshadowed moving windows, slight changes to updates on shapable windows
...
svn path=/trunk/kdebase/kwin/; revision=383513
2005-01-28 23:28:11 +00:00
Thomas Lübking
2e82e1fc66
[kompmgr] added option to remove shadows on resizes
...
svn path=/trunk/kdebase/kwin/; revision=380837
2005-01-21 16:15:05 +00:00
Luboš Luňák
ded2f457b8
Workaround for xterm not coping well with being maximized to a geometry
...
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
2005-01-17 13:35:48 +00:00
Thomas Lübking
8ad47028f6
Added composite (translucency/shadows) support
...
svn path=/trunk/kdebase/kwin/; revision=378790
2005-01-15 17:07:48 +00:00
Luboš Luňák
ded2656b03
If a window has configured a specific position using window-specific settings,
...
don't force it to be entirely in the workarea, as long as at least something
is still visible.
svn path=/trunk/kdebase/kwin/; revision=370319
2004-12-13 11:40:25 +00:00
Luboš Luňák
bb9b3a94c6
Shading fixes. This should also take care of #91615 .
...
BUG: 91615
svn path=/trunk/kdebase/kwin/; revision=367240
2004-11-29 18:46:04 +00:00
Luboš Luňák
ca061ffb57
If a window is resized manually to geometry equal to workspace size,
...
make it automatically also maximized.
svn path=/trunk/kdebase/kwin/; revision=362476
2004-11-12 17:13:16 +00:00
Luboš Luňák
816f3bd86e
Force updating electric borders on resize change.
...
BUG:92583
svn path=/trunk/kdebase/kwin/; revision=359883
2004-11-02 15:19:01 +00:00
Luboš Luňák
f1145f7bd8
Apply values for 'force' rules to existing windows immediately after
...
they're created (#89849 ).
svn path=/trunk/kdebase/kwin/; revision=354752
2004-10-15 14:29:47 +00:00
Luboš Luňák
4e52fbebdc
With transparent moving/resizing, make sure the outline is not larger
...
than the window (#88567 ).
svn path=/trunk/kdebase/kwin/; revision=348501
2004-09-22 15:09:42 +00:00
Luboš Luňák
1fdde5f129
Ok, it seems there are actually people who really want maximized windows
...
to be unmovable, and not just have borders hidden in such case (#86847 ).
Also hacked around the technical problems with maximized windows
not being resizeable and therefore not being considered (un)maximizable.
svn path=/trunk/kdebase/kwin/; revision=341290
2004-08-26 10:34:10 +00:00
Luboš Luňák
e8f6eceba9
Don't resize windows in fullscreen mode.
...
CCMAIL: 86948-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=338316
2004-08-16 13:59:51 +00:00
Luboš Luňák
20bb0e462c
Ignore resize increments and aspect ratios when a window is maximized.
...
CCMAIL: 86320-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=338314
2004-08-16 13:58:00 +00:00
Luboš Luňák
001646f3d8
Really fix MPlayer. It's nice to see people trust me and nobody has
...
actually tested MPlayer.
svn path=/trunk/kdebase/kwin/; revision=335441
2004-08-03 09:21:18 +00:00
Luboš Luňák
9ca3abced6
Don't force being inside workarea if the window wasn't inside before.
...
svn path=/trunk/kdebase/kwin/; revision=334132
2004-07-30 12:01:43 +00:00
George Staikos
8694e51361
trigraph removed
...
svn path=/trunk/kdebase/kwin/; revision=333257
2004-07-27 14:47:26 +00:00
Luboš Luňák
5979a50bb6
Detect fullscreen hack state even while mapped (MPlayer).
...
svn path=/trunk/kdebase/kwin/; revision=333175
2004-07-27 08:36:28 +00:00
Luboš Luňák
71224efa77
Better add a remainder for that.
...
svn path=/trunk/kdebase/kwin/; revision=331402
2004-07-21 08:59:18 +00:00
Luboš Luňák
0eb5c0f87f
Fix #85562 .
...
The 'allow moving/resizing of maximized windows' should be renamed
to something like 'hide borders for maximized windows'.
svn path=/trunk/kdebase/kwin/; revision=331401
2004-07-21 08:58:17 +00:00
Luboš Luňák
58e12da8b7
#53420 - don't let normal windows go out of the workarea if they request
...
it.
svn path=/trunk/kdebase/kwin/; revision=329883
2004-07-16 11:25:07 +00:00
Luboš Luňák
afb63436c5
Even if a window is maximized, it doesn't necessarily mean it can be
...
always un-maximized.
CCMAIL: 84743-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=329099
2004-07-14 11:49:30 +00:00
Luboš Luňák
89eff51153
I give up with #75436 .
...
svn path=/trunk/kdebase/kwin/; revision=325314
2004-07-02 11:41:25 +00:00
Dominik Haumann
aa98f268bc
Fix: snap on resize snapped by 1px wrong on the right and bottom.
...
Now it works perfectly with all client windows including the desktop.
CCMAIL: 45805@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=323630
2004-06-25 20:26:15 +00:00
Luboš Luňák
5acf67728a
The mysterious Override window type strikes once again.
...
svn path=/trunk/kdebase/kwin/; revision=323538
2004-06-25 12:11:28 +00:00
Luboš Luňák
6e44fc30b8
Autosave for window rules.
...
svn path=/trunk/kdebase/kwin/; revision=319665
2004-06-11 15:12:29 +00:00
Luboš Luňák
6e34bc5e8a
KWin rules for making windows noncloseable, and for changing moveresize
...
mode.
svn path=/trunk/kdebase/kwin/; revision=318994
2004-06-09 08:33:53 +00:00
Luboš Luňák
ecb4f83baa
Another interesting xmms "feature".
...
CCMAIL: 79499-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=318449
2004-06-07 12:15:36 +00:00
Luboš Luňák
03bdeb94b0
KWin rules setting maximizevert, maximizehoriz, minimize, shade, skiptaskbar,
...
skippager, fullscreen, noborder.
svn path=/trunk/kdebase/kwin/; revision=317377
2004-06-03 14:09:45 +00:00
Cristian Tibirna
05c003dd28
window and border snapping during resize operations.
...
Patch contributed by Christopher Suleski (linux from tildewave com): http://bugs.kde.org/show_bug.cgi?id=45805
Many thanks, Christopher.
Code inspected by Lubos Lunak.
Reviewed, slightly adapted and tested by me.
CCMAIL: 45805-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=317353
2004-06-03 12:36:57 +00:00
Luboš Luňák
7eadd6463f
KWin rules - position and size.
...
Forcing position doesn't work yet, and forcing size needs more testing.
svn path=/trunk/kdebase/kwin/; revision=316414
2004-05-31 14:25:25 +00:00
Luboš Luňák
a114e9acc3
KWin rules - override minsize/maxsize.
...
svn path=/trunk/kdebase/kwin/; revision=316413
2004-05-31 14:15:33 +00:00
Luboš Luňák
b5181ba7f8
No longer necessary to eat paint events during transparent move/resize ?
...
http://lists.kde.org/?l=kwin&m=108523300632332&w=2
svn path=/trunk/kdebase/kwin/; revision=314043
2004-05-24 09:15:40 +00:00
Xavier Izard
ab428d9ab0
Patch for xinerama mode to allow fullscreens both on one or several screen(s)
...
svn path=/trunk/kdebase/kwin/; revision=310202
2004-05-10 23:22:27 +00:00
Luboš Luňák
bfc2e69530
So much for clever workarounds.
...
CCMAIL: 80653-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=307565
2004-04-30 15:12:28 +00:00
Luboš Luňák
23ac6a4381
Initialize values needed for electric borders even in the only-move case.
...
(#79252 ).
svn path=/trunk/kdebase/kwin/; revision=304267
2004-04-16 16:17:32 +00:00
Dirk Mueller
ac083a60f8
unbreak compilation
...
svn path=/trunk/kdebase/kwin/; revision=296457
2004-03-17 02:57:23 +00:00
George Staikos
4b0caa15b3
patch from Lubos for Xinerama movement snapping
...
CCMAIL: l.lunak@suse.cz
svn path=/trunk/kdebase/kwin/; revision=294555
2004-03-08 22:32:47 +00:00
Luboš Luňák
ff081c36a0
Fix #76394 ,
...
svn path=/trunk/kdebase/kwin/; revision=293762
2004-03-05 14:22:11 +00:00
Luboš Luňák
e329c3d872
Use a separate InputOnly window covering whole screen because it
...
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
2004-03-05 13:39:27 +00:00
Luboš Luňák
3575a90230
Avoid -1 as array index.
...
svn path=/trunk/kdebase/kwin/; revision=290548
2004-02-23 14:20:13 +00:00
Dirk Mueller
1e121b6c94
- fix compiler error
...
- fix compiler warning
svn path=/trunk/kdebase/kwin/; revision=290440
2004-02-23 03:23:29 +00:00
Luboš Luňák
e7cc4aa974
One more bug in clientArea().
...
svn path=/trunk/kdebase/kwin/; revision=289117
2004-02-18 18:12:09 +00:00
Luboš Luňák
bf814c45e0
Handle two todo comments from the recent partial struts commit,
...
and fix a problem with clientArea( WorkArea ) ignoring struts.
svn path=/trunk/kdebase/kwin/; revision=289110
2004-02-18 17:57:57 +00:00
Luboš Luňák
41bcfe70ed
With restricted movement, don't require 100 pixels to be visible if
...
the window is not so wide.
CCMAIL: 71111-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=289074
2004-02-18 16:57:52 +00:00
Luboš Luňák
a483fdeca7
Oops, sorry.
...
svn path=/trunk/kdebase/kwin/; revision=288956
2004-02-18 09:47:38 +00:00
Otto Bruggeman
f5433a4e1d
Compile fix... the for loop can go entirely...
...
CCMAIL: l.lunak@suse.cz
svn path=/trunk/kdebase/kwin/; revision=288868
2004-02-17 22:31:45 +00:00
Peter Rockai
2eb784cf35
Support for NETWM partial struts (_NET_WM_STRUT_PARTIAL, we call them
...
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
2004-02-17 17:34:00 +00:00
Luboš Luňák
22e7409160
Revert r2.51. Tk is either too stupid to see a difference between normal
...
and synthetic configure events, or it's too paranoid to trust the normal
ones.
CCMAIL: 75167-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=287782
2004-02-13 17:29:56 +00:00
Luboš Luňák
0a283ed773
Oops, I broke cancelling fullscreen from Alt+F3.
...
svn path=/trunk/kdebase/kwin/; revision=286754
2004-02-10 11:46:46 +00:00
Luboš Luňák
714d3fcd6c
If e.g. the titlebar is already outside of the workarea, there's no point in performing
...
a restricted move/resize, because then e.g. resize would also move the window (#74555 ).
svn path=/trunk/kdebase/kwin/; revision=286537
2004-02-09 18:09:01 +00:00
Luboš Luňák
b525af029e
Avoid sending synthetic configure notify events with user moving/resizing
...
when a real one will be sent.
svn path=/trunk/kdebase/kwin/; revision=284785
2004-02-03 15:18:15 +00:00
Luboš Luňák
10405ee978
Optimize MotionNotify discarding while moving/resizing.
...
svn path=/trunk/kdebase/kwin/; revision=284784
2004-02-03 15:16:58 +00:00
Luboš Luňák
8d00434917
Don't disallow fullscreening for windows that have maximum size set,
...
way too many apps apparently think setting a maximum or fixed size
and then requesting fullscreen is ok.
CCMAIL: 73509-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=284486
2004-02-02 14:15:31 +00:00
Luboš Luňák
e5d6fb447d
Fix non-NETWM fullscreen applications.
...
CCMAIL:71825-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=281054
2004-01-19 15:07:14 +00:00
Luboš Luňák
24cae23c66
Fix Xinerama placement. Thanks to Malte S. Stretz for help with debugging
...
and testing.
svn path=/trunk/kdebase/kwin/; revision=278437
2004-01-10 15:13:23 +00:00
Luboš Luňák
c1d1b6289f
Make sure there aren't two windows given focus with the same X timestamp,
...
because if one timestamp is reused for activating window A and then
immediatelly window B, and A will want to set focus to one
of its subwindows after receiving WM_TAKE_FOCUS, and will lag a bit,
it will actually set the focus after B, and will win. Fixes #71704 .
If somebody still gets the warning, I'd be interested in the backtrace.
svn path=/trunk/kdebase/kwin/; revision=278208
2004-01-09 17:35:21 +00:00
Luboš Luňák
59fa15a185
Read correctly original size when doing partial unmaximalization.
...
CCMAIL: 68106-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=278167
2004-01-09 15:32:37 +00:00
Luboš Luňák
3969e69d23
Oops. Once again, now it compiles.
...
svn path=/trunk/kdebase/kwin/; revision=274323
2003-12-22 10:47:47 +00:00
Anne-Marie Mahfouf
11b288081c
I guess someone had to try to fix it so here am I
...
hope I did right
svn path=/trunk/kdebase/kwin/; revision=274083
2003-12-20 23:54:25 +00:00
Luboš Luňák
45f26c3985
Apparently one needs to be clever when dealing with stupid things (part of #70623 ).
...
svn path=/trunk/kdebase/kwin/; revision=273901
2003-12-19 18:19:27 +00:00
Luboš Luňák
569224d117
Replace the temporary MousePosition enum naming with something that
...
doesn't look so silly and doesn't conflict with Qt.
svn path=/trunk/kdebase/kwin/; revision=273144
2003-12-15 15:10:17 +00:00
Luboš Luňák
9326a7f008
Fix #69787 - off-by-one error when checking top position.
...
CCMAIL: 69787-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=271907
2003-12-08 12:50:32 +00:00
Luboš Luňák
c151780247
Fix #69721 . Also, set the move cursor before input grabs, so the grab
...
uses the new cursor.
svn path=/trunk/kdebase/kwin/; revision=271904
2003-12-08 12:42:18 +00:00
Luboš Luňák
0ba12a0837
Perform whole new window managing with X server grab, in order to prevent
...
"smart" apps from doing stupid things before they get MapNotify.
This avoids the recent Java+OracleInstaller strange problem too.
The patch may look huge, but it's only adding two KWin wrappers
for X(Un)GrabServer() and uncommenting the calls in Client::manage().
svn path=/trunk/kdebase/kwin/; revision=271152
2003-12-04 13:54:10 +00:00
Luboš Luňák
0cf7454675
And eventually user moving/resizing seems to work, even with aspect ratios.
...
When moving/resizing, first do the operation unconstrained, then snap
(now it should be even simple to implement snapping while resizing),
then check workarea bounds and finally check constrains, while keeping
the respective fixed order for the resize operation at the same position.
Also geometry() -> initialMoveResizeGeometry, as geometry() may change
with opaque move/resize.
svn path=/trunk/kdebase/kwin/; revision=269301
2003-11-24 14:31:02 +00:00
Luboš Luňák
fde7aedf9c
Removed duplication of code.
...
svn path=/trunk/kdebase/kwin/; revision=269300
2003-11-24 14:30:31 +00:00
Luboš Luňák
3768a7f31f
I apparently didn't comprehend the user move/resize code, otherwise
...
I wouldn't have added something that was there already.
svn path=/trunk/kdebase/kwin/; revision=269299
2003-11-24 14:29:57 +00:00
Luboš Luňák
4cc6229be3
*sigh*, how can somebody name variables for topleft and bottomright corners pp and p?
...
This code is not easy to understand even without meaningless names.
svn path=/trunk/kdebase/kwin/; revision=269298
2003-11-24 14:26:58 +00:00
Luboš Luňák
2c3f9c4069
Some attempts to fix aspect ratios breaking resizing.
...
When resizing windows manually (Client::handleMoveResize()) still doesn't work.
svn path=/trunk/kdebase/kwin/; revision=269296
2003-11-24 14:26:11 +00:00
Luboš Luňák
2553476f53
Don't require both mouse and keyboard grab for move/resize,
...
one of them is enough. Allows resising of the configure shortcut
dialog.
svn path=/trunk/kdebase/kwin/; revision=269294
2003-11-24 14:25:33 +00:00
Luboš Luňák
162c76cf46
Reset Client::buttonDown if startMoveResize() failed
...
due to not being able to grab input. Visible with
resizing the shortcut configure dialog, which has grab.
svn path=/trunk/kdebase/kwin/; revision=269293
2003-11-24 14:24:34 +00:00
Luboš Luňák
d46c7413c4
Hopefully final fixes for topmenus managed by KWin to work ( #66152 ).
...
Written by Schizo, reviewed by Frenia. As it was broken anyway, I don't
think this can break it more.
svn path=/trunk/kdebase/kwin/; revision=266813
2003-11-13 14:34:05 +00:00
Luboš Luňák
1d71c9839b
Reserve space for topmenus, so there's no flicker, and the space is taken
...
even with no topmenu shown. Support topmenus only when enabled in kdeglobals.
svn path=/trunk/kdebase/kwin/; revision=266531
2003-11-12 09:47:13 +00:00
Luboš Luňák
07b08d5d99
Don't use struts if KWin itself restricts workarea size by topmenus.
...
svn path=/trunk/kdebase/kwin/; revision=266150
2003-11-10 18:08:04 +00:00
Sandro Giessl
2ebc2443fc
Call decoration->borders() etc. in resetMaximize() too. -- Fixes some more
...
problems for the Keramik decoration.
svn path=/trunk/kdebase/kwin/; revision=264345
2003-11-03 22:37:58 +00:00
Luboš Luňák
ea011dda6a
Borrowed code for aspect ratios from elsewhere, this time from FVWM.
...
Hopefully this one works better.
svn path=/trunk/kdebase/kwin/; revision=262941
2003-10-29 09:53:32 +00:00
Luboš Luňák
1709cb0e44
Make KDecoration::minimumSize() mean the whole decoration size, not
...
the inner window size.
svn path=/trunk/kdebase/kwin/; revision=262463
2003-10-27 14:42:43 +00:00
Luboš Luňák
43c71a8c72
No delayed deleting of decorations. They'll have to check themselves
...
instead, using KDecorationFactory::exists(). Fixes #66205 , and it wasn't
really that good idea anyway.
svn path=/trunk/kdebase/kwin/; revision=260988
2003-10-22 08:26:09 +00:00
Luboš Luňák
20ffdc2263
Send synthetic configure notify event when manually moving/resizing.
...
svn path=/trunk/kdebase/kwin/; revision=258903
2003-10-14 15:33:05 +00:00
Luboš Luňák
1751ac0880
Fix #31484 - snapping to workarea edges is already done by snapping
...
to windows, snap also to screen edges.
CCMAIL: 31484-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=257737
2003-10-10 13:09:54 +00:00
Luboš Luňák
984c76f0c1
More shade related changes.
...
svn path=/trunk/kdebase/kwin/; revision=257727
2003-10-10 13:00:26 +00:00
Luboš Luňák
34fa4a4399
Cleanup of Xinerama handling. I don't claim I actually fixed something,
...
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
2003-10-10 12:58:38 +00:00
Luboš Luňák
e8da27f399
Fix #65462 .
...
svn path=/trunk/kdebase/kwin/; revision=257720
2003-10-10 12:55:43 +00:00
Luboš Luňák
128085b3d7
Don't try to fit a window inside workarea if it's larger.
...
CCMAIL: 65633-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=257662
2003-10-10 09:47:14 +00:00
Luboš Luňák
566d2ec180
Unshade before going fullscreen.
...
svn path=/trunk/kdebase/kwin/; revision=256710
2003-10-06 11:36:24 +00:00
Luboš Luňák
08bb12efcf
If a windows tries to grow larger than the workarea, don't allow it to
...
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
2003-10-02 08:57:17 +00:00
Luboš Luňák
121c613228
Gravitation fixes, visible with repeated kwin --replace.
...
svn path=/trunk/kdebase/kwin/; revision=255615
2003-10-02 08:56:59 +00:00
Luboš Luňák
7c751219d0
Check "unshading" by unwanted geometry change during resizing too.
...
svn path=/trunk/kdebase/kwin/; revision=255419
2003-10-01 16:04:26 +00:00
Luboš Luňák
bd4789e32b
Looks like I got window gravities working correctly also for configure requests.
...
CCMAIL: 64981-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=255356
2003-10-01 12:10:22 +00:00
Luboš Luňák
6b3d8e134a
Implemented _NET_MOVERESIZE_WINDOW.
...
Moved KWin code related to configure request to geometry.cpp to a common function.
svn path=/trunk/kdebase/kwin/; revision=255355
2003-10-01 12:08:53 +00:00
Luboš Luňák
ce37c50587
Small cleanups.
...
svn path=/trunk/kdebase/kwin/; revision=255049
2003-09-30 10:55:06 +00:00
Luboš Luňák
4cd961af56
When the original request causing removal of a decoration comes
...
from the decoration, use delayed delete.
svn path=/trunk/kdebase/kwin/; revision=254813
2003-09-29 11:20:32 +00:00
Luboš Luňák
8e367689cd
Rework restricted move/resize to be readable, and as a side effect make
...
it finally work correctly.
svn path=/trunk/kdebase/kwin/; revision=253801
2003-09-25 09:29:18 +00:00
Luboš Luňák
3081abc4b8
Sorry, this is not right. For RTL, gravities should be used.
...
svn path=/trunk/kdebase/kwin/; revision=253608
2003-09-24 14:53:45 +00:00
Luboš Luňák
2fdf81d4c6
Don't resize frame to the full size when shaded.
...
svn path=/trunk/kdebase/kwin/; revision=253542
2003-09-24 11:01:14 +00:00
Luboš Luňák
9e49d37f82
Fix workarea restrictions when moving/resizing windows.
...
CCMAIL: 64672-done@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=253540
2003-09-24 11:00:40 +00:00
Luboš Luňák
592a92f00b
Move code related to mouse window resizing to geometry.cpp .
...
svn path=/trunk/kdebase/kwin/; revision=253538
2003-09-24 10:55:54 +00:00
Diego Iastrubni
380280cf76
fix resizing windows in RTL mode
...
now the left border is moved instead of the right one, as it should be :)
to test the patch simply run kwin -reverse, and then open konqui and the config
windows, press each one of the categories and you will see.
svn path=/trunk/kdebase/kwin/; revision=252546
2003-09-20 10:37:04 +00:00
Luboš Luňák
d8406cf439
Cleanup of Motif hints. Ignore hints forbidding minimize/maximize.
...
Fix using isResizable()/isMovable() instead of only checking the Motif hint.
svn path=/trunk/kdebase/kwin/; revision=252351
2003-09-19 11:14:16 +00:00
Luboš Luňák
a8b5c7365c
Keep workarea edge distance when turning on/off decoration.
...
Reduce the maximum distance for keeping it at the edge to 1/10 of workarea size.
Update edge distance when changing geometry.
svn path=/trunk/kdebase/kwin/; revision=252349
2003-09-19 11:13:04 +00:00
Luboš Luňák
10f405c73d
Merging kwin core from kwin_iii back to HEAD.
...
svn path=/trunk/kdebase/kwin/; revision=251608
2003-09-16 19:28:03 +00:00