#1706: on WIN32, the attempt to map a subwindow when the parent window was not mapped yet would result in the subwindow never being mapped. This change will defer mapping until the parent window is shown.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5914 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
parent
933ce8bf07
commit
413d9295ac
@ -1188,6 +1188,14 @@ int fl_disable_transient_for; // secret method of removing TRANSIENT_FOR
|
||||
Fl_X* Fl_X::make(Fl_Window* w) {
|
||||
Fl_Group::current(0); // get rid of very common user bug: forgot end()
|
||||
|
||||
// if the window is a subwindow and our parent is not mapped yet, we
|
||||
// mark this window visible, so that mapping the parent at a later
|
||||
// point in time will call this function again to finally map the subwindow.
|
||||
if (w->parent() && !Fl_X::i(w->window())) {
|
||||
w->set_visible();
|
||||
return 0L;
|
||||
}
|
||||
|
||||
static NameList class_name_list;
|
||||
static const char *first_class_name = 0L;
|
||||
const char *class_name = w->xclass();
|
||||
|
||||
@ -1134,9 +1134,9 @@ void Fl_X::make_xid(Fl_Window* win, XVisualInfo *visual, Colormap colormap)
|
||||
if (Y < scr_y) Y = scr_y;
|
||||
}
|
||||
|
||||
// if the window is a subwindow and our parent is not mapped, we
|
||||
// mark this window visible, so that mapping the parent later will
|
||||
// call this function again.
|
||||
// if the window is a subwindow and our parent is not mapped yet, we
|
||||
// mark this window visible, so that mapping the parent at a later
|
||||
// point in time will call this function again to finally map the subwindow.
|
||||
if (win->parent() && !Fl_X::i(win->window())) {
|
||||
win->set_visible();
|
||||
return;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user