Lucas Murray
c21bed5890
Allow moving and resizing above the top of the screen again when doing
...
an unrestricted move or resize.
svn path=/trunk/KDE/kdebase/workspace/; revision=940697
2009-03-18 02:34:07 +00:00
Toby Dickenson
0c166b6ecb
call the windowUserMovedResized hook for maximize/restore. That method has two boolean parameters which indicate whether this is the first move in a sequence, and the last. For maximize/restore we set both to true, and several effects need tweaking to handle this case. Also include an addition to the wobbly windows effect to include a slight 'throb' when maximized/restored. This makes it easier for your eye to track where your de-maxized window went to. FEATURE 185014
...
svn path=/trunk/KDE/kdebase/workspace/; revision=934346
2009-03-02 20:18:35 +00:00
Lucas Murray
21f023ee77
Revert r925355, r925357 and r925358 as the crashing was caused by
...
Kephal and has since been fixed.
svn path=/trunk/KDE/kdebase/workspace/; revision=927675
2009-02-18 04:05:37 +00:00
Lucas Murray
ca901dae30
Improved window movement around struts. Windows can be moved anywhere
...
where the titlebar is still clickable even if it is outside the normal
work area. When struts are added or removed only move the windows that
cover the same area, leave all others untouched. If a strut is removed
on a xinerama screen that is not on the edge of the full desktop area
prevent the windows from being moved offscreen. Prevent struts/panels
from interfering with the movement of windows on other xinerama screens.
BUG: 74559
BUG: 90833
BUG: 160068
svn path=/trunk/KDE/kdebase/workspace/; revision=927466
2009-02-17 15:50:00 +00:00
Lucas Murray
0d6f29c18d
Ignore struts half-way up the screen when calculating the available work
...
area. Fixes placement and resizing of windows on the larger monitor of a
xinerama setup where each monitor has a different resolution.
BUG: 184348
svn path=/trunk/KDE/kdebase/workspace/; revision=926545
2009-02-15 16:37:42 +00:00
Lucas Murray
beee5a8f85
If the cursor goes into the "dead" area of a Xinerama screen where the
...
two monitors have different resolutions treat it as if the cursor
didn't move at all when attempting to move a window. Prevents KWin from
crashing when in this situation.
svn path=/trunk/KDE/kdebase/workspace/; revision=925355
2009-02-13 06:15:59 +00:00
Luboš Luňák
1297fe6daa
Fix position of gravitated windows after a crash.
...
http://lists.kde.org/?l=kwin&m=123149700221501&w=2
svn path=/trunk/KDE/kdebase/workspace/; revision=925062
2009-02-12 10:01:40 +00:00
Luboš Luňák
b50a8d352a
Compress possible several reasons for resetting compositing.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=923836
2009-02-09 14:37:07 +00:00
Frederik Schwarzer
a604e4a60d
global typo fix
...
svn path=/trunk/KDE/kdebase/workspace/; revision=922431
2009-02-07 01:12:28 +00:00
Guillaume Pothier
b362b980cb
Fixed many Kephal bugs.
...
BUG: 173017
svn path=/trunk/KDE/kdebase/workspace/; revision=910287
2009-01-12 23:45:03 +00:00
Lucas Murray
6d41a1320e
Moved all debug, warning and error messages into the KWin 1212 area.
...
Replaced deprecated kdDebug() with kDebug().
Removed empty debug messages.
svn path=/trunk/KDE/kdebase/workspace/; revision=885620
2008-11-17 15:04:52 +00:00
Jason vanRijn Kasper
fb0a01228f
This change allows KWin to use the new NETWinInfo2 class (binary
...
compatibility class) and subsequently properly handle the
_NET_WM_FULLSCREEN_MONITORS EWMH spec hint.
svn path=/trunk/KDE/kdebase/workspace/; revision=885362
2008-11-17 08:03:39 +00:00
Guillaume Pothier
f780e8b68b
Kephalized plasma and kwin: replaced usage of QDesktopWidget by Kephal
...
svn path=/trunk/KDE/kdebase/workspace/; revision=884482
2008-11-15 03:04:44 +00:00
Laurent Montel
5535a9de5e
Fix iterator
...
svn path=/trunk/KDE/kdebase/workspace/; revision=883047
2008-11-11 23:09:11 +00:00
Luboš Luňák
08571b2f52
Do not use 'assert( false )', with NDEBUG that is a no-op and
...
results in warnings about missing return.
svn path=/trunk/KDE/kdebase/workspace/; revision=861879
2008-09-17 11:44:51 +00:00
Lucas Murray
cc6e98cec9
If restoring a window that was maximized on a different screen don't restore to the old screen.
...
BUG: 169928
svn path=/trunk/KDE/kdebase/workspace/; revision=853323
2008-08-27 14:50:10 +00:00
Luboš Luňák
14ae8d2dc9
Support for unredirecting fullscreen windows, i.e. games etc. can paint directly
...
and not be slowed down by going through compositing. Turned on and no UI option
in the naive hope that it won't cause any real problems. Maybe effects doing
window previews should get API to suspend unredirect though.
svn path=/trunk/KDE/kdebase/workspace/; revision=851742
2008-08-24 13:32:57 +00:00
Luboš Luňák
818070d3aa
Keep fullscreen windows covering the whole screen when it is the topmost
...
window on its xinerama screen.
FEATURE: 126817
svn path=/trunk/KDE/kdebase/workspace/; revision=851204
2008-08-23 09:20:42 +00:00
Lucas Murray
637f1dacb7
Fix off-by-one error in window corner snapping when resizing
...
svn path=/trunk/KDE/kdebase/workspace/; revision=840691
2008-08-01 14:45:49 +00:00
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