]> git.saurik.com Git - wxWidgets.git/commitdiff
Use Refresh when the initial paint was abandoned by Scintilla so it will trigger...
authorRobin Dunn <robin@alldunn.com>
Sun, 30 Sep 2012 02:33:56 +0000 (02:33 +0000)
committerRobin Dunn <robin@alldunn.com>
Sun, 30 Sep 2012 02:33:56 +0000 (02:33 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72578 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/stc/ScintillaWX.cpp

index 153329c1240b7bf2ece85f69a4cbbd1936427164..90779336696f95d3832491d179269ae123865c7e 100644 (file)
@@ -748,8 +748,16 @@ void ScintillaWX::DoPaint(wxDC* dc, wxRect rect) {
 
     if (paintState == paintAbandoned) {
         // Painting area was insufficient to cover new styling or brace
-        // highlight positions
+        // highlight positions.  So trigger a new paint event that will
+        // repaint the whole window.
+        stc->Refresh(false);
+        
+#if defined(__WXOSX__)
+        // On Mac we also need to finish the current paint to make sure that
+        // everything is on the screen that needs to be there between now and
+        // when the next paint event arrives.
         FullPaintDC(dc);
+#endif
     }
     paintState = notPainting;
 }
@@ -757,8 +765,8 @@ void ScintillaWX::DoPaint(wxDC* dc, wxRect rect) {
 
 // Force the whole window to be repainted
 void ScintillaWX::FullPaint() {
-    wxClientDC dc(stc);
-    FullPaintDC(&dc);
+    stc->Refresh(false);
+    stc->Update();
 }