diff --git a/src/generic/splitter.cpp b/src/generic/splitter.cpp index 58f58f4ef8..c5d099a54c 100644 --- a/src/generic/splitter.cpp +++ b/src/generic/splitter.cpp @@ -358,7 +358,7 @@ void wxSplitterWindow::OnMouseEvent(wxMouseEvent& event) m_needUpdating = TRUE; } } - else if ( event.LeftDClick() && m_windowTwo ) + else if ( event.LeftDClick() ) { OnDoubleClickSash(x, y); } @@ -892,7 +892,7 @@ bool wxSplitterWindow::Unsplit(wxWindow *toRemove) return FALSE; } - win->Show(FALSE); + OnUnsplit(win); DoSetSashPosition(0); SizeWindows(); @@ -1062,8 +1062,6 @@ int wxSplitterWindow::OnSashPositionChanging(int newSashPosition) // the sash if the minimum pane size is zero. void wxSplitterWindow::OnDoubleClickSash(int x, int y) { - wxCHECK_RET(m_windowTwo, wxT("splitter: no window to remove")); - // new code should handle events instead of using the virtual functions wxSplitterEvent event(wxEVT_COMMAND_SPLITTER_DOUBLECLICKED, this); event.m_data.pt.x = x; @@ -1072,9 +1070,7 @@ void wxSplitterWindow::OnDoubleClickSash(int x, int y) { if ( GetMinimumPaneSize() == 0 || m_permitUnsplitAlways ) { - wxWindow* win = m_windowTwo; - if (Unsplit(win)) - OnUnsplit(win); + Unsplit(); } } //else: blocked by user