[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdebase/kwin
From: Xavier IZARD <xizard () free ! fr>
Date: 2004-05-10 23:22:27
Message-ID: 20040510232227.D6D5024EE () office ! kde ! org
[Download RAW message or body]
CVS commit by xizard:
Patch for xinerama mode to allow fullscreens both on one or several screen(s)
M +7 -2 geometry.cpp 2.69
M +1 -1 manage.cpp 2.41
M +2 -1 options.cpp 1.99
M +1 -0 options.h 1.63
M +2 -1 utils.h 2.12
--- kdebase/kwin/geometry.cpp #2.68:2.69
@@ -227,4 +227,9 @@ QRect Workspace::clientArea( clientAreaO
else
return desktopwidget->geometry();
+ case FullScreenArea:
+ if (options->xineramaFullscreenEnabled)
+ return desktopwidget->screenGeometry( screen );
+ else
+ return desktopwidget->geometry();
case PlacementArea:
if (options->xineramaPlacementEnabled)
@@ -655,5 +660,5 @@ void Client::checkWorkspacePosition()
if( isFullScreen())
{
- QRect area = workspace()->clientArea( MaximizeFullArea, this );
+ QRect area = workspace()->clientArea( FullScreenArea, this );
if( geometry() != area )
setGeometry( area );
@@ -1613,5 +1618,5 @@ void Client::setFullScreen( bool set, bo
updateDecoration( false, false );
if( isFullScreen())
- setGeometry( workspace()->clientArea( MaximizeFullArea, this ));
+ setGeometry( workspace()->clientArea( FullScreenArea, this ));
else
{
--- kdebase/kwin/manage.cpp #2.40:2.41
@@ -210,5 +210,5 @@ bool Client::manage( Window w, bool isMa
{
fullscreen_mode = FullScreenHack;
- geom = workspace()->clientArea( MaximizeFullArea, geom.center(), desktop());
+ geom = workspace()->clientArea( FullScreenArea, geom.center(), desktop());
placementDone = true;
}
--- kdebase/kwin/options.cpp #1.98:1.99
@@ -85,8 +85,9 @@ unsigned long Options::updateSettings()
xineramaMovementEnabled = gc->readBoolEntry ("XineramaMovementEnabled", \
true);
xineramaMaximizeEnabled = gc->readBoolEntry ("XineramaMaximizeEnabled", \
true); + xineramaFullscreenEnabled = gc->readBoolEntry \
("XineramaFullscreenEnabled", true); }
else
{
- xineramaPlacementEnabled = xineramaMovementEnabled = xineramaMaximizeEnabled \
= false; + xineramaPlacementEnabled = xineramaMovementEnabled = \
xineramaMaximizeEnabled = xineramaFullscreenEnabled = false; }
delete gc;
--- kdebase/kwin/options.h #1.62:1.63
@@ -121,4 +121,5 @@ class Options : public KDecorationOption
bool xineramaMovementEnabled;
bool xineramaMaximizeEnabled;
+ bool xineramaFullscreenEnabled;
/**
--- kdebase/kwin/utils.h #2.11:2.12
@@ -90,5 +90,6 @@ enum clientAreaOption
MovementArea, // ??? window movement snapping area? ignore struts
MaximizeArea, // geometry to which a window will be maximized
- MaximizeFullArea, // like MaximizeArea, but ignore struts - used e.g. for \
fullscreening + MaximizeFullArea, // like MaximizeArea, but ignore struts - \
used e.g. for topmenu + FullScreenArea, // area for fullscreen windows
// these below don't depend on xinerama settings
WorkArea, // whole workarea (all screens together)
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic