]> git.saurik.com Git - wxWidgets.git/commitdiff
fix window rectangle computation in Centre(wxCENTER_ON_SCREEN)
authorVadim Zeitlin <vadim@wxwidgets.org>
Sat, 17 May 2008 12:56:18 +0000 (12:56 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sat, 17 May 2008 12:56:18 +0000 (12:56 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53617 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/common/toplvcmn.cpp

index bcfd5291052b5a4a9c9f030571e0aa8dbf299b5c..a24634f669a69df30f016989ad568fc96c57e663 100644 (file)
@@ -273,8 +273,11 @@ void wxTopLevelWindowBase::DoCentre(int dir)
     if((rectParent == rectDisplay) && IsMaximized())
         return;
 
+    if ( !(dir & wxBOTH) )
+        dir |= wxBOTH; // if neither is specified, center in both directions
+
     // the new window rect candidate
-    wxRect rect = GetRect().CentreIn(rectParent, dir);
+    wxRect rect = GetRect().CentreIn(rectParent, dir & ~wxCENTRE_ON_SCREEN);
 
     // we don't want to place the window off screen if Centre() is called as
     // this is (almost?) never wanted and it would be very difficult to prevent