diff options
| -rw-r--r-- | cocoa/ScintillaView.mm | 23 | ||||
| -rw-r--r-- | doc/ScintillaHistory.html | 4 | 
2 files changed, 19 insertions, 8 deletions
| diff --git a/cocoa/ScintillaView.mm b/cocoa/ScintillaView.mm index 7891beed8..c19c976f7 100644 --- a/cocoa/ScintillaView.mm +++ b/cocoa/ScintillaView.mm @@ -696,20 +696,20 @@ static NSCursor *cursorFromEnum(Window::Cursor cursor) {  //--------------------------------------------------------------------------------------------------  /** - * Mouse wheel with command key magnifies text. - * Enabling this code causes visual garbage to appear when scrolling - * horizontally on OS X 10.9 with a retina display. - * Pinch gestures and key commands can be used for magnification. + * Implementing scrollWheel makes scrolling work better even if just + * calling super. + * Mouse wheel with command key may magnify text if enabled. + * Pinch gestures and key commands can also be used for magnification.   */ -#ifdef SCROLL_WHEEL_MAGNIFICATION  - (void) scrollWheel: (NSEvent *) theEvent { +#ifdef SCROLL_WHEEL_MAGNIFICATION  	if (([theEvent modifierFlags] & NSCommandKeyMask) != 0) {  		mOwner.backend->MouseWheel(theEvent); -	} else { -		[super scrollWheel: theEvent]; +		return;  	} -}  #endif +	[super scrollWheel: theEvent]; +}  //-------------------------------------------------------------------------------------------------- @@ -728,6 +728,13 @@ static NSCursor *cursorFromEnum(Window::Cursor cursor) {  		long lineHeight = mOwner.backend->WndProc(SCI_TEXTHEIGHT, 0, 0);  		rc.origin.y = roundf(static_cast<XYPOSITION>(rc.origin.y) / lineHeight) * lineHeight;  	} +	// Snap to whole points - on retina displays this avoids visual debris +	// when scrolling horizontally. +	if ((rc.origin.x > 0) && (NSMaxX(rc) < contentRect.size.width)) { +		// Only snap for positions inside the document - allow outside +		// for overshoot. +		rc.origin.x = roundf(static_cast<XYPOSITION>(rc.origin.x)); +	}  	return rc;  } diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html index 1b1feb485..b59c4e48a 100644 --- a/doc/ScintillaHistory.html +++ b/doc/ScintillaHistory.html @@ -556,6 +556,10 @@  	<a href="http://sourceforge.net/p/scintilla/bugs/1968/">Bug #1968</a>.  	</li>  	<li> +	On Cocoa, improve scrolling on macOS 10.12. +	<a href="http://sourceforge.net/p/scintilla/bugs/1885">Bug #1885</a>. +	</li> +	<li>  	On Cocoa, fix line selection by clicking in the margin when scrolled.  	<a href="http://sourceforge.net/p/scintilla/bugs/1971">Bug #1971</a>.  	</li> | 
