diff --git a/source/gui/detail/window_layout.cpp b/source/gui/detail/window_layout.cpp index 45764b81..19ec8133 100644 --- a/source/gui/detail/window_layout.cpp +++ b/source/gui/detail/window_layout.cpp @@ -166,10 +166,18 @@ namespace nana if (!cover->visible) continue; - if (is_wd_root ? - (category::flags::root == cover->other.category) - : - ((category::flags::root != cover->other.category) && (nullptr == cover->effect.bground))) + if (is_wd_root) + { + if(category::flags::root == cover->other.category) + { + if (overlap(vis_rect, rectangle{ native_interface::window_position(cover->root), cover->dimension }, block.r)) + { + block.window = cover; + blocks.push_back(block); + } + } + } + else if((category::flags::root != cover->other.category) && (nullptr == cover->effect.bground)) { if (overlap(vis_rect, rectangle{ cover->pos_root, cover->dimension }, block.r)) {