diff options
-rw-r--r-- | src/Window.cc | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/Window.cc b/src/Window.cc index 747c909..597bc08 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -446,11 +446,15 @@ void FluxboxWindow::init() { | |||
446 | int real_x = frame().x(); | 446 | int real_x = frame().x(); |
447 | int real_y = frame().y(); | 447 | int real_y = frame().y(); |
448 | 448 | ||
449 | if (real_x >= 0 && | 449 | if (screen().hasXinerama()) { // xinerama available => use head info |
450 | real_y >= 0 && | 450 | if (0 != screen().getHead(real_x, real_y)) // if visible on some head |
451 | real_x <= (signed) screen().width() && | 451 | m_placed = true; |
452 | real_y <= (signed) screen().height()) | 452 | } else { // no xinerama available => use screen info |
453 | m_placed = true; | 453 | if (real_x >= 0 && real_y >= 0 && |
454 | real_x <= (signed) screen().width() && | ||
455 | real_y <= (signed) screen().height()) // if visible on the screen | ||
456 | m_placed = true; | ||
457 | } | ||
454 | 458 | ||
455 | } else | 459 | } else |
456 | setOnHead(screen().getCurrHead()); | 460 | setOnHead(screen().getCurrHead()); |