Luboš Luňák
e7b73e9e5f
Fix indentation.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=839198
2008-07-29 13:44:08 +00:00
Luboš Luňák
1802a82513
Fix out-of-bounds array access when increasing screen count with randr1.2.
...
BUG: 163045
svn path=/trunk/KDE/kdebase/workspace/; revision=839192
2008-07-29 13:36:55 +00:00
Lucas Murray
0581746327
Allow moving of maximized windows across screens
...
BUG: 131299
svn path=/trunk/KDE/kdebase/workspace/; revision=837644
2008-07-25 10:31:47 +00:00
Lucas Murray
e1683ef06f
Snap to window corners.
...
BUG: 130452
svn path=/trunk/KDE/kdebase/workspace/; revision=837640
2008-07-25 10:19:28 +00:00
Lucas Murray
79a8f87268
Fix center snapping algorithm for unrestricted moves
...
Also don't snap when another snap zone is closer
svn path=/trunk/KDE/kdebase/workspace/; revision=837639
2008-07-25 10:16:09 +00:00
Lucas Murray
f01bfcc62b
Added center snap zone to windows.
...
BUG: 133637
svn path=/trunk/KDE/kdebase/workspace/; revision=830029
2008-07-09 15:18:47 +00:00
Luboš Luňák
7453006a5d
Make sure the geometry tip is visible.
...
BUG: 163997
svn path=/trunk/KDE/kdebase/workspace/; revision=822551
2008-06-20 16:21:03 +00:00
Luboš Luňák
10af64fc67
Compute workarea diffs right when setting geometry, not delayed.
...
Fixes e.g. 'Move Window to Next Screen' shortcut.
BUG: 163051
svn path=/trunk/KDE/kdebase/workspace/; revision=815700
2008-06-02 14:34:05 +00:00
Luboš Luňák
22b3584b8d
When trying to keep a window fully inside an area, shrink if necessary and possible.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=814467
2008-05-30 11:45:15 +00:00
Luboš Luňák
fb1827d124
Replace -1 with active screen in clientArea() if needed.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=810009
2008-05-19 21:22:06 +00:00
Aike J. Sommer
2cfa81c2fc
Allow desktop-type windows to only span one xrandr/mergedfb/xinerama-screen instead of all screens combined.
...
Forgot to remove QDesktopWidget includes, sorry!
svn path=/trunk/KDE/kdebase/workspace/; revision=803353
2008-05-02 16:39:49 +00:00
Aike J. Sommer
1819ad69b2
Allow desktop-type windows to only span one xrandr/mergedfb/xinerama-screen instead of all screens combined.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=803349
2008-05-02 16:35:35 +00:00
Luboš Luňák
26b79d9177
Use QVector instead of plain-C-error-prone-memory-leaking arrays.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=798503
2008-04-18 12:57:16 +00:00
Luboš Luňák
e7c88f309d
Reduce the difference between noborder requested by the application
...
and set by the user - they're now interchangeable. Which means
that Alt+F3/Advanced/No border can put the window decoration
back on the KRunner window regardless of what Plasma or any other
app thinks.
svn path=/trunk/KDE/kdebase/workspace/; revision=788964
2008-03-23 00:12:11 +00:00
Luboš Luňák
38291eb82c
Make border sizes while maximizing take effect even when the actual
...
geometry does not change.
BUG: 158252
svn path=/trunk/KDE/kdebase/workspace/; revision=787741
2008-03-19 19:32:32 +00:00
Bill Egert
c12a07e11a
Update QRect stuffs.
...
intersect() => intersected()
addCoords() => adjust()
coords() => getCoords()
moveBy() => translate()
rect() => getRect()
svn path=/trunk/KDE/kdebase/runtime/kstyles/; revision=776918
2008-02-19 01:58:04 +00:00
Luboš Luňák
d40cbd887a
Handle correctly the case when maximization changes in both direction
...
in opposite ways.
BUG: 153970
svn path=/trunk/KDE/kdebase/workspace/; revision=762644
2008-01-17 15:44:21 +00:00
Luboš Luňák
5c7798c884
Make maximizing change full->vertical/horizontal work
...
if there's no saved restore geometry.
svn path=/trunk/KDE/kdebase/workspace/; revision=762640
2008-01-17 15:37:52 +00:00
Luboš Luňák
a30d1ee6ad
Call updateShape() unconditionally, it checks itself for shape presence
...
and also handles input shape, about which shape() call doesn't say anything.
BUG: 152809
svn path=/trunk/KDE/kdebase/workspace/; revision=749695
2007-12-17 16:30:36 +00:00
Rivo Laks
491445fb65
Add repaint for the new position of the window as well.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=742661
2007-11-28 15:02:29 +00:00
Luboš Luňák
2de13954d1
Ensure forced position really takes place.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=742658
2007-11-28 14:44:53 +00:00
Luboš Luňák
4dc72ace64
Detect when enforcing position fails.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=742656
2007-11-28 14:33:35 +00:00
Luboš Luňák
01bf6cbb4c
License cleanup - add headers where missing, be explicit about GPL
...
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
2007-11-27 19:40:25 +00:00
Luboš Luňák
ab70575d1f
Make the outline for moving/resizing work with Qt4, which bothers
...
to support XOR painting only when XRender is available. Given that
outline should be mainly used with older systems, go for a DIY Xlib-based
solution. Needs changes in decorations using it.
BUG: 149997
svn path=/trunk/KDE/kdebase/workspace/; revision=739136
2007-11-20 16:00:58 +00:00
Laurent Montel
994c800d79
Adapt to new KWarning/kFatal/kDebug api
...
svn path=/trunk/KDE/kdebase/workspace/; revision=695877
2007-08-03 06:59:24 +00:00
Luboš Luňák
ab1582de27
It's really interesting that KWin has had support for an arbitrary root
...
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
2007-07-19 16:24:51 +00:00
Luboš Luňák
162d6ac7c9
Support for _NET_WM_SYNC_REQUEST, based on a patch
...
by Rayiner Hashem <gtg990h@mail.gatech.edu>.
svn path=/trunk/KDE/kdebase/workspace/; revision=679986
2007-06-25 08:51:44 +00:00
Luboš Luňák
ef59c8956a
When doing a forced geometry update while updates are suspended, remember to force the geometry
...
update when resuming.
svn path=/trunk/KDE/kdebase/workspace/; revision=677635
2007-06-19 15:40:09 +00:00
Pino Toscano
38267e8ac6
less qt3support
...
svn path=/trunk/KDE/kdebase/workspace/; revision=672194
2007-06-06 10:37:37 +00:00
Luboš Luňák
61ada25cdf
Rework r293762 - enter move/resize mode also when the user just
...
holds the mouse button down for a moment, without moving.
svn path=/trunk/KDE/kdebase/workspace/; revision=667351
2007-05-22 15:46:42 +00:00
Luboš Luňák
02405eccd7
Set active Xinerama screen when moving.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=662863
2007-05-09 12:26:32 +00:00
Luboš Luňák
1dd1daec48
Shortcuts for switching and moving windows between Xinerama screens.
...
CCBUG: 80755
svn path=/trunk/KDE/kdebase/workspace/; revision=662089
2007-05-07 13:13:48 +00:00
Luboš Luňák
d510baf365
Option for separating focus between Xinerama screens.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=662065
2007-05-07 12:18:19 +00:00
Luboš Luňák
7a0f50b298
KWM->KWindowSystem
...
svn path=/trunk/KDE/kdebase/workspace/; revision=659662
2007-04-30 15:48:34 +00:00
Luboš Luňák
70e0c099d8
Merging from old trunk:
...
r625469 | hermier | 2007-01-20 10:56:57 +0100 (Sat, 20 Jan 2007) | 1 line
#625468 ported to KDE4
svn path=/trunk/KDE/kdebase/workspace/; revision=659525
2007-04-30 11:36:29 +00:00
Luboš Luňák
176f0e39ce
Merging from old trunk:
...
r608815 | lunakl | 2006-11-28 15:15:38 +0100 (Tue, 28 Nov 2006) | 4 lines
Confine mouse to the screen when doing move/resize.
(BUG: 88506)
svn path=/trunk/KDE/kdebase/workspace/; revision=659466
2007-04-30 09:39:24 +00:00
Luboš Luňák
5feb577369
Merging from old trunk:
...
r571712 | lunakl | 2006-08-10 15:15:16 +0200 (Thu, 10 Aug 2006) | 3 lines
Support for input shape from XShape1.1 (#122425 ).
svn path=/trunk/KDE/kdebase/workspace/; revision=659272
2007-04-29 21:19:29 +00:00
Luboš Luňák
f52b8e48cd
branches/work/kwin_composite becomes new trunk kwin.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=659202
2007-04-29 17:35:43 +00:00
Luboš Luňák
2b7e1f4993
Remove kwin, kwin_composite will become new trunk kwin, missing merges
...
from trunk will be merged in.
svn path=/trunk/KDE/kdebase/workspace/; revision=659200
2007-04-29 17:34:49 +00:00
Luboš Luňák
e1406c3e42
Utility function for XGrabKeyboard().
...
svn path=/branches/work/kwin_composite/; revision=654227
2007-04-15 14:39:10 +00:00
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