From: Peter H. <ph...@gm...> - 2009-12-05 03:24:20
|
Hi, This is a solution to the problem I complained about here and nobody responded. The description of the problem is: I have more LCDs and fluxbox allows new windows on positions which are not covered by any LCD; i.e. the newly created windows are not visible. A typical situation is when the beginning of the X virtual screen is not covered by any head (e.g. in my case, there is no head covering region from (0,0) to (900,1050)). Some applications probably like to specify their initial position near the top left corner of the screen (or whatever else is happening) and the result is that the initial position of windows can be at locations of the X virtual screen which are not visible on any LCD/head. The solution is at the end of this email. Thanks for developing fluxbox, Peter. diff --git a/src/Window.cc b/src/Window.cc index 34b92e1..540e961 100644 --- a/src/Window.cc +++ b/src/Window.cc @@ -475,6 +475,13 @@ void FluxboxWindow::init() { // we must do this now, or else resizing may not work properly applyDecorations(); +#ifdef XINERAMA + if ( !screen().isRestart() && screen().hasXinerama() ) { + if ( 0 == screen().getHead(fbWindow()) ) + setOnHead( screen().getCurrHead() ); + } +#endif + Fluxbox::instance()->attachSignals(*this); // this window is managed, we are now allowed to modify actual state |