diff --git a/lib/codemirror.js b/lib/codemirror.js
index 5bb1677afcd94a3bba0e3e2a13a6d24f8e8cdea0..d7eb25e797df9856229b799e04c2acf1fec4ae6b 100644
--- a/lib/codemirror.js
+++ b/lib/codemirror.js
@@ -3762,10 +3762,10 @@
     }
 
     var screenleft = cm.curOp && cm.curOp.scrollLeft != null ? cm.curOp.scrollLeft : display.scroller.scrollLeft;
-    var screenw = display.scroller.clientWidth - scrollerCutOff;
+    var screenw = display.scroller.clientWidth - scrollerCutOff - display.gutters.offsetWidth;
     var tooWide = x2 - x1 > screenw;
     if (tooWide) x2 = y1 + screen;
-    if (x1 < display.gutters.offsetWidth + 10)
+    if (x1 < 10)
       result.scrollLeft = 0;
     else if (x1 < screenleft)
       result.scrollLeft = Math.max(0, x1 - (tooWide ? 0 : 10));