Commit graph

227 commits

Author SHA1 Message Date
Nikhil Marathe
b87fa7ef41 tilingLayout is now an enum rather than an int faking as an enum :-)
svn path=/trunk/KDE/kdebase/workspace/; revision=1123125
2010-05-05 11:44: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
Martin Gräßlin
bf4a2c00d9 Compositing settings have to be read if compositing is enforced by the environment variable.
BUG: 231851

svn path=/trunk/KDE/kdebase/workspace/; revision=1109536
2010-03-31 12:29:04 +00:00
Davide Bettio
45bcf3173a * Removed "Advanced Button" from screensaver kcm.
* Screensaver screen edges settings have been merged with kwin screen edges settings.
* Removed screensaver priority configuration: we assume that users don't need to change screensaver priority.
REVIEWBOARD: http://reviewboard.kde.org/r/3240/

svn path=/trunk/KDE/kdebase/workspace/; revision=1101792
2010-03-10 22:25:20 +00:00
Lucas Murray
8960c552d2 Remove OpenGL driver whitelist; Add protection against crashy glXQuery
functions and share the value with the KCM; Fallback to XRender
compositing if OpenGL fails to work correctly; Rearrange setting order
in options.h slightly and fix variable names

svn path=/trunk/KDE/kdebase/workspace/; revision=1079919
2010-01-25 10:02:08 +00:00
Luboš Luňák
bbd4deffe8 Bah, do this properly. Avoid detecting compositing prefs only
if compositing is explicitly disabled. This allows disabling
it if there's a problem, and in that case the prefs don't matter
anyway, but it doesn't prevent detecting details about compositing
when it might be used.


svn path=/trunk/KDE/kdebase/workspace/; revision=1058282
2009-12-04 09:40:12 +00:00
Luboš Luňák
7cef1eadd5 use recommendation from compositing prefs only if there's
no explicit choice (because of driver crashes)


svn path=/trunk/KDE/kdebase/workspace/; revision=1058248
2009-12-04 09:29:08 +00:00
Luboš Luňák
868e08f380 Revertlast, will be fixed properly. Next time when you decide to revert
something, please at least look at the commit you're reverting - this is
obviously broken too.
CCMAIL: Andreas Hartmetz <ahartmetz@gmail.com>


svn path=/trunk/KDE/kdebase/workspace/; revision=1058203
2009-12-04 08:50:13 +00:00
Andreas Hartmetz
601233bcc1 Treat CompositingPrefs::enableCompositing() merely as a recommendation again
like it was before. This makes it possible to enable compositing again on my
R600 hardware and other hardware that is not explicitly known to work.
I also think that CompositingPrefs::enableCompositing() is a (really) bad name:
it's not about user preferences and it's not definitive. So what about
CompositingHardware::isKnownToWork()?.

svn path=/trunk/KDE/kdebase/workspace/; revision=1058198
2009-12-04 08:31:28 +00:00
Andreas Hartmetz
eab4dc6ed4 fix the build (constness error) by implementing a suggestion from comments
svn path=/trunk/KDE/kdebase/workspace/; revision=1056343
2009-11-29 22:11:49 +00:00
Thomas Lübking
312c5b04fe of course
svn path=/trunk/KDE/kdebase/workspace/; revision=1056314
2009-11-29 20:40:22 +00:00
Thomas Lübking
a4300bbc4d bypass compositing related checks and cofig reading if compositing is disabled to prevent segfaults in broken GL drivers
svn path=/trunk/KDE/kdebase/workspace/; revision=1056313
2009-11-29 20:39:39 +00:00
Lucas Murray
78d1aed9f7 Add setting to hide inactive tabs from the taskbar but hide it in the UI
for now as: 1) It causes taskbar items to reshuffle, and 2) Switching
the setting during a session currently requires applications to be
restarted as well for their skip taskbar status to be reset.

svn path=/trunk/KDE/kdebase/workspace/; revision=1050472
2009-11-17 11:25:03 +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
3855b9253b Added global setting to allow opening automatically grouped windows in
the background.

svn path=/trunk/KDE/kdebase/workspace/; revision=1050313
2009-11-17 07:51:55 +00:00
Lucas Murray
00e131a1a5 Allow window tabbing titlebar actions to be configurable; Set default
middle-click titlebar action to tab drag; Fix KCM config file corruption
caused by r1015273.
BUG: 214898

svn path=/trunk/KDE/kdebase/workspace/; revision=1050309
2009-11-17 07:17:49 +00:00
Lucas Murray
8fee828536 Set the correct default for the titlebar mouse wheel action in KWin core
svn path=/trunk/KDE/kdebase/workspace/; revision=1050022
2009-11-16 12:23:01 +00:00
Lucas Murray
535737e1fe Add "automatically group identical windows" feature to window tabbing.
svn path=/trunk/KDE/kdebase/workspace/; revision=1049953
2009-11-16 10:09:03 +00:00
Lucas Murray
72c3a553ca Add ability to switch the active window tab to the left/right by
scrolling on the titlebar or when using the WM modifier key.

svn path=/trunk/KDE/kdebase/workspace/; revision=1049547
2009-11-15 12:34:46 +00:00
Lucas Murray
3364165bc8 Enable quick maximization and tiling by default.
svn path=/trunk/KDE/kdebase/workspace/; revision=1041135
2009-10-27 13:11:58 +00:00
Marco Martin
4be6a1295a this makes sense under Windows, not Compositing
svn path=/trunk/KDE/kdebase/workspace/; revision=1026294
2009-09-21 11:15:28 +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
Robin Harold Burchell
f585e4e1d9 A number of small warning fixes (bracketing, etc) to help pick up real problems when working.
svn path=/trunk/KDE/kdebase/workspace/; revision=1022531
2009-09-11 23:44:29 +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
53aaaf471d Adding a new option to disable the cursor pushback for active screen edges.
I haven't added it to the UI as the screen edges kcm is already a little bit cluttered with complicated options.
So if you want to disable the pushback add option "ElectricBorderPushbackPixels" to section [Windows].
FEATURE: 198225

svn path=/trunk/KDE/kdebase/workspace/; revision=1021306
2009-09-08 20:01:16 +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
c3a07890f5 Add close window ability to customizable title bar mouse button actions.
Patch by Thomas Lundgaard.
CCMAIL: thomaslundgaard@gmail.com

svn path=/trunk/KDE/kdebase/workspace/; revision=1015273
2009-08-25 04:10:11 +00:00
Martin Gräßlin
369910865a Add "show desktop" to screen edges.
FEATURE: 195359

svn path=/trunk/KDE/kdebase/workspace/; revision=988839
2009-06-28 20:32:50 +00:00
A. Lynn Spehr
2893eac8fe Added setting to control whether scrolling on a background window focuses it.
Patch by Alex Danila. Approved by lmurray. 
BUG: 164261

svn path=/trunk/KDE/kdebase/workspace/; revision=964140
2009-05-06 06:38:54 +00:00
Lucas Murray
0ffcc70c18 Add support for hardcoded non-KWin-related active screen edge actions,
first to be added is one to display the Plasma dashboard. Implemented
the "trigger cooldown" option. Fixed a few edge action conflicts such
as forcing desktop switches when moving windows and the like.
BUG: 170393

svn path=/trunk/KDE/kdebase/workspace/; revision=933166
2009-02-28 08:33:16 +00:00
Lucas Murray
5821e6f9d7 Reverted all code relating to automatic X crash detection with agreement
from David. Due to an elusive bug somewhere in kdelibs we have not been
able to find out how to fix the issues that some people were having.
There seems to be a race condition as I cannot reproduce at all, David
can reproduce sporadically and some reporters can always reproduce.

This commit attempts to also keep the code style changes that were made
at the same time as the original commit as well as some minor bug fixes
that were made between then and now. Hopefully I didn't miss anything.

We will be revisit this in KDE 4.3.

BUG: 177178

svn path=/trunk/KDE/kdebase/workspace/; revision=894182
2008-12-08 05:08:31 +00:00
Lucas Murray
eca9561ab7 Possible fix for corrupting KWin settings on some systems.
Also fixed setting revert message to only display when actually
reverting.

svn path=/trunk/KDE/kdebase/workspace/; revision=890193
2008-11-28 14:57:22 +00:00
David Nadlinger
5f835b7c31 Modified a few comments; changed indenting to comply with the KWin coding standards.
svn path=/trunk/KDE/kdebase/workspace/; revision=888660
2008-11-25 01:45:09 +00:00
David Nadlinger
d79ef83183 When modifying the compositing settings, save a backup of kwinrc to another file to be able to revert if the X server crashes while testing the new config.
Also fixed a little bug in kcmkwincompositing (dropdowns on the general tab were not updated correctly) and cleaned up the code a bit (removed a few unneeded function calls and stale connects).

See the conversation on the mailing list ("Patch for bug 174769", http://lists.kde.org/?l=kwin&m=122696916611602) for further information.

BUG 174769


svn path=/trunk/KDE/kdebase/workspace/; revision=888659
2008-11-25 01:42:30 +00:00
Lucas Murray
c84d39b5df Complete port to Kephal.
svn path=/trunk/KDE/kdebase/workspace/; revision=884554
2008-11-15 11:38:26 +00:00
Luboš Luňák
5a7557fc6f Force OpenGL compositing to be off if OpenGL rendering is done in software
(second X session with Intel).


svn path=/trunk/KDE/kdebase/workspace/; revision=871752
2008-10-15 13:41:53 +00:00
Aaron J. Seigo
893c2c4c1d * we don't have kdesktop around in kde4, so don't bother with its config file
* kwin doesn't seem to have a top level menu display impl anymore; we have a non-working one in playground for plasma, but that hardly counts; since this is breaking things for people upgrading, disable the setting until we get this sorted out properly

svn path=/trunk/KDE/kdebase/workspace/; revision=867480
2008-10-03 15:49:45 +00:00
Luboš Luňák
a6d092a221 Better handling of hidden previews WRT backwards compatibility,
since the values don't quite map to 4.1 meaning, use new values
and treat old ones as the default (previews for shown windows).


svn path=/trunk/KDE/kdebase/workspace/; revision=866692
2008-10-01 17:27:12 +00:00
Luboš Luňák
79c05cde7d Fix default of hidden previews to be for shown windows.
svn path=/trunk/KDE/kdebase/workspace/; revision=866676
2008-10-01 17:01:47 +00:00
Luboš Luňák
23724e35b2 Add an advanced option to override kwin's compositing checks
(i.e. currently it allows to enable compositing even if self-check fails).
Not recommended of course, and it's be still nice to get self-check work
reliably.
CCBUG: 170085


svn path=/trunk/KDE/kdebase/workspace/; revision=860196
2008-09-12 10:26:19 +00:00
Luboš Luňák
2a87593638 Add a global configuration option for animation speed. See description
of Effect::animationTime() for how-to-use.
TODO: Effects need to reload config after doing the change in the kcm.
NOTE: Default TimeLine constructor now creates invalid object, it is
necessary to explicitly call setDuration() in order to ensure all
animations respect this setting.

CCMAIL: kwin@kde.org


svn path=/trunk/KDE/kdebase/workspace/; revision=854690
2008-08-30 07:25:54 +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
63b01aff5d Rework handling of mapping and unmapping windows, in particular:
- the NormalState/IconicState things in ICCCM need to match exactly
  the real mapping state, so ensure that, no matter how superfluous that is
- extend the option for having live window previews either for all
  windows or for only all shown windows (default)
FEATURE: 163385


svn path=/trunk/KDE/kdebase/workspace/; revision=845772
2008-08-12 11:02:58 +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
Jonathan Riddell
7304f7471d maximise on double click, see kde-core-devel 'Kubuntu Settings in KDE' thread
svn path=/trunk/KDE/kdebase/workspace/; revision=789256
2008-03-23 19:06:30 +00:00
Luboš Luňák
e25943a913 No need to load kdeglobals, again, use app's config.
svn path=/trunk/KDE/kdebase/workspace/; revision=786326
2008-03-16 18:46:23 +00:00
Luboš Luňák
877810b4c6 Don't disable xinerama options if xinerama is not available, this may
change with xrandr1.2 and in the worst case those options simply
will degenerate to the trivial one-screen case.
BUG: 142860


svn path=/trunk/KDE/kdebase/workspace/; revision=786319
2008-03-16 18:42:27 +00:00
Luboš Luňák
685e1d2361 Make it possible to use KDecorationOptions without private headers.
svn path=/trunk/KDE/kdebase/workspace/; revision=768271
2008-01-29 16:44:41 +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
eb0d793157 Default to SeparateScreenFocus being false, to be consistent with KDE3.
(and e.g. #141997).


svn path=/trunk/KDE/kdebase/workspace/; revision=739693
2007-11-21 15:54:06 +00:00