diff --git a/lib/ace/layer/text.js b/lib/ace/layer/text.js index 0fd04272..f78bbc46 100644 --- a/lib/ace/layer/text.js +++ b/lib/ace/layer/text.js @@ -114,11 +114,15 @@ var Text = function(parentEl) { // Note: characterWidth can be a float! measureNode.innerHTML = lang.stringRepeat("Xy", n); - var container = this.element.parentNode; - while (!dom.hasCssClass(container, "ace_editor")) - container = container.parentNode; + if (document.body) { + document.body.appendChild(measureNode); + } else { + var container = this.element.parentNode; + while (!dom.hasCssClass(container, "ace_editor")) + container = container.parentNode; + container.appendChild(measureNode); + } - container.appendChild(measureNode); } var style = this.$measureNode.style; diff --git a/lib/ace/virtual_renderer.js b/lib/ace/virtual_renderer.js index 8d3f745c..0027d18c 100644 --- a/lib/ace/virtual_renderer.js +++ b/lib/ace/virtual_renderer.js @@ -277,6 +277,10 @@ var VirtualRenderer = function(container, theme) { this.getPrintMarginColumn = function() { return this.$printMarginColumn; }; + + this.getShowGutter = function(){ + return this.showGutter; + } this.setShowGutter = function(show){ if(this.showGutter === show) @@ -365,6 +369,10 @@ var VirtualRenderer = function(container, theme) { this.$updatePrintMargin(); }; + this.getHScrollBarAlwaysVisible = function() { + return this.$horizScrollAlwaysVisible; + } + this.setHScrollBarAlwaysVisible = function(alwaysVisible) { if (this.$horizScrollAlwaysVisible != alwaysVisible) { this.$horizScrollAlwaysVisible = alwaysVisible;