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 ***************************/
|
/************** dragover ***************************/
|
||||||
event.addListener(container, "dragover", function(e) {
|
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) {
|
event.addListener(container, "drop", function(e) {
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@ body {
|
||||||
#logo {
|
#logo {
|
||||||
padding: 15px;
|
padding: 15px;
|
||||||
margin-left: 70px;
|
margin-left: 70px;
|
||||||
|
border: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
#editor-container {
|
#editor-container {
|
||||||
|
|
|
||||||
|
|
@ -252,7 +252,7 @@
|
||||||
|
|
||||||
.ace_gutter-tooltip {
|
.ace_gutter-tooltip {
|
||||||
background-color: #FFF;
|
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));
|
background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));
|
||||||
border: 1px solid gray;
|
border: 1px solid gray;
|
||||||
border-radius: 1px;
|
border-radius: 1px;
|
||||||
|
|
@ -342,9 +342,7 @@
|
||||||
-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
|
-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
|
||||||
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 {
|
.ace_fold-widget.ace_invalid {
|
||||||
background-color: #FFB4B4;
|
background-color: #FFB4B4;
|
||||||
border-color: #DE5555;
|
border-color: #DE5555;
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,6 @@ define(function(require, exports, module) {
|
||||||
var config = require("./config");
|
var config = require("./config");
|
||||||
var oop = require("./lib/oop");
|
var oop = require("./lib/oop");
|
||||||
var lang = require("./lib/lang");
|
var lang = require("./lib/lang");
|
||||||
var net = require("./lib/net");
|
|
||||||
var EventEmitter = require("./lib/event_emitter").EventEmitter;
|
var EventEmitter = require("./lib/event_emitter").EventEmitter;
|
||||||
var Selection = require("./selection").Selection;
|
var Selection = require("./selection").Selection;
|
||||||
var TextMode = require("./mode/text").Mode;
|
var TextMode = require("./mode/text").Mode;
|
||||||
|
|
|
||||||
|
|
@ -39,15 +39,6 @@ exports.createElement = function(tag, ns) {
|
||||||
document.createElement(tag);
|
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) {
|
exports.hasCssClass = function(el, name) {
|
||||||
var classes = el.className.split(/\s+/g);
|
var classes = el.className.split(/\s+/g);
|
||||||
return classes.indexOf(name) !== -1;
|
return classes.indexOf(name) !== -1;
|
||||||
|
|
@ -143,7 +134,7 @@ exports.importCssString = function importCssString(cssText, id, doc) {
|
||||||
if (id)
|
if (id)
|
||||||
style.id = 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);
|
head.appendChild(style);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
@ -156,7 +147,7 @@ exports.importCssStylsheet = function(uri, doc) {
|
||||||
link.rel = 'stylesheet';
|
link.rel = 'stylesheet';
|
||||||
link.href = uri;
|
link.href = uri;
|
||||||
|
|
||||||
var head = doc.getElementsByTagName("head")[0] || doc.documentElement;
|
var head = doc.head || doc.getElementsByTagName("head")[0] || doc.documentElement;
|
||||||
head.appendChild(link);
|
head.appendChild(link);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
@ -259,22 +250,24 @@ exports.setInnerHtml = function(el, innerHtml) {
|
||||||
return element;
|
return element;
|
||||||
};
|
};
|
||||||
|
|
||||||
exports.setInnerText = function(el, innerText) {
|
if ("textContent" in document.documentElement) {
|
||||||
var document = el.ownerDocument;
|
exports.setInnerText = function(el, innerText) {
|
||||||
if (document.body && "textContent" in document.body)
|
|
||||||
el.textContent = innerText;
|
el.textContent = innerText;
|
||||||
else
|
};
|
||||||
el.innerText = innerText;
|
|
||||||
|
|
||||||
};
|
exports.getInnerText = function(el) {
|
||||||
|
|
||||||
exports.getInnerText = function(el) {
|
|
||||||
var document = el.ownerDocument;
|
|
||||||
if (document.body && "textContent" in document.body)
|
|
||||||
return el.textContent;
|
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) {
|
exports.getParentWindow = function(document) {
|
||||||
return document.defaultView || document.parentWindow;
|
return document.defaultView || document.parentWindow;
|
||||||
|
|
|
||||||
|
|
@ -301,10 +301,10 @@ if (window.postMessage && !useragent.isOldIE) {
|
||||||
|
|
||||||
|
|
||||||
exports.nextFrame = window.requestAnimationFrame ||
|
exports.nextFrame = window.requestAnimationFrame ||
|
||||||
window.oRequestAnimationFrame ||
|
|
||||||
window.msRequestAnimationFrame ||
|
|
||||||
window.mozRequestAnimationFrame ||
|
window.mozRequestAnimationFrame ||
|
||||||
window.webkitRequestAnimationFrame;
|
window.webkitRequestAnimationFrame ||
|
||||||
|
window.msRequestAnimationFrame ||
|
||||||
|
window.oRequestAnimationFrame;
|
||||||
|
|
||||||
if (exports.nextFrame)
|
if (exports.nextFrame)
|
||||||
exports.nextFrame = exports.nextFrame.bind(window);
|
exports.nextFrame = exports.nextFrame.bind(window);
|
||||||
|
|
|
||||||
|
|
@ -8,12 +8,10 @@
|
||||||
define(function(require, exports, module) {
|
define(function(require, exports, module) {
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var useragent = require("./useragent");
|
|
||||||
|
|
||||||
exports.get = function (url, callback) {
|
exports.get = function (url, callback) {
|
||||||
var xhr = exports.createXhr();
|
var xhr = new XMLHttpRequest();
|
||||||
xhr.open('GET', url, true);
|
xhr.open('GET', url, true);
|
||||||
xhr.onreadystatechange = function (evt) {
|
xhr.onreadystatechange = function () {
|
||||||
//Do not explicitly handle errors, those should be
|
//Do not explicitly handle errors, those should be
|
||||||
//visible via console output in the browser.
|
//visible via console output in the browser.
|
||||||
if (xhr.readyState === 4) {
|
if (xhr.readyState === 4) {
|
||||||
|
|
@ -23,47 +21,19 @@ exports.get = function (url, callback) {
|
||||||
xhr.send(null);
|
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) {
|
exports.loadScript = function(path, callback) {
|
||||||
var head = document.getElementsByTagName('head')[0];
|
var head = document.head || document.getElementsByTagName('head')[0];
|
||||||
var s = document.createElement('script');
|
var s = document.createElement('script');
|
||||||
|
|
||||||
s.src = path;
|
s.src = path;
|
||||||
head.appendChild(s);
|
head.appendChild(s);
|
||||||
|
|
||||||
if (useragent.isOldIE)
|
if (s.onload !== undefined)
|
||||||
|
s.onload = callback;
|
||||||
|
else
|
||||||
s.onreadystatechange = function () {
|
s.onreadystatechange = function () {
|
||||||
this.readyState == 'loaded' && callback();
|
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) {
|
this.add("colon", "deletion", function (state, action, editor, session, range) {
|
||||||
var selected = session.doc.getTextRange(range);
|
var selected = session.doc.getTextRange(range);
|
||||||
if (!range.isMultiLine() && selected === ':') {
|
if (!range.isMultiLine() && selected === ':') {
|
||||||
var line = session.doc.getLine(range.start.row);
|
var cursor = editor.getCursorPosition();
|
||||||
var rightChar = line.substring(range.end.column, range.end.column + 1);
|
var iterator = new TokenIterator(session, cursor.row, cursor.column);
|
||||||
if (rightChar === ';') {
|
var token = iterator.getCurrentToken();
|
||||||
range.end.column ++;
|
if (token && token.value.match(/\s+/)) {
|
||||||
return range;
|
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) {
|
event.addListener(mouseTarget, "dragenter", function(e) {
|
||||||
if (editor.getReadOnly())
|
if (editor.getReadOnly())
|
||||||
return;
|
return;
|
||||||
|
var types = e.dataTransfer.types;
|
||||||
|
if (types && Array.prototype.indexOf.call(types, 'Files') !== -1)
|
||||||
|
return;
|
||||||
counter++;
|
counter++;
|
||||||
if (!dragSelectionMarker) {
|
if (!dragSelectionMarker) {
|
||||||
range = editor.getSelectionRange();
|
range = editor.getSelectionRange();
|
||||||
|
|
@ -59,6 +62,9 @@ var DragdropHandler = function(mouseHandler) {
|
||||||
event.addListener(mouseTarget, "dragover", function(e) {
|
event.addListener(mouseTarget, "dragover", function(e) {
|
||||||
if (editor.getReadOnly())
|
if (editor.getReadOnly())
|
||||||
return;
|
return;
|
||||||
|
var types = e.dataTransfer.types;
|
||||||
|
if (types && Array.prototype.indexOf.call(types, 'Files') !== -1)
|
||||||
|
return;
|
||||||
x = e.clientX;
|
x = e.clientX;
|
||||||
y = e.clientY;
|
y = e.clientY;
|
||||||
return event.preventDefault(e);
|
return event.preventDefault(e);
|
||||||
|
|
@ -73,6 +79,9 @@ var DragdropHandler = function(mouseHandler) {
|
||||||
event.addListener(mouseTarget, "dragleave", function(e) {
|
event.addListener(mouseTarget, "dragleave", function(e) {
|
||||||
if (editor.getReadOnly())
|
if (editor.getReadOnly())
|
||||||
return;
|
return;
|
||||||
|
var types = e.dataTransfer.types;
|
||||||
|
if (types && Array.prototype.indexOf.call(types, 'Files') !== -1)
|
||||||
|
return;
|
||||||
counter--;
|
counter--;
|
||||||
if (counter > 0)
|
if (counter > 0)
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,6 @@ var dom = require("./lib/dom");
|
||||||
var event = require("./lib/event");
|
var event = require("./lib/event");
|
||||||
var useragent = require("./lib/useragent");
|
var useragent = require("./lib/useragent");
|
||||||
var config = require("./config");
|
var config = require("./config");
|
||||||
var net = require("./lib/net");
|
|
||||||
var GutterLayer = require("./layer/gutter").Gutter;
|
var GutterLayer = require("./layer/gutter").Gutter;
|
||||||
var MarkerLayer = require("./layer/marker").Marker;
|
var MarkerLayer = require("./layer/marker").Marker;
|
||||||
var TextLayer = require("./layer/text").Text;
|
var TextLayer = require("./layer/text").Text;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue