fix flash of hidden textarea

This commit is contained in:
Fabian Jakobs 2011-12-20 12:16:49 +01:00
commit 3b7871ce0e
30 changed files with 68 additions and 62 deletions

View file

@ -51,6 +51,7 @@ var TextInput = function(parentNode, host) {
text.setAttribute("x-palm-disable-auto-cap", true);
text.style.left = "-10000px";
text.style.position = "fixed";
parentNode.insertBefore(text, parentNode.firstChild);
var PLACEHOLDER = String.fromCharCode(0);
@ -190,7 +191,7 @@ var TextInput = function(parentNode, host) {
if ("onbeforecopy" in text && typeof clipboardData !== "undefined") {
event.addListener(text, "beforecopy", function(e) {
var copyText = host.getCopyText();
if(copyText)
if (copyText)
clipboardData.setData("Text", copyText);
else
e.preventDefault();

View file

@ -145,9 +145,9 @@ exports.importCssString = function importCssString(cssText, id, doc) {
if (id)
style.title = id;
} else {
style = doc.createElementNS ?
doc.createElementNS(XHTML_NS, "style") :
doc.createElement("style");
style = doc.createElementNS
? doc.createElementNS(XHTML_NS, "style")
: doc.createElement("style");
style.appendChild(doc.createTextNode(cssText));
if (id)

View file

@ -59,9 +59,11 @@ var RenderLoop = function(onRender, win) {
var _self = this;
event.nextTick(function() {
_self.pending = false;
var changes = _self.changes;
_self.changes = 0;
_self.onRender(changes);
var changes;
while (changes = _self.changes) {
_self.changes = 0;
_self.onRender(changes);
}
}, this.window);
}
};

View file

@ -207,4 +207,7 @@ exports.cssText = ".ace-chrome .ace_editor {\
color: #994409;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -146,6 +146,7 @@ exports.cssText = "\
text-decoration:underline;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -147,6 +147,7 @@ background-color:#E92E2E;\
text-decoration:underline;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -161,6 +161,6 @@ background-color:#001221;\
background-color:#130D26;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -193,7 +193,6 @@ exports.cssText = ".ace-crimson-editor .ace_editor {\
exports.cssClass = "ace-crimson-editor";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -164,6 +164,6 @@ color:#5A525F;\
color:#693A17;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -221,6 +221,6 @@ exports.cssText = ".ace-tm .ace_editor {\
color: rgb(255, 0, 0)\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -140,7 +140,6 @@ exports.cssText = ".ace-eclipse .ace_editor {\
exports.cssClass = "ace-eclipse";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -153,6 +153,6 @@ color:#BC9458;\
background-color:#FFF980; \
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -156,6 +156,6 @@ color:#706D5B;\
background-color:#0F0040;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -156,6 +156,6 @@ color:#AD2EA4;\
text-decoration:underline;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -162,6 +162,6 @@ color:#AC4BB8;\
text-decoration:underline;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -156,6 +156,6 @@ background-color:#151C19;\
text-decoration:underline;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -152,6 +152,6 @@ background-color:#AE81FF;\
text-decoration:underline;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -174,6 +174,6 @@ color:#D2A8A1;\
text-decoration:underline;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -151,6 +151,6 @@ color:#657B83;\
text-decoration:underline;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -150,6 +150,6 @@ exports.cssText = "\
text-decoration:underline;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -195,6 +195,6 @@ exports.cssText = ".ace-tm .ace_editor {\
color: rgb(255, 0, 0)\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -172,6 +172,6 @@ background-color:#8959A8;\
color:#718C00;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -172,6 +172,6 @@ background-color:#B798BF;\
color:#B5BD68;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -172,6 +172,6 @@ background-color:#EBBBFF;\
color:#D1F1A9;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -172,6 +172,6 @@ background-color:#B798BF;\
color:#B9CA4A;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -168,6 +168,6 @@ background-color:#CC99CC;\
color:#99CC99;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -174,6 +174,6 @@ color:#5F5A60;\
color:#F9EE98;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -157,6 +157,6 @@ color:#99CC99;\
text-decoration:underline;\
}";
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
var dom = require("../lib/dom");
dom.importCssString(exports.cssText, exports.cssClass);
});

View file

@ -62,10 +62,7 @@ var VirtualRenderer = function(container, theme) {
// // Imports CSS once per DOM document ('ace_editor' serves as an identifier).
// dom.importCssString(editorCss, "ace_editor", container.ownerDocument);
// Chrome has some strange rendering issues if this is not done async
setTimeout(function() {
dom.addCssClass(container, "ace_editor");
}, 0);
dom.addCssClass(container, "ace_editor");
this.setTheme(theme);
@ -341,6 +338,9 @@ var VirtualRenderer = function(container, theme) {
// this persists in IE9
if (useragent.isIE)
return;
if (this.layerConfig.lastRow === 0)
return;
var pos = this.$cursorLayer.getPixelPosition();
if (!pos)

View file

@ -42,5 +42,5 @@ exports.cssClass = "%cssClass%";
exports.cssText = %css%;
var dom = require("../lib/dom");
dom.importCssString(exports.cssText);
dom.importCssString(exports.cssText, exports.cssClass);
});