Skip to content

Commit f92c35d

Browse files
committed
1.0.8 Final
1 parent 8afe27e commit f92c35d

File tree

3 files changed

+120
-30
lines changed

3 files changed

+120
-30
lines changed

manifest.json

Lines changed: 90 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
2-
"version": "1.0.79",
2+
"version": "1.0.8",
33
"manifest_version": 2,
44
"minimum_chrome_version": "51",
55
"name": "Code Pad IDE",
66
"short_name": "Code Pad IDE",
7-
"description": "An awesome multi-language programming IDE (editor), crafted for ChromeOS & released under GPL3.0!",
7+
"description": "An multi-language code IDE / text editor crafted for ChromeOS, built as a hobby free to use and amend!",
88
"author": "Andrew Borg",
99
"homepage_url": "https://github.com/andrewbrg/codepad-chrome-app",
1010
"offline_enabled": true,
@@ -18,17 +18,97 @@
1818
},
1919
"file_handlers": {
2020
"text": {
21+
"extensions": [
22+
"as",
23+
"as3",
24+
"asm",
25+
"bat",
26+
"c",
27+
"cc",
28+
"cfc",
29+
"cfm",
30+
"cgi",
31+
"coffee",
32+
"conf",
33+
"cpp",
34+
"cs",
35+
"csh",
36+
"css",
37+
"csv",
38+
"dart",
39+
"diff",
40+
"do",
41+
"ejs",
42+
"el",
43+
"erb",
44+
"glsl",
45+
"go",
46+
"h",
47+
"haml",
48+
"handlebars",
49+
"haxe",
50+
"hs",
51+
"htm",
52+
"html",
53+
"htmls",
54+
"ini",
55+
"jade",
56+
"java",
57+
"js",
58+
"json",
59+
"ksh",
60+
"less",
61+
"log",
62+
"love",
63+
"lua",
64+
"m",
65+
"make",
66+
"man",
67+
"manifest",
68+
"markdown",
69+
"mat",
70+
"md",
71+
"mdoc",
72+
"me",
73+
"micro",
74+
"obc",
75+
"patch",
76+
"php",
77+
"pkb",
78+
"pkg",
79+
"pks",
80+
"pl",
81+
"pls",
82+
"pm",
83+
"ps",
84+
"py",
85+
"r",
86+
"rake",
87+
"rb",
88+
"sass",
89+
"scala",
90+
"scss",
91+
"sh",
92+
"shtml",
93+
"sql",
94+
"styl",
95+
"svg",
96+
"tex",
97+
"text",
98+
"ts",
99+
"tsv",
100+
"txt",
101+
"vbs",
102+
"vcf",
103+
"xml",
104+
"yaml",
105+
"yml",
106+
"zsh"
107+
],
21108
"types": [
22109
"text/*",
23110
"image/svg+xml",
24-
"application/x-sh",
25-
"application/x-csh",
26-
"application/x-shellscript",
27-
"application/javascript",
28-
"application/typescript",
29-
"application/json",
30-
"application/xhtml+xml",
31-
"application/xml"
111+
"application/*"
32112
]
33113
}
34114
},

src/js/handlers/editors.js

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ var EditorsHandler = function () {
44
this.IdeSettings = undefined;
55
this.Files = undefined;
66
this.Modelist = ace.require("ace/ext/modelist");
7-
this.Modelist = ace.require("ace/ext/chromevox");
87
this.StatusBar = ace.require('ace/ext/statusbar').StatusBar;
98

109
this.idx = 0;
@@ -665,8 +664,8 @@ var EditorsHandler = function () {
665664
}
666665
});
667666
});
668-
669-
667+
668+
ace.require("ace/ext/chromevox");
670669
};
671670

672671
/*######################################################
@@ -784,7 +783,8 @@ var EditorsHandler = function () {
784783
this.editorDataObjs.forEach(function (editorDataObj) {
785784
if (editorDataObj.idx === idx) {
786785
editorDataObj.fileEntry = fileEntry;
787-
found = true;
786+
787+
found = true;
788788
}
789789
});
790790

@@ -973,6 +973,8 @@ var EditorsHandler = function () {
973973
var obj = this._getNewTabObject(fileExt, fileName, nodeId);
974974
this.getTabsNavContainer().append(obj.nav);
975975
this.getTabsContentContainer().append(obj.content);
976+
977+
976978
this._bootAceEditor(obj.idx, fileContent, fileEntry).then(function () {
977979
that.setTabNavFocus(obj.idx);
978980
that._sortableTabsInit();

src/js/handlers/files.js

Lines changed: 24 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,27 @@ var FilesHandler = function () {
149149
return deferred.promise();
150150
};
151151

152+
this._isValidFileMime = function (file) {
153+
154+
var valid = false;
155+
156+
console.log(file.type);
157+
158+
if (typeof file.type === typeof undefined ||
159+
file.type === 'undefined' ||
160+
file.type === '') {
161+
return true;
162+
}
163+
164+
this.allowedMimeTypes.forEach(function (mime) {
165+
if (file.type.match(mime)) {
166+
valid = true;
167+
}
168+
});
169+
170+
return valid;
171+
};
172+
152173
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
153174

154175

@@ -197,19 +218,13 @@ var FilesHandler = function () {
197218
var files = event.originalEvent.dataTransfer.items;
198219
for (var i = 0; i < files.length; i++) {
199220

200-
var valid = false;
201-
var file = files[i];
221+
var file = files[i];
202222

203223
// noinspection JSUnresolvedFunction
204224
var fileEntry = file.webkitGetAsEntry();
205225
if (file.kind === 'file' && fileEntry) {
206-
that.allowedMimeTypes.forEach(function (mime) {
207-
if (file.type === '' || file.type.match(mime)) {
208-
valid = true;
209-
}
210-
});
211226

212-
if (valid) {
227+
if (that._isValidFileMime(file)) {
213228
promises.push(that.fileOpen(fileEntry));
214229
}
215230
else {
@@ -255,16 +270,9 @@ var FilesHandler = function () {
255270
else {
256271
fileEntry.file(function (file) {
257272

258-
var valid = false;
259273
var reader = new FileReader();
260274

261-
that.allowedMimeTypes.forEach(function (mime) {
262-
if (file.type === '' || file.type.match(mime)) {
263-
valid = true;
264-
}
265-
});
266-
267-
if (!valid) {
275+
if (!that._isValidFileMime(file)) {
268276
onError(file.name + ' has an unsupported file type (' + file.type + ') and will not be opened');
269277
} else {
270278
reader.readAsText(file);

0 commit comments

Comments
 (0)