Commit graph

115 commits

Author SHA1 Message Date
Martin Gräßlin
f47e7bb5ef KWin scripting goes properties
Dropping the wrapper around Client and just exporting the Client's
properties. This breaks all existing scripts as it's now e.g.:
client.caption
instead of
client.caption()

But the first one is the more natural one for JavaScript and also
for everyone writing QML as well.

Setters and signals are mostly still missing in client. Other parts
like ClientGroup must be converted to properties, too.
2011-12-31 08:58:40 +01:00
Thomas Lübking
117eb46684 add mouse preference against focus chain
there's currently no GUI config item, use
   kwriteconfig --file kwinrc --group Windows --key NextFocusPrefersMouse true
   qdbus org.kde.kwin /KWin reconfigure

BUG: 159989
CCBUG: 80897
FIXED-IN: 4.8
2011-12-01 13:13:13 +01:00
Luboš Luňák
e6fa2e4311 fix off-by-one test 2011-09-30 19:24:42 +02:00
Arthur Arlt
0c5da9f96f Remove tiling dependency from activation.cpp
Instead of directly calling notifyTilingWindowActivated() the signal
clientActivated() is used and connected. Including tiling.h is no longer
needed in activation.cpp.
2011-07-28 13:06:31 +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
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
Martin Gräßlin
c4381dc1f9 Deinclude effects.h in files where not needed any more 2011-03-13 13:25:34 +01:00
Martin Gräßlin
0795ae89ac EffectsHandler emits signal on windowActivated
EffectsHandlerImpl connects to the Workspace signal clientActivated.
The emitting of the signal is slightly moved from before the activation logic
to after the activation logic. This might change behavior in the scripting
component, but the previous code looked wrong.
2011-02-27 10:05:04 +01:00
Martin Gräßlin
0a7e48f7aa KWin uses kdelibs coding style. 2011-01-31 20:07:03 +01:00
Thomas Lübking
f55d275c61 adjust activateNextClient() policy
(on a client close, don't activate any random client in the 
group but only the leader -and raise it- or the last active client)
http://svn.reviewboard.kde.org/r/5830/
BUG: 183911

svn path=/trunk/KDE/kdebase/workspace/; revision=1208125
2010-12-20 18:21:46 +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
Chani Armitage
09ca99c292 make kwin switch to a related activity if a window there is being activated.
I'd prefer if it went to the "last active" one, but first I'd need to implement a way of knowing which one that was.

svn path=/trunk/KDE/kdebase/workspace/; revision=1126339
2010-05-13 18:53:08 +00:00
Chani Armitage
a9ad071575 Activity association for windows.
ok'd by fredrikh.
this code is buggy right now, but I promise to squash the bugs by the 19th :)


svn path=/trunk/KDE/kdebase/workspace/; revision=1125614
2010-05-11 20:30:20 +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
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
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
Lucas Murray
fc86648f7e Fix Workspace::takeActivity() logic relating to client groups.
BUG: 219894

svn path=/trunk/KDE/kdebase/workspace/; revision=1065960
2009-12-25 02:37:27 +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
Lucas Murray
3dc41fb062 Fix double->int conversions to prevent incorrect rounding of window
opacity at KWin start and window focus change.
BUG: 209274

svn path=/trunk/KDE/kdebase/workspace/; revision=1030828
2009-10-03 09:11:05 +00:00
Thomas Lübking
46def0304e BUG: 167138
make opacity rules actually functional

svn path=/trunk/KDE/kdebase/workspace/; revision=1002997
2009-07-27 13:30:08 +00:00
Frederik Schwarzer
a604e4a60d global typo fix
svn path=/trunk/KDE/kdebase/workspace/; revision=922431
2009-02-07 01:12:28 +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
bd589d3adf Turn unredirect off when fullscreen is not on the active virtual desktop.
svn path=/trunk/KDE/kdebase/workspace/; revision=863950
2008-09-23 15:44:54 +00:00
Luboš Luňák
5b5ec479fa When deciding where to transfer focus when a window is closed,
consider all windows in its group, not just its mainwindows.


svn path=/trunk/KDE/kdebase/workspace/; revision=802097
2008-04-28 14:39:13 +00:00
Luboš Luňák
60e904fb04 Don't refuse explicit window activation request just because the window
is not on the current desktop.


svn path=/trunk/KDE/kdebase/workspace/; revision=742984
2007-11-29 15:01:30 +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
89467f4afc QCursor::pos() -> cursorPos()
svn path=/trunk/KDE/kdebase/workspace/; revision=704207
2007-08-24 09:54:21 +00:00
Luboš Luňák
ca87a4bae2 In mouse focus policies, change active window only when the mouse actually
moves, not as a result of window changes (#92290).


svn path=/trunk/KDE/kdebase/workspace/; revision=704202
2007-08-24 09:46:56 +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
63a0120a60 Remove some no longer relevant todos.
svn path=/trunk/KDE/kdebase/workspace/; revision=689955
2007-07-19 16:38:46 +00:00
Luboš Luňák
d05ac624be Don't crash.
svn path=/trunk/KDE/kdebase/workspace/; revision=662145
2007-05-07 14:55:35 +00:00
Luboš Luňák
a6bb443640 Use Xinerama info from startup notification if available.
svn path=/trunk/KDE/kdebase/workspace/; revision=662123
2007-05-07 14:27:39 +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
0a26dc39aa Merging from old trunk:
r630817 | lunakl | 2007-02-06 14:55:12 +0100 (Tue, 06 Feb 2007) | 4 lines

Don't accidentally set _NET_ACTIVE_WINDOW to 0 when there is an active window.
And r612728 from 3.5 branch.


svn path=/trunk/KDE/kdebase/workspace/; revision=659533
2007-04-30 11:46:54 +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
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
12478151a2 Don't accidentally set _NET_ACTIVE_WINDOW to 0 when there is an active window.
And r612728 from 3.5 branch.


svn path=/trunk/KDE/kdebase/workspace/; revision=630817
2007-02-06 13:55:12 +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
Luboš Luňák
f52407b829 Merge in compilation fixes from trunk.
svn path=/branches/work/kwin_composite/; revision=619536
2007-01-03 16:53:26 +00:00
Olivier Goffart
c584b831e7 port to KNotification
svn path=/trunk/KDE/kdebase/workspace/; revision=617455
2006-12-29 09:58:51 +00:00
Luboš Luňák
0f03921271 Add a commented howto effect.
svn path=/branches/work/kwin_composite/; revision=600553
2006-10-30 22:49:59 +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
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
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