Merge pull request #1237 from danyaPostfactum/miscfixes
classList usage in dom.{add|remove|toggle}CssClass + minor changes
This commit is contained in:
commit
f2d6d7d6c9
10 changed files with 54 additions and 75 deletions
|
|
@ -406,7 +406,9 @@ bindCheckbox("highlight_token", function(checked) {
|
|||
|
||||
/************** dragover ***************************/
|
||||
event.addListener(container, "dragover", function(e) {
|
||||
return event.preventDefault(e);
|
||||
var types = e.dataTransfer.types;
|
||||
if (types && Array.prototype.indexOf.call(types, 'Files') !== -1)
|
||||
return event.preventDefault(e);
|
||||
});
|
||||
|
||||
event.addListener(container, "drop", function(e) {
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ body {
|
|||
#logo {
|
||||
padding: 15px;
|
||||
margin-left: 70px;
|
||||
border: none;
|
||||
}
|
||||
|
||||
#editor-container {
|
||||
|
|
|
|||
|
|
@ -252,7 +252,7 @@
|
|||
|
||||
.ace_gutter-tooltip {
|
||||
background-color: #FFF;
|
||||
background-image: -webkit-linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));
|
||||
background-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1));
|
||||
background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));
|
||||
border: 1px solid gray;
|
||||
border-radius: 1px;
|
||||
|
|
@ -342,9 +342,7 @@
|
|||
-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
|
||||
box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
.ace_fold-widget.ace_invalid {
|
||||
background-color: #FFB4B4;
|
||||
border-color: #DE5555;
|
||||
|
|
|
|||
|
|
@ -34,7 +34,6 @@ define(function(require, exports, module) {
|
|||
var config = require("./config");
|
||||
var oop = require("./lib/oop");
|
||||
var lang = require("./lib/lang");
|
||||
var net = require("./lib/net");
|
||||
var EventEmitter = require("./lib/event_emitter").EventEmitter;
|
||||
var Selection = require("./selection").Selection;
|
||||
var TextMode = require("./mode/text").Mode;
|
||||
|
|
|
|||
|
|
@ -39,15 +39,6 @@ exports.createElement = function(tag, ns) {
|
|||
document.createElement(tag);
|
||||
};
|
||||
|
||||
exports.setText = function(elem, text) {
|
||||
if (elem.innerText !== undefined) {
|
||||
elem.innerText = text;
|
||||
}
|
||||
if (elem.textContent !== undefined) {
|
||||
elem.textContent = text;
|
||||
}
|
||||
};
|
||||
|
||||
exports.hasCssClass = function(el, name) {
|
||||
var classes = el.className.split(/\s+/g);
|
||||
return classes.indexOf(name) !== -1;
|
||||
|
|
@ -143,7 +134,7 @@ exports.importCssString = function importCssString(cssText, id, doc) {
|
|||
if (id)
|
||||
style.id = id;
|
||||
|
||||
var head = doc.getElementsByTagName("head")[0] || doc.documentElement;
|
||||
var head = doc.head || doc.getElementsByTagName("head")[0] || doc.documentElement;
|
||||
head.appendChild(style);
|
||||
}
|
||||
};
|
||||
|
|
@ -156,7 +147,7 @@ exports.importCssStylsheet = function(uri, doc) {
|
|||
link.rel = 'stylesheet';
|
||||
link.href = uri;
|
||||
|
||||
var head = doc.getElementsByTagName("head")[0] || doc.documentElement;
|
||||
var head = doc.head || doc.getElementsByTagName("head")[0] || doc.documentElement;
|
||||
head.appendChild(link);
|
||||
}
|
||||
};
|
||||
|
|
@ -259,22 +250,24 @@ exports.setInnerHtml = function(el, innerHtml) {
|
|||
return element;
|
||||
};
|
||||
|
||||
exports.setInnerText = function(el, innerText) {
|
||||
var document = el.ownerDocument;
|
||||
if (document.body && "textContent" in document.body)
|
||||
if ("textContent" in document.documentElement) {
|
||||
exports.setInnerText = function(el, innerText) {
|
||||
el.textContent = innerText;
|
||||
else
|
||||
el.innerText = innerText;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
exports.getInnerText = function(el) {
|
||||
var document = el.ownerDocument;
|
||||
if (document.body && "textContent" in document.body)
|
||||
exports.getInnerText = function(el) {
|
||||
return el.textContent;
|
||||
else
|
||||
return el.innerText || el.textContent || "";
|
||||
};
|
||||
};
|
||||
}
|
||||
else {
|
||||
exports.setInnerText = function(el, innerText) {
|
||||
el.innerText = innerText;
|
||||
};
|
||||
|
||||
exports.getInnerText = function(el) {
|
||||
return el.innerText;
|
||||
};
|
||||
}
|
||||
|
||||
exports.getParentWindow = function(document) {
|
||||
return document.defaultView || document.parentWindow;
|
||||
|
|
|
|||
|
|
@ -301,10 +301,10 @@ if (window.postMessage && !useragent.isOldIE) {
|
|||
|
||||
|
||||
exports.nextFrame = window.requestAnimationFrame ||
|
||||
window.oRequestAnimationFrame ||
|
||||
window.msRequestAnimationFrame ||
|
||||
window.mozRequestAnimationFrame ||
|
||||
window.webkitRequestAnimationFrame;
|
||||
window.webkitRequestAnimationFrame ||
|
||||
window.msRequestAnimationFrame ||
|
||||
window.oRequestAnimationFrame;
|
||||
|
||||
if (exports.nextFrame)
|
||||
exports.nextFrame = exports.nextFrame.bind(window);
|
||||
|
|
|
|||
|
|
@ -8,12 +8,10 @@
|
|||
define(function(require, exports, module) {
|
||||
"use strict";
|
||||
|
||||
var useragent = require("./useragent");
|
||||
|
||||
exports.get = function (url, callback) {
|
||||
var xhr = exports.createXhr();
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open('GET', url, true);
|
||||
xhr.onreadystatechange = function (evt) {
|
||||
xhr.onreadystatechange = function () {
|
||||
//Do not explicitly handle errors, those should be
|
||||
//visible via console output in the browser.
|
||||
if (xhr.readyState === 4) {
|
||||
|
|
@ -23,47 +21,19 @@ exports.get = function (url, callback) {
|
|||
xhr.send(null);
|
||||
};
|
||||
|
||||
var progIds = ['Msxml2.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.4.0'];
|
||||
|
||||
exports.createXhr = function() {
|
||||
//Would love to dump the ActiveX crap in here. Need IE 6 to die first.
|
||||
var xhr, i, progId;
|
||||
if (typeof XMLHttpRequest !== "undefined") {
|
||||
return new XMLHttpRequest();
|
||||
} else {
|
||||
for (i = 0; i < 3; i++) {
|
||||
progId = progIds[i];
|
||||
try {
|
||||
xhr = new ActiveXObject(progId);
|
||||
} catch (e) {}
|
||||
|
||||
if (xhr) {
|
||||
progIds = [progId]; // so faster next time
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!xhr) {
|
||||
throw new Error("createXhr(): XMLHttpRequest not available");
|
||||
}
|
||||
|
||||
return xhr;
|
||||
};
|
||||
|
||||
exports.loadScript = function(path, callback) {
|
||||
var head = document.getElementsByTagName('head')[0];
|
||||
var head = document.head || document.getElementsByTagName('head')[0];
|
||||
var s = document.createElement('script');
|
||||
|
||||
s.src = path;
|
||||
head.appendChild(s);
|
||||
|
||||
if (useragent.isOldIE)
|
||||
if (s.onload !== undefined)
|
||||
s.onload = callback;
|
||||
else
|
||||
s.onreadystatechange = function () {
|
||||
this.readyState == 'loaded' && callback();
|
||||
};
|
||||
else
|
||||
s.onload = callback;
|
||||
};
|
||||
|
||||
});
|
||||
|
|
|
|||
|
|
@ -70,11 +70,19 @@ var CssBehaviour = function () {
|
|||
this.add("colon", "deletion", function (state, action, editor, session, range) {
|
||||
var selected = session.doc.getTextRange(range);
|
||||
if (!range.isMultiLine() && selected === ':') {
|
||||
var line = session.doc.getLine(range.start.row);
|
||||
var rightChar = line.substring(range.end.column, range.end.column + 1);
|
||||
if (rightChar === ';') {
|
||||
range.end.column ++;
|
||||
return range;
|
||||
var cursor = editor.getCursorPosition();
|
||||
var iterator = new TokenIterator(session, cursor.row, cursor.column);
|
||||
var token = iterator.getCurrentToken();
|
||||
if (token && token.value.match(/\s+/)) {
|
||||
token = iterator.stepBackward();
|
||||
}
|
||||
if (token && token.type === 'support.type') {
|
||||
var line = session.doc.getLine(range.start.row);
|
||||
var rightChar = line.substring(range.end.column, range.end.column + 1);
|
||||
if (rightChar === ';') {
|
||||
range.end.column ++;
|
||||
return range;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
|
|||
9
lib/ace/mouse/dragdrop.js
vendored
9
lib/ace/mouse/dragdrop.js
vendored
|
|
@ -43,6 +43,9 @@ var DragdropHandler = function(mouseHandler) {
|
|||
event.addListener(mouseTarget, "dragenter", function(e) {
|
||||
if (editor.getReadOnly())
|
||||
return;
|
||||
var types = e.dataTransfer.types;
|
||||
if (types && Array.prototype.indexOf.call(types, 'Files') !== -1)
|
||||
return;
|
||||
counter++;
|
||||
if (!dragSelectionMarker) {
|
||||
range = editor.getSelectionRange();
|
||||
|
|
@ -59,6 +62,9 @@ var DragdropHandler = function(mouseHandler) {
|
|||
event.addListener(mouseTarget, "dragover", function(e) {
|
||||
if (editor.getReadOnly())
|
||||
return;
|
||||
var types = e.dataTransfer.types;
|
||||
if (types && Array.prototype.indexOf.call(types, 'Files') !== -1)
|
||||
return;
|
||||
x = e.clientX;
|
||||
y = e.clientY;
|
||||
return event.preventDefault(e);
|
||||
|
|
@ -73,6 +79,9 @@ var DragdropHandler = function(mouseHandler) {
|
|||
event.addListener(mouseTarget, "dragleave", function(e) {
|
||||
if (editor.getReadOnly())
|
||||
return;
|
||||
var types = e.dataTransfer.types;
|
||||
if (types && Array.prototype.indexOf.call(types, 'Files') !== -1)
|
||||
return;
|
||||
counter--;
|
||||
if (counter > 0)
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -36,7 +36,6 @@ var dom = require("./lib/dom");
|
|||
var event = require("./lib/event");
|
||||
var useragent = require("./lib/useragent");
|
||||
var config = require("./config");
|
||||
var net = require("./lib/net");
|
||||
var GutterLayer = require("./layer/gutter").Gutter;
|
||||
var MarkerLayer = require("./layer/marker").Marker;
|
||||
var TextLayer = require("./layer/text").Text;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue