X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0eaf23edfa00b41ee08bc1b697948ce061e0e542..c663fbea6851207b4e0ac3e362868c23b1494a46:/contrib/src/stc/ScintillaWX.cpp diff --git a/contrib/src/stc/ScintillaWX.cpp b/contrib/src/stc/ScintillaWX.cpp index ea1dfda78c..485b612cc9 100644 --- a/contrib/src/stc/ScintillaWX.cpp +++ b/contrib/src/stc/ScintillaWX.cpp @@ -58,11 +58,6 @@ void wxSTCDropTarget::OnLeave() { #endif -#ifdef __WXGTK__ -#undef wxSTC_USE_POPUP -#define wxSTC_USE_POPUP 0 -#endif - #if wxUSE_POPUPWIN && wxSTC_USE_POPUP #include #define wxSTCCallTipBase wxPopupWindow @@ -547,14 +542,15 @@ void ScintillaWX::DoPaint(wxDC* dc, wxRect rect) { dc->BeginDrawing(); ClipChildren(*dc, rcPaint); Paint(surfaceWindow, rcPaint); - dc->EndDrawing(); delete surfaceWindow; if (paintState == paintAbandoned) { - // Painting area was insufficient to cover new styling or brace highlight positions - FullPaint(dc); + // Painting area was insufficient to cover new styling or brace + // highlight positions + FullPaint(); } paintState = notPainting; + dc->EndDrawing(); } @@ -865,22 +861,10 @@ void ScintillaWX::DoDragLeave() { #endif //---------------------------------------------------------------------- -// Redraw all of text area. This paint will not be abandoned. -void ScintillaWX::FullPaint(wxDC *dc) { - wxCHECK_RET(dc != NULL, wxT("Invalid wxDC in ScintillaWX::FillPaint")); - paintState = painting; - rcPaint = GetClientRectangle(); - paintingAllText = true; - Surface* surfaceWindow = Surface::Allocate(); - surfaceWindow->Init(dc, wMain.GetID()); - - dc->BeginDrawing(); - ClipChildren(*dc, rcPaint); - Paint(surfaceWindow, rcPaint); - dc->EndDrawing(); - - delete surfaceWindow; - paintState = notPainting; +// Force the whole window to be repainted +void ScintillaWX::FullPaint() { + stc->Refresh(false); + stc->Update(); }