From c986369e3282e167711fba21f6ebe25e519b82dc Mon Sep 17 00:00:00 2001 From: Neil Hodgson Date: Thu, 27 Mar 2014 16:15:21 +1100 Subject: Improve scrolling by performing styling in methods called before drawing instead of inside drawing which then caused the drawing to be abandoned, and black blocks to appear on-screen. Discard responsive scrolling overdraw when that overdrawn content is invalid. Style just the visible area instead of the whole document when styling changes run beyond painting area. --- cocoa/ScintillaCocoa.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'cocoa/ScintillaCocoa.h') diff --git a/cocoa/ScintillaCocoa.h b/cocoa/ScintillaCocoa.h index 9098d2000..415094c35 100644 --- a/cocoa/ScintillaCocoa.h +++ b/cocoa/ScintillaCocoa.h @@ -113,8 +113,10 @@ private: protected: Point GetVisibleOriginInMain(); PRectangle GetClientRectangle(); + virtual PRectangle GetClientDrawingRectangle(); Point ConvertPoint(NSPoint point); virtual void RedrawRect(PRectangle rc); + virtual void DiscardOverdraw(); virtual void Redraw(); virtual void Initialise(); @@ -144,6 +146,7 @@ public: bool SetIdle(bool on); void SetMouseCapture(bool on); bool HaveMouseCapture(); + void WillDraw(NSRect rect); void ScrollText(int linesToMove); void SetVerticalScrollPos(); void SetHorizontalScrollPos(); -- cgit v1.2.3