Commit Graph

102 Commits (004bdee7a2ec211fc5b25ebede7d44ea3b885553)

Author SHA1 Message Date
Martin Gräßlin 334b4bf622 Move handling of Virtual Desktops into a VirtualDesktopManager
The ownership for virtual desktops is moved from Workspace into a new
VirtualDesktopManager. The manager is responsible for providing the count
of virtual desktops and keeping track of the currently used virtual
desktop.

All methods related to moving between desktops are also moved from
Workspace to the new manager, though all methods related to Clients on
Virtual Desktops remain in Workspace for the time being. This is to have
the new manager as independent from KWin core as possible.

An rather important change for the handling of virtual desktops is that
the count and the id of a desktop is now an unsinged integer instead of
an integer. The reason for that is that we cannot have a negative count
of desktops as well as it is not possible to be on a desktop with a
negative identifier.

In that regard it is important to remember that a Client can be on a
desktop with a negative identifier. The special value for a Client being
on all desktops is handled by using -1 as a desktop. For the time being
this is not adjusted but instead of comparing the virtual desktop ids one
should prefer to use the convenient methods like isOnDesktop and
isOnAllDesktops. This would allow in future to internally change the
representation for on all desktops.
2013-01-07 09:47:51 +01:00
Martin Gräßlin a4f5c6f203 Improved handling of defines in kwinbindings
* drop NOSLOTS nowhere else used or set
* drop DEF4 as unused
* undef DEF3
* drop KWIN_CONNECT (merged into DEF2 and DEF3)

REVIEW: 104800
2012-05-01 08:46:07 +02:00
Thomas Lübking ab86f0e837 add screen inversion through XF86VidModeSetGammaRamp or XRRSetCrtcGamma
use opengl invert effect as fallback

REVIEW: 104371
2012-04-17 21:11:03 +02:00
Thomas Lübking 85635dd485 fix tabbing
BUG: 290959
BUG: 265160
BUG: 229292
BUG: 238279
BUG: 290758
BUG: 222831
BUG: 278275
BUG: 245747
BUG: 230000

BUG: 253697
BUG: 230570
BUG: 265977
BUG: 225337
BUG: 225339

REVIEW: 103855
2012-02-11 16:30:22 +01:00
Thomas Lübking bf88ec09ac Revert "fix tabbing"
pushed out of branch, not master - leading to absent revision, found hash collision??

This reverts commit 94b2ad7b85801e37e2df4671cdc4f26b6d7e5506.
2012-02-11 16:29:14 +01:00
Thomas Lübking d245035a17 fix tabbing
BUG: 290959
BUG: 265160
BUG: 229292
BUG: 238279
BUG: 290758
BUG: 222831
BUG: 278275
BUG: 245747
BUG: 230000

BUG: 253697
BUG: 230570
BUG: 265977
BUG: 225337
BUG: 225339

REVIEW: 103855
2012-02-11 16:01:41 +01:00
Martin Gräßlin 2f3c383ecd Add shortcuts to lower/raise opacity
REVIEW: 102374
2011-08-29 06:59:13 +02:00
Montel Laurent 62c5a5e276 normalize signal/slots 2011-08-17 23:51:55 +02:00
Arthur Arlt b1e3c7ba38 Move initialization of shortcuts to separate method in new Tiling class 2011-07-28 13:06:30 +02:00
Arthur Arlt d1b5d00129 Refactoring TabBox
Move the funtionality of TabBox from class Workspace to class TabBox to make
it possible to deactivate this feature by setting a compile flag.
All methods and variables are now provided by class TabBox and calls from other
classes go directly to TabBox.
The code for configuring the shortcut keys has also been moved to class TabBox
from kwinbindings.cpp.
2011-07-05 10:59:53 +02:00
Martin Gräßlin 494edbe76f Remove Mouse Emulation from KWin
Mouse Emulation is provided in a better way by KAccess. This provides
a global systemsettings switch to enable mouse emulation instead of
a shortcut and Xkb to enable mouse control with keyboard instead of
sending out fake mouse events.

So no need for duplicated functionality in KWin.

REVIEW: 101406
2011-06-23 11:56:00 +02:00
Thomas Lübking bfd922d7fa strip down kwin shortcut allocation code 2011-04-03 23:18:44 +02:00
Martin Gräßlin e1c04b7c3e Add shortcuts for new quick tile modes.
Shortcuts for quick tile to the quarters of the screen
added in 4.6.
Thanks to Arthur Arlt for implementing this feature.
FEATURE: 265461
FIXED-IN: 4.7.0
CCMAIL: arre2000@gmx.de
2011-02-07 19:19:51 +01:00
Martin Gräßlin 0a7e48f7aa KWin uses kdelibs coding style. 2011-01-31 20:07:03 +01:00
Martin Gräßlin 713fe54e3c Removing screenshot to clipboard functionality.
We have ksnapshot for that which uses a KWin effect to get
screenshots including shadows, which was not possible with
KWin's own implementation.

This invalidates bugs about this functionality.
BUG: 263409
FIXED-IN: 4.7.0
2011-01-30 14:24:48 +01:00
Nikhil Marathe 6ec9ac52a3 Tiling related shortcuts attached to right slots
svn path=/trunk/KDE/kdebase/workspace/; revision=1126594
2010-05-14 12:50:03 +00:00
Nikhil Marathe cb36b296b0 Renamed the window moving shortcuts to convey what to move, removed some debugging shortcuts. Removed old orientation and ratio shortcuts. NOTE: This will lead to shortcut conflicts for existing users.
svn path=/trunk/KDE/kdebase/workspace/; revision=1125424
2010-05-11 10:47:58 +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 0b153f8861 s/group window/window tab/ where it makes sense to reduce possible
confusion.

svn path=/trunk/KDE/kdebase/workspace/; revision=1050318
2009-11-17 08:46:20 +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 9f420c13ab Add ability to switch windows spatially with alt+meta+<direction>.
Patch based off code by Dominik Kapusta and Lindsay Roberts.
FEATURE: 74214

svn path=/trunk/KDE/kdebase/workspace/; revision=1030903
2009-10-03 13:09:38 +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 76f17e6de1 Here comes the new TabBox. It is a complete rewrite using a MVC approach. Here some highlights:
* Models and Delegates for Clients and Desktops
 * Horizontal, vertical and tabular layout
 * Layout of one item can be configured by an XML definition
 * A desktop item can include a client list
 * An optional second list view showing only the selected item
 * A new KCM "kwintabbox"
 * An alternative TabBox with independent settings and keybindings
 * Optional Highlight Windows effect integration
 * List scrolls instead of removing items
 * Scroll wheel support
 * Cursor key support
 * Middle click on item closes window
BUG: 195745
BUG: 197187
BUG: 201103
FEATURE: 118184
FEATURE: 156723
FEATURE: 177441
FEATURE: 182897
FEATURE: 193882
GUI:

svn path=/trunk/KDE/kdebase/workspace/; revision=1022861
2009-09-13 11:36:45 +00:00
Martin Gräßlin faa64877bf Add keybinding for show desktop.
No shortcut is set by default. Thanks to Alexander (alex3255) for providing the patch.
FEATURE: 182729

svn path=/trunk/KDE/kdebase/workspace/; revision=1022596
2009-09-12 08:01:44 +00:00
Lucas Murray b0c74e7d66 SVN_SILENT Touched up kwinbindings.cpp
svn path=/trunk/KDE/kdebase/workspace/; revision=901323
2008-12-25 03:33:42 +00:00
Luboš Luňák ed2d087f9b Shortcut for temporarily suspending compositing. Useful when
one wants to run something graphically intensive like a game
or when compositing goes awry and one wants to see the checkbox
that turns it off.
FEATURE: 155581


svn path=/trunk/KDE/kdebase/workspace/; revision=810031
2008-05-19 21:48:47 +00:00
Luboš Luňák be632b0cba Remove commented-out shortcuts that have never existed.
svn path=/trunk/KDE/kdebase/workspace/; revision=768741
2008-01-30 15:11:58 +00:00
Stephan Binner 32272e9613 i18n style guide fixes
svn path=/trunk/KDE/kdebase/workspace/; revision=757261
2008-01-04 15:26:42 +00:00
Rivo Laks 41c2b3923d Make reverse cycling through windows work (ctrl+shift+tab)
svn path=/trunk/KDE/kdebase/workspace/; revision=756603
2008-01-03 13:11:52 +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
David Faure 91f2d55635 Fix Ctrl+Del calling kill window - I need my Ctrl+Del in xemacs to delete a word forward :)
This appears to have been introduced by r568780, which turned META+CTRL+Del into CTRL+Del to "only use 3-modifiers shortcuts in the code";
it now uses the kde3 shortcut instead, ctrl+alt+esc, which should be okay since the point of r568780 was really to avoid META I think.
CCMAIL: l.lunak@kde.org

svn path=/trunk/KDE/kdebase/workspace/; revision=730689
2007-10-29 10:52:17 +00:00
Luboš Luňák 9d8710a5ff No global shortcuts by default for virtual desktops that don't exist
in the default configuration (5+), so that the shortcuts are free for other
uses (hidden somewhere in http://lists.kde.org/?t=117515904000001&r=1&w=2).


svn path=/trunk/KDE/kdebase/workspace/; revision=665975
2007-05-18 13:09:30 +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 12d97dbd49 Merging from old trunk:
r569382 | lunakl | 2006-08-03 19:32:36 +0200 (Thu, 03 Aug 2006) | 4 lines

Be explicit about the screenshots being in clipboard
(CCBUG: 131789)


svn path=/trunk/KDE/kdebase/workspace/; revision=659270
2007-04-29 21:04:53 +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
Philip Falkner 051143b3b7 compilation fixes from trunk (r621518, r621469)
svn path=/branches/work/kwin_composite/; revision=621785
2007-01-09 19:34:49 +00:00
Simon Hausmann 877a4df9d6 merged branches/work/kaction-cleanup-branch, courtesy of
Kevin, Laurent, Thomas and me.

svn path=/trunk/KDE/kdebase/workspace/; revision=621518
2007-01-08 22:39:24 +00:00
Luboš Luňák 532449c852 svn merge r568236,r568494,r568780,r599652,r599655 from trunk
(global shortcuts fixes)


svn path=/branches/work/kwin_composite/; revision=600169
2006-10-29 19:40:24 +00:00
Luboš Luňák 9cfa570153 merge in r568494 from trunk
svn path=/branches/work/kwin_composite/; revision=590656
2006-09-30 15:47:41 +00:00
Luboš Luňák 1da60d2ecd Be explicit about the screenshots being in clipboard
CCBUG: 131789


svn path=/trunk/KDE/kdebase/workspace/; revision=569382
2006-08-03 17:32:36 +00:00
Luboš Luňák 1d97935a44 Hardcode only 3-modifiers shortcuts in the code, the rest should
be in kcontrol/keys schemes.
(http://lists.kde.org/?l=kde-core-devel&m=115445034006353&w=2)


svn path=/trunk/KDE/kdebase/workspace/; revision=568780
2006-08-02 09:20:29 +00:00
Luboš Luňák 1bb6e17c54 KGlobalAccel has no longer the hack that maps numbered
keys to a slot with int argument.


svn path=/trunk/KDE/kdebase/workspace/; revision=568494
2006-08-01 11:50:10 +00:00
Luboš Luňák bffa0d7909 setGlobalShortcut() for global shortcuts
svn path=/trunk/KDE/kdebase/workspace/; revision=568236
2006-07-31 15:16:07 +00:00
Hamish Rodda 77bc9cd63d Merging in from bleeding edge kdebase branch
- i18n ported
- KAccel removed
- Some fixes for OS X

svn path=/trunk/KDE/kdebase/workspace/; revision=528190
2006-04-10 11:57:13 +00:00
Laurent Montel a48328e5bc QString::null->QString()
.clear()
etc

svn path=/trunk/KDE/kdebase/workspace/; revision=493536
2006-01-02 16:27:55 +00:00
Frank Osterfeld 776dc6395e make it compile
CCMAIL: ben@meyerhome.net

svn path=/trunk/KDE/kdebase/workspace/; revision=473125
2005-10-22 18:13:37 +00:00
Frank Osterfeld 120e3625fd remove second KShortcut argument where it was empty or just duplicated
svn path=/trunk/KDE/kdebase/workspace/; revision=473045
2005-10-22 13:16:46 +00:00
Luboš Luňák e01631784e Don't use Ctrl+Tab by default, apps use it for tabs, and I don't
think many people use this action anyway.


svn path=/trunk/KDE/kdebase/workspace/; revision=459875
2005-09-12 09:36:20 +00:00
Caleb Tennis c2a652657a Prefer using Qt::META over KKey::QtWIN
svn path=/trunk/KDE/kdebase/workspace/; revision=457843
2005-09-06 19:10:22 +00:00