Commit graph

375 commits

Author SHA1 Message Date
Thomas Lübking
d57a0a05ab Withdraw partial maximization state when resizing partially maximized client but moveResizeMaximizedWindows() isn't true
REVIEW: 103683
BUG: 290990
FIXED-IN: 4.8
2012-01-13 15:57:34 +01:00
Martin Gräßlin
445687ed2b The geometry property starts to work
The signal is still emitted too often, but it works.
2011-12-31 08:58:43 +01:00
Martin Gräßlin
7061ab7d24 Remove unused scripting signal 2011-12-31 08:58:41 +01:00
Martin Gräßlin
7678667b5a FullScreen Property
Setter and notify signal.
2011-12-31 08:58:40 +01:00
Thomas Lübking
b7d1dbeb86 Honor rules in general isMaximizable/Minimizable/Shadeable queries
REVIEW: 103379
2011-12-10 21:27:11 +01:00
Martin Gräßlin
6c62fcd400 Make use of resize effect when resizing windows
Fixes a regression. When resize effect is available we can do a
fast resizing by only perform the resizing after the user ended
resizing the window.

REVIEW: 103363
2011-12-09 20:48:46 +01:00
Thomas Lübking
a3e268e737 checkWorspacePosition on screen changes only
REVIEW: 103029
BUG: 283302
2011-11-12 19:29:17 +01:00
Fredrik Höglund
9fa2feabc8 kwin: Insert an input-only window above each decorated client
This input-only window is used to capture events above the
client window and preventing them from reaching the client.

It is currently used to enlarge the borders by an invisible
amount, using the ExtendedBorderRegion provided by the
decoration.
2011-11-11 03:02:10 +01:00
Thomas Lübking
d3331eed9c export the baseincrement size to the effectwindow and utilize it in the windowgeometry effect
BUG: 283518
REVIEW: 103033
FIXED-IN: 4.8
2011-11-03 21:49:20 +01:00
Luboš Luňák
1030bcd7f3 keep windows inside workarea if they were there before workarea changes 2011-09-30 17:10:57 +02:00
Luboš Luňák
40744b6b11 use old screen sizes when calculating old window positions on screen size changes 2011-09-30 17:10:57 +02:00
Luboš Luňák
3bd58d49fa so much for copy&pasting a function name 2011-09-29 18:30:20 +02:00
Luboš Luňák
191b03be1b gee, is this come-up-with-the-most-useless-variable-name competition or what?
And they are both pointless anyway, simplify code.
2011-09-29 18:30:20 +02:00
Luboš Luňák
07e3dff871 make checkWorkspacePosition() work also on desktop/screen change
It previously worked only when struts changed, this makes it work
e.g. when moving a window between desktops that have different
struts, or when sending a windows between differently sized screens.
2011-09-29 18:30:20 +02:00
Luboš Luňák
8edf542bb7 remove a function that should have been removed in d105478abf33474fa18e6bb1e80d09a1911f42e4 2011-09-29 18:30:20 +02:00
Luboš Luňák
c47de96716 fix overzealous optimizations leading to dangling references to temporaries 2011-09-29 18:30:20 +02:00
Luboš Luňák
ede01e1702 the Qt idiom is that out parameters are pointers 2011-09-29 16:22:24 +02:00
Thomas Lübking
dd05eebbe2 catch changeMaximize recursion from setNoBorder
polluted the restore geometry for unmaximizing from quick maximization when using BorderlessMax'd

CCBUG: 279529
(cherry picked from commit 5ca44bfd7dce34504ff5fdc25818470bc672e358)
2011-09-09 18:24:05 +02:00
Thomas Lübking
12b9b1c79e fix xsync protocol
BUG: 160393
REVIEW: 102311
2011-08-24 01:39:34 +02:00
Thomas Lübking
123e259441 check workspace position after screen change of any max'd client
also only unset max'd state when resizing, but not when moving a max'd client
BUG: 279051
CCBUG: 279529
REVIEW: 102414
(cherry picked from commit ea91e9dea63cf58fcf0d45d7e2f4783d0b70b8bb)

Conflicts:

	kwin/geometry.cpp
2011-08-23 23:11:59 +02:00
Thomas Lübking
6f6f13f881 fix movable maximized behaviour, allow maximizing clients with limited max size
BUG: 279529
REVIEW: 102237
(cherry picked from commit 3700951ab33933c707da2e50b0561bf3ee9812c4)
2011-08-15 22:16:44 +02:00
Matthias Fuchs
7d67380205 Fixes disabling fullscreen for windows using two displays.
Dragging a fullscreen window to another screen and then disabling
fullscreen keeps the window at the new screen.

BUG:261704
FIXED-IN:4.7.1
REVIEW:102103
(cherry picked from commit d35ec6d18377fd872207b88dd39f560a483bcc14)
2011-08-15 19:13:49 +02:00
Thomas Lübking
8b75f4b321 QRect::right() + 1 == QRect::x() + QRect::width()
Also to catch inner split for sure the calculation needs to be accurate.

BUG: 279774
REVIEW: 102292
(cherry picked from commit 561dac0ae1bd158563e4aa6d0f25268fbc5a97af)
2011-08-11 14:32:27 +02:00
Martin Gräßlin
f72f465c13 Fix Typos
Krazy--
SVN_SILENT
2011-08-03 08:25:10 +02:00
Alex Fiestas
78783bfb49 use checkOffscreenClient for half-maximized clients 2011-07-28 22:19:39 +02:00
Alex Fiestas
c0b89870b9 Move the "noOffscreensWindow" into a method so we can reuse it 2011-07-28 22:19:38 +02:00
Arthur Arlt
e79cf50087 Rename some functions and variables in class Tiling
Some functions and variables were given more proper names and are now
following the naming scheme. 'Redundant' naming information was also removed.

REVIEW: 102020
2011-07-28 13:55:30 +02:00
Arthur Arlt
1326316049 Introduce Build Option for Tiling
A build option is introduced to file CMakeLists.txt. Classes Tiling,
Tile and TilingLayouts are only built if the option is set to ON. #ifdef's
are added to the classes where functions of the excluded classes are called.
2011-07-28 13:39:21 +02:00
Arthur Arlt
3634525613 Refactoring Tiling
This initial commit introduces a new class Tiling. It is provided by
the files tiling/tiling.h and tiling/tiling.cpp. It covers all the
Tiling functionality which was provided by Workspace. In this initial
commit, all the functions were just moved and adjusted.
A  new member variable m_tiling is introduced to Workspace, which
makes the new class Tiling accessible from Workspace.
The Tiling pointer is created in the constructor and deleted in
the deconstructor. Also a getter method tiling() is provided.
All calls from other classes are updated to use the methods in class
Tiling now.
2011-07-28 12:35:51 +02:00
Alex Fiestas
a2aad27a78 Make sure that not maximized clients are offscreen on xrandr events
Added a small check in Client::checkWorkspacePosition which will assure
us that no window ("client") is left in a offscreen position. this is
more a workaround than a proper fix but is the only thing we can do that
will be backportable to the 4.7 branch.
2011-07-27 20:13:54 +02:00
Martin Gräßlin
32a82141f0 Adding a build option for KWin Scripting
It is possible that adding this build option broke the Scripting
component. This is something that should not happen. Unfortunately
by just ifdefing everything scripting related with scripting enabled
we have build errors. These are caused by the fact that the scripting
code includes e.g. client.h through "./../client.h". At one offending
place I changed that to "client.h", but there is also a client.h in
the scripting directory.

The includes and naming of the scripting files clearly have to be fixed!
2011-07-10 10:48:25 +02:00
Thomas Lübking
05cbf3f1ca correct workspace position in case of quicktiling or touching the border when the decoration padding changes 2011-07-10 02:24:54 +02:00
Martin Gräßlin
039c025bfb Add a build option for screen edge support 2011-07-07 18:29:11 +02:00
Arthur Arlt
b63c9c1af8 Make mothod windowGeometryShapeChanged() a slot
The method windowGeometryShapeChanged() from the class Scene is now a slot. It is now connected to the signal geometryShapeChanged() which is sent from Toplevel instances Client and Unmanaged.
All direct method calls were deleted.
2011-07-05 11:34:12 +02:00
Arthur Arlt
c8cf1e4c7e Removed method destroy()
Since the method destroy() was called only from one location in the code
followed by update(), the funtionality has been moved to the method update()
which now takes an boolean argument 'force'. This argument is false by default
and set to true only at that location where destroy() was called formerly.
2011-07-04 13:24:51 +02:00
Arthur Arlt
6e7a249cd0 Rename functions in class ScreenEdge
Since the functions were moved from Workspace to its own class ScreenEdge
and the functionality was formerly called ElectricWindows, the functions still
had the old names. They are now consistenly renamed without redundand naming.
The function calls were updated as well in all classes where ScreenEdge is used.
2011-07-04 13:24:51 +02:00
Arthur Arlt
2f11337d98 Refactoring Screen Edge handling
This commit change the screen edge function calls to be called in the
new class ScreenEdge. The old methods are still in Workspace and will
be removed in a further commit.
2011-07-04 13:24:51 +02:00
Arthur Arlt
25654f25b8 Removing TopMenu
Since the funtionality of TopMenu did no longer work in KDE4 this feature was
removed from Workspace. Every reference to it was removed as well as commentaries
and documentation.

REVIEW: 101485
2011-06-24 12:27:56 +02:00
Martin Gräßlin
12d3b354fc Remove drawbound move/resize functionality
Drawbound was nowadays only used when compositing is disabled.
For the composited case, the drawbound was replaced by the resize
effect and in fact we should always just use the resize effect.

REVIEW: 101411
2011-06-23 12:15:54 +02:00
Thomas Lübking
9397b14e81 kwin, add debug statements to configureReqest 2011-06-13 19:33:40 +02:00
Alberto Mattea
9bbed0335a Add basic multihead support to kwin
For now there is autostart support on all screens and support for different resolutions on different screens.
Keyboard shortcuts are still TODO
REVIEW: 101125
BUG: 256242
2011-05-08 20:39:27 +02:00
Martin Gräßlin
ff3900d825 Refactor KWin Outline code into an own class
This change unduplicates some code and merges it into one class
allowing us to use an replacement effect for the outline in
future.
CCMAIL: a.arlt@stud.uni-heidelberg.de
REVIEW: 100848
2011-04-28 11:19:05 +02:00
Martin Gräßlin
b52975a57e Merge branch 'libkwineffects'
The branch contains the first step in reworking the kwineffects
library. This includes:
* replacing virtuals by signals and slots
* dropping some unused methods
* remove KWin::TimeLine

More to come.

Conflicts:
	kwin/workspace.cpp
2011-03-16 19:46:59 +01:00
Martin Gräßlin
32c903b05b Rework signals for move/resize windows
First a signal is emitted when the user starts a move/resize operation.
During the move/resize operation each geometry change emits an update signal.
Last but not least a finish signal is emitted.

This eliminates the specific method for geometry updates in drawbound resize
mode.
2011-03-13 12:41:30 +01:00
Martin Gräßlin
911098ee76 WindowGeometryShapeChanged becomes a signal 2011-03-12 12:34:59 +01:00
Thomas Lübking
b42ae48280 store geom_pretile on maximization as well 2011-03-08 23:13:25 +01:00
Thomas Lübking
0b1599680d stage one, call martin 2011-03-08 22:05:09 +01:00
Thomas Lübking
dd19f5e1a7 Unlink maximization state from actual geometry
Since clients with restricted geometry now cannot cover the entire screen by default it was necessary to unlink the state from the actual geometry to re-provide the "restore" feature.
The patch also extends the protection of the maximized state to unilateral maximizations (emacs issue)

BUG: 265568
BUG: 252314
CCBUG: 252255
review request https://git.reviewboard.kde.org/r/100606/
2011-03-08 21:48:08 +01:00
Martin Gräßlin
eeb10c69d5 Signal for windowUserMovedResize
In core a new signal is added for maximizedState change of client.
Other function calls remain as direct calls for the moment.
2011-02-28 21:03:13 +01:00
Martin Gräßlin
0a7e48f7aa KWin uses kdelibs coding style. 2011-01-31 20:07:03 +01:00
Thomas Lübking
677f6953c2 remove qdebug leftover
svn path=/trunk/KDE/kdebase/workspace/; revision=1212027
2011-01-05 14:47:25 +00:00
Thomas Lübking
9835858a4c logic error. re-allow plain moves, sorry :-\
BUG: 260847

svn path=/trunk/KDE/kdebase/workspace/; revision=1208406
2010-12-21 14:34:45 +00:00
Thomas Lübking
94605a5ef5 adjust strict geometry policies
http://svn.reviewboard.kde.org/r/5871/
BUG: 158974
CCBUG: 252314

@Jorge:
please see the request description and check whether this allows you to fix your bug
in case, don't forget to close it ;-)

svn path=/trunk/KDE/kdebase/workspace/; revision=1208120
2010-12-20 18:18:27 +00:00
Thomas Lübking
68fbd31ad8 add windowgeometry tip effect, bind it to the general setting and generalize effect feature provide api, thus update resize effect
BUG: 219755

svn path=/trunk/KDE/kdebase/workspace/; revision=1195300
2010-11-10 19:21:56 +00:00
Thomas Lübking
773fec4e23 workaround bug 224600 / active but unrisen windows don't go fullscreen
NOTICE that the correct solution would be to move any active FS client on top of the stack in layers.cpp but this might raise other issues.
this patch preserves the present behaviour but raises windows before setting the fullscreen. the only "issue" with this is that for setups that do not raise windows when activating them, setting an active but not risen client FS will cause a restack as sideeffect

BUG: 224600

svn path=/trunk/KDE/kdebase/workspace/; revision=1194908
2010-11-10 03:08:37 +00:00
Martin Gräßlin
0174887114 Extend quick tiling to quarter of screen.
When moving a window to the upper or lower quarter of a screen edge the window will be quick tiled to the responsible quarter of the screen.
Moving the window to the middle half of the screen will do the normal quicktiling to half of screen, quick maximization at top screen is unchanged.
Thanks to Arthur Arlt for his first code contribution to KDE.
See Review Request http://reviewboard.kde.org/r/5661
CCMAIL: arre2000@gmx.de

svn path=/trunk/KDE/kdebase/workspace/; revision=1190361
2010-10-27 13:16:36 +00:00
Rohan Ramdas Prabhu
2aec750ebf Trembles the weave as the clock ticks, attain another microstate.
Every disorder causes every duration, which ensures the one that stays.
reality is relative. natural is disorder.
[R]obinhood[P]andey

Merging scripting from
^/branches/work/kwin_scripting TO
^/trunk

svn path=/trunk/KDE/kdebase/workspace/; revision=1177865
2010-09-21 14:31:40 +00:00
Thomas Lübking
c62cbd5911 fix pending XSYNC requests, bugs partially closed due to suggested relation by the reporters
please re-open them if this does not fix it

BUG: 178269
BUG: 183263
BUG: 241094
BUG: 243094

svn path=/trunk/KDE/kdebase/workspace/; revision=1175748
2010-09-15 19:33:15 +00:00
Luboš Luňák
87d373e9cd off-by-one error when ensuring a window in the bottom-right corner
doesn't go outside the workarea


svn path=/trunk/KDE/kdebase/workspace/; revision=1165452
2010-08-19 12:08:33 +00:00
Martin Gräßlin
ad3753c944 Let's use KGlobalSettings' drag and drop pixel distance instead of a hardcoded value when starting to move a window.
svn path=/trunk/KDE/kdebase/workspace/; revision=1134234
2010-06-03 18:04:36 +00:00
Martin Gräßlin
02c8c78c21 Use start drag time for dragging and not double click interval.
svn path=/trunk/KDE/kdebase/workspace/; revision=1134134
2010-06-03 13:48:14 +00:00
Rohan Ramdas Prabhu
92460322ab Fixed a bug for KWin reported on http://bugs.kde.org with the bug no.
226423

BUG: 226423
CCMAIL: l.lunak@kde.org


svn path=/trunk/KDE/kdebase/workspace/; revision=1130648
2010-05-25 21:40:14 +00:00
Nikhil Marathe
2163f87264 Modified workspace method names to mark them up as referring to tiling
svn path=/trunk/KDE/kdebase/workspace/; revision=1125434
2010-05-11 11:10:53 +00:00
Thomas Lübking
ffa8b5306c rename EffectsHandler::provideResizeEffect to singular, honor rules (also affecting the sync timer now)
svn path=/trunk/KDE/kdebase/workspace/; revision=1123660
2010-05-06 14:54:34 +00:00
Nikhil Marathe
a2a7891789 SVN_SILENT Renamed tilingMode to tilingEnabled to better convey its boolean-ness
svn path=/trunk/KDE/kdebase/workspace/; revision=1123140
2010-05-05 12:09:49 +00:00
Martin Gräßlin
f6ebb5d913 Texture scaling in resize effect and disabling the drawbound when the effect is present.
This provides a good resizing performance for users having problems with the live-updating resize.
Patch by Thomas Lübking.

svn path=/trunk/KDE/kdebase/workspace/; revision=1118714
2010-04-25 18:40:04 +00:00
Nikhil Marathe
5fc7e93d69 Tiling is here!
This commit merges the kwin-tiling branch. Ideally it shouldn't break anything and add a few features ;-)
It was applied as a patch. Do not attempt to merge the branch directly, it has a few issues.
This feature is currently experimental, although it hasn't crashed in quite a long time. It lacks some features and probably leaks some memory. Fixes will be on the way.

Season Of KDE 2009 project by Nikhil Marathe

svn path=/trunk/KDE/kdebase/workspace/; revision=1118677
2010-04-25 16:43:14 +00:00
Hugo Pereira Da Costa
4874785fb4 revert r1078325 and moves the handling of Maximize state changes when
un-grouping windows to clientgroup.cpp. Ensures that Client::maximize( 
MaximizeRestore ) is called when appropriate to avoid decoration artifacts.
BUG: 223060

svn path=/trunk/KDE/kdebase/workspace/; revision=1078877
2010-01-23 03:41:39 +00:00
Hugo Pereira Da Costa
346bcc30d3 Force update of decoration pixmap in setGeometry when maximize state is changed even if the size is
not, to handle changes in decoration pixelMetrics right.
BUG: 223060

svn path=/trunk/KDE/kdebase/workspace/; revision=1078325
2010-01-22 02:50:33 +00:00
Hugo Pereira Da Costa
f13d25a8df Fixed calculation on drag distance in Client::handleMoveResize to properly handle decoration padding, consistently with calculation of
"moveOffset" in Client::processDecorationButtonPress (in events.cpp).

BUG: 223366


svn path=/trunk/KDE/kdebase/workspace/; revision=1078291
2010-01-21 23:09:07 +00:00
Lucas Murray
41e5bfd793 Change how quick tiling and maximization is activated slightly. Instead
of using electric borders just check the location of the cursor; if the
cursor is near the edge enable the resize snap. This makes the features
easier to activate, removes the conflict with desktop switching and
allows the features to be used completely on multi-screen systems.
Patch inspired by one from Marcel Schaal.
BUG: 218957

svn path=/trunk/KDE/kdebase/workspace/; revision=1071996
2010-01-09 09:49:52 +00:00
André Wöbbeking
ab85881232 error: ISO C++ forbids variable length array
use QVarLengthArray instead

svn path=/trunk/KDE/kdebase/workspace/; revision=1069536
2010-01-03 17:26:27 +00:00
Lucas Murray
187d26a641 If both quick maximization and "allow moving and resizing of maximized
windows" are enabled then don't instantly restore maximized windows when
they are dragged.
BUG: 219952

svn path=/trunk/KDE/kdebase/workspace/; revision=1065887
2009-12-24 16:30:07 +00:00
Lucas Murray
ae3ef3f765 Allow the quick tiling keyboard shortcuts to move the window between
Xinerama screens.

svn path=/trunk/KDE/kdebase/workspace/; revision=1065319
2009-12-23 01:36:44 +00:00
Thomas Lübking
d92c427d36 avoid "deep" QVector copy
CCBUG: 217040

svn path=/trunk/KDE/kdebase/workspace/; revision=1064056
2009-12-20 01:49:39 +00:00
Lucas Murray
efb6055fc0 Fix window snapping.
svn path=/trunk/KDE/kdebase/workspace/; revision=1049888
2009-11-16 02:42:12 +00:00
Lucas Murray
e0bee92151 Update the window group's min/max size when the hint on any window in
the group changes.
BUG: 214673

svn path=/trunk/KDE/kdebase/workspace/; revision=1049636
2009-11-15 15:48:59 +00:00
Lucas Murray
5e93336473 Resize other windows in the group when a grouped window is resized by
the application.
CCBUG: 214673

svn path=/trunk/KDE/kdebase/workspace/; revision=1049618
2009-11-15 15:08:15 +00:00
Lucas Murray
a0d07d12a2 Merged r970865:1049322 from /branches/work/kwin-tabbing
Adds window tabbing support to KWin.
FEATURE: 42023

svn path=/trunk/KDE/kdebase/workspace/; revision=1049334
2009-11-15 03:24:04 +00:00
Martin Gräßlin
77f0f0eaca Adding the missing pieces for a nice and fast letterbox resizing as a replacement for the drawbound resizing.
Perhaps we should not display the totally ugly drawbound when we have an active resize effect.
CCBUG: 208770
CCBUG: 152638

svn path=/trunk/KDE/kdebase/workspace/; revision=1042711
2009-10-30 14:22:33 +00:00
Lucas Murray
8a8428e41c Less Krazy warnings please.
svn path=/trunk/KDE/kdebase/workspace/; revision=1042572
2009-10-30 06:51:59 +00:00
Marco Martin
36b39da955 respect the no border hint for windows that aren't maximized in case of
borderlessMaximizedWindows()

svn path=/trunk/KDE/kdebase/workspace/; revision=1035170
2009-10-14 13:07:31 +00:00
Lucas Murray
65e8bea70d Make quick maximization and tiling more intuitive by handling resize and
move operations in a logical fashion when a window is in the maximized
or tiled state.

svn path=/trunk/KDE/kdebase/workspace/; revision=1035021
2009-10-14 09:33:00 +00:00
Lucas Murray
e5d176b90b Fix quick tiling/maximize so other screen edge actions assigned to the
same edges work again.

svn path=/trunk/KDE/kdebase/workspace/; revision=1031990
2009-10-06 15:52:08 +00:00
Lucas Murray
d171c594ff Cancel a quick tile/maximize action if the user moves the window back
away from the edge of the screen without releasing the mouse button.

svn path=/trunk/KDE/kdebase/workspace/; revision=1031967
2009-10-06 14:56:10 +00:00
Lucas Murray
20f1a79d04 Less warnings please.
svn path=/trunk/KDE/kdebase/workspace/; revision=1031490
2009-10-05 09:47:13 +00:00
Lucas Murray
ca9df8caae Add window snapping to the desktop grid effect.
Patch by Caio Marcelo de Oliveira Filho.
FEATURE: 188743

svn path=/trunk/KDE/kdebase/workspace/; revision=1031428
2009-10-05 04:06:20 +00:00
Lucas Murray
52653a13b4 Don't send sync requests when using the rubber band for window resizing.
BUG: 181800
CCBUG: 183263

svn path=/trunk/KDE/kdebase/workspace/; revision=1030921
2009-10-03 14:07:49 +00:00
Lucas Murray
39a68673a4 Use correct fullscreen geometry when moving fullscreen windows across
Xinerama screens.
BUG: 188827

svn path=/trunk/KDE/kdebase/workspace/; revision=1030845
2009-10-03 10:00:31 +00:00
Lucas Murray
b4938657b8 Prevent KWin from sending out multiple sync requests before the client
has time to reply.
BUG: 183263

svn path=/trunk/KDE/kdebase/workspace/; revision=1030473
2009-10-02 10:50:13 +00:00
Marco Martin
154b0296a2 add a new (hidden for now) option: hide (and delete) the window borders
when the window is maximized, restoring them wen it's unmaximized. will
be used for small screen setups


svn path=/trunk/KDE/kdebase/workspace/; revision=1025694
2009-09-19 12:48:28 +00:00
Lucas Murray
b21b7cbb98 Fix quick tiling and maximization on multi-screen systems.
svn path=/trunk/KDE/kdebase/workspace/; revision=1024688
2009-09-17 08:11:01 +00:00
Robin Harold Burchell
102ec081e2 Extend on the quicktiling(/snap) work by mgraesslin in r1021305:
- Add hotkeys for snap left/snap right, kwin won't need a seperate hotkey for snap up, as maximize will do that job for us, and it already has a hotkey
 - Add geometry restoring to quick tile, meaning that windows can be moved back to their original state after a tile, useful if just looking at something quickly.

Thanks to mgraesslin for review and lots of mentoring.

svn path=/trunk/KDE/kdebase/workspace/; revision=1022987
2009-09-13 17:09:44 +00:00
Martin Gräßlin
9e3484e2f0 Adding new option to disable the legacy fullscreen mode (borderless, not netwm compliant windows with screen geometry).
It is disabled by default, but if it causes problems we will enable it again. In that case the "3rd party" (netbook shell) should set the option.
BUG: 206789
CC-MAIL: notmart@gmail.com

svn path=/trunk/KDE/kdebase/workspace/; revision=1021309
2009-09-08 20:19:20 +00:00
Martin Gräßlin
754f5d0829 Quick maximize and tiling when moving a window to the left/right or top screen edge.
Top screen edge (un)maximizes. Left screen edge sets window to left half of screen geometry, right edge to other half.

svn path=/trunk/KDE/kdebase/workspace/; revision=1021305
2009-09-08 20:01:08 +00:00
Lucas Murray
9842c3247e Obey window size hints when doing unrestricted resizes.
BUG: 196326

svn path=/trunk/KDE/kdebase/workspace/; revision=987516
2009-06-26 09:06:48 +00:00
Fredrik Höglund
a088f660a5 Make sure that the repainted area includes the whole decoration when
a window is moved or resized.

svn path=/trunk/KDE/kdebase/workspace/; revision=963609
2009-05-04 23:19:42 +00:00
Martin Gräßlin
91f0305942 Use foreach loop instead of iterator based for loop when walking through stacking_order in cascade desktop. It seems that stacking order is changed which is causing a crash with the iterator based version.
BUG: 190903

svn path=/trunk/KDE/kdebase/workspace/; revision=960527
2009-04-28 15:26:02 +00:00
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