summaryrefslogtreecommitdiffstats
path: root/Gui/wm
diff options
context:
space:
mode:
Diffstat (limited to 'Gui/wm')
-rw-r--r--Gui/wm/ws.c38
-rw-r--r--Gui/wm/ws.h2
2 files changed, 16 insertions, 24 deletions
diff --git a/Gui/wm/ws.c b/Gui/wm/ws.c
index 790f9d57f3..9dcd06890c 100644
--- a/Gui/wm/ws.c
+++ b/Gui/wm/ws.c
@@ -107,7 +107,6 @@ inline int wsSearch( Window win );
void wsWindowDecoration( wsTWindow * win,long d )
{
-//XUnmapWindow( wsDisplay,win->WindowID );
wsMotifHints=XInternAtom( wsDisplay,"_MOTIF_WM_HINTS",0 );
if ( wsMotifHints != None )
{
@@ -118,17 +117,6 @@ void wsWindowDecoration( wsTWindow * win,long d )
XChangeProperty( wsDisplay,win->WindowID,wsMotifHints,wsMotifHints,32,
PropModeReplace,(unsigned char *)&wsMotifWmHints,5 );
}
-//XMapWindow( wsDisplay,win->WindowID );
-// if ( d )
-// {
-// win->SizeHint.win_gravity=ForgetGravity;
-// }
-// else
-// {
-// win->SizeHint.win_gravity=StaticGravity;
-// }
-// win->SizeHint.flags=PWinGravity;
-// XSetWMSizeHints( wsDisplay,win->WindowID,&win->SizeHint,win->AtomWMSizeHint );
}
// ----------------------------------------------------------------------------------------------
@@ -856,20 +844,24 @@ void wsPutImage( wsTWindow * win )
// ----------------------------------------------------------------------------------------------
// Move window to x, y.
// ----------------------------------------------------------------------------------------------
-void wsMoveWindow( wsTWindow * win,int x, int y )
+void wsMoveWindow( wsTWindow * win,int b,int x, int y )
{
- switch ( x )
- {
- case -1: win->X=( wsMaxX / 2 ) - ( win->Width / 2 ); break;
- case -2: win->X=wsMaxX - win->Width; break;
- default: win->X=x; break;
- }
- switch ( y )
+ if ( b )
{
- case -1: win->Y=( wsMaxY / 2 ) - ( win->Height / 2 ); break;
- case -2: win->Y=wsMaxY - win->Height; break;
- default: win->Y=y; break;
+ switch ( x )
+ {
+ case -1: win->X=( wsMaxX / 2 ) - ( win->Width / 2 ); break;
+ case -2: win->X=wsMaxX - win->Width; break;
+ default: win->X=x; break;
+ }
+ switch ( y )
+ {
+ case -1: win->Y=( wsMaxY / 2 ) - ( win->Height / 2 ); break;
+ case -2: win->Y=wsMaxY - win->Height; break;
+ default: win->Y=y; break;
+ }
}
+ else { win->X=x; win->Y=y; }
win->SizeHint.flags=PPosition | PWinGravity;
win->SizeHint.x=win->X;
diff --git a/Gui/wm/ws.h b/Gui/wm/ws.h
index 0838a8b2ff..27d99c41ab 100644
--- a/Gui/wm/ws.h
+++ b/Gui/wm/ws.h
@@ -203,7 +203,7 @@ extern void wsMainLoop( void );
// ----------------------------------------------------------------------------------------------
extern void wsCreateWindow( wsTWindow * win,int X,int Y,int wX,int hY,int bW,int cV,unsigned char D,char * label );
extern void wsDestroyWindow( wsTWindow * win );
-extern void wsMoveWindow( wsTWindow * win,int x, int y );
+extern void wsMoveWindow( wsTWindow * win,int b,int x, int y );
extern void wsResizeWindow( wsTWindow * win,int sx, int sy );
extern void wsIconify( wsTWindow win );
extern void wsMoveTopWindow( wsTWindow * win );