kopia lustrzana https://github.com/c9/core
fix window settings support
rodzic
e85877568d
commit
73d46031f9
|
@ -177,7 +177,7 @@ define(function(require, exports, module) {
|
|||
if (!node) return;
|
||||
|
||||
// Get XML string
|
||||
var json = util.stableStringify(node, 0, " ");
|
||||
var json = util.stableStringify(node, null, type == "state" ? "" : 4);
|
||||
if (cache[type] == json) return; // Ignore if same as cache
|
||||
|
||||
// Set Cache
|
||||
|
@ -192,7 +192,7 @@ define(function(require, exports, module) {
|
|||
// Detect whether we're in standalone mode
|
||||
var standalone = !options.hosted;
|
||||
|
||||
if (standalone || type == "project") {
|
||||
if (standalone || type == "project" || skipCloud[type]) {
|
||||
fs.writeFile(PATH[type], json, forceSync, function(err) {});
|
||||
|
||||
if (standalone && !saveToCloud[type] || skipCloud[type])
|
||||
|
@ -237,7 +237,7 @@ define(function(require, exports, module) {
|
|||
});
|
||||
}
|
||||
|
||||
if (!c9.debug) {
|
||||
if (!c9.debug && !testing) {
|
||||
try {
|
||||
emit("read", {
|
||||
model: model,
|
||||
|
@ -245,6 +245,8 @@ define(function(require, exports, module) {
|
|||
reset: isReset
|
||||
});
|
||||
} catch (e) {
|
||||
console.error("Error loading settings, reseting to defaults");
|
||||
console.error(e);
|
||||
fs.writeFile(PATH.project
|
||||
+ ".broken", JSON.stringify(json), function() {});
|
||||
|
||||
|
|
|
@ -61,7 +61,7 @@ define(function(require, exports, module) {
|
|||
}, plugin);
|
||||
|
||||
plugin.on("newListener", function(type, listener) {
|
||||
if (type == "eachTheme")
|
||||
if (type == "eachTheme" && plugin.hasTheme)
|
||||
listener({});
|
||||
}, plugin);
|
||||
|
||||
|
@ -127,8 +127,6 @@ define(function(require, exports, module) {
|
|||
window.addEventListener("resize", resize, false);
|
||||
window.addEventListener("focus", resize, false);
|
||||
|
||||
setGeckoMask();
|
||||
|
||||
plugin.addOther(function() {
|
||||
window.removeEventListener("resize", resize, false);
|
||||
window.removeEventListener("focus", resize, false);
|
||||
|
@ -181,9 +179,10 @@ define(function(require, exports, module) {
|
|||
changeTheme();
|
||||
}
|
||||
function changeTheme() {
|
||||
if (!oldTheme) return;
|
||||
|
||||
emit("eachTheme", { changed: true });
|
||||
setGeckoMask();
|
||||
|
||||
if (!oldTheme) return;
|
||||
|
||||
var auto = emit("themeChange", {
|
||||
theme: theme,
|
||||
|
@ -191,8 +190,6 @@ define(function(require, exports, module) {
|
|||
type: type
|
||||
}) !== false;
|
||||
|
||||
setGeckoMask();
|
||||
|
||||
if (noquestion) return;
|
||||
|
||||
if (auto)
|
||||
|
@ -593,6 +590,10 @@ define(function(require, exports, module) {
|
|||
get theme() {
|
||||
return theme;
|
||||
},
|
||||
|
||||
get hasTheme() {
|
||||
return !ui.packedThemes || !!removeTheme
|
||||
},
|
||||
|
||||
/**
|
||||
* Returns an AMLElement that can server as a parent.
|
||||
|
|
|
@ -273,20 +273,22 @@ define(function(require, exports, module) {
|
|||
layout.on("themeChange", function(e) {
|
||||
setSettings();
|
||||
|
||||
var skin = e.oldTheme;
|
||||
if (!(settings.get("user/terminal/@backgroundColor") == defaults[skin][0] &&
|
||||
settings.get("user/terminal/@foregroundColor") == defaults[skin][1] &&
|
||||
settings.get("user/terminal/@selectionColor") == defaults[skin][2] &&
|
||||
settings.get("user/terminal/@antialiasedfonts") == defaults[skin][3]))
|
||||
var colors = defaults[e.oldTheme];
|
||||
if (!colors) return;
|
||||
if (!(settings.get("user/terminal/@backgroundColor") == colors[0] &&
|
||||
settings.get("user/terminal/@foregroundColor") == colors[1] &&
|
||||
settings.get("user/terminal/@selectionColor") == colors[2] &&
|
||||
settings.get("user/terminal/@antialiasedfonts") == colors[3]))
|
||||
return false;
|
||||
});
|
||||
|
||||
layout.on("themeDefaults", function(e) {
|
||||
var skin = e.theme;
|
||||
settings.set("user/terminal/@backgroundColor", defaults[skin][0]);
|
||||
settings.set("user/terminal/@foregroundColor", defaults[skin][1]);
|
||||
settings.set("user/terminal/@selectionColor", defaults[skin][2]);
|
||||
settings.set("user/terminal/@antialiasedfonts", defaults[skin][3]);
|
||||
var colors = defaults[e.theme];
|
||||
if (!colors) return;
|
||||
settings.set("user/terminal/@backgroundColor", colors[0]);
|
||||
settings.set("user/terminal/@foregroundColor", colors[1]);
|
||||
settings.set("user/terminal/@selectionColor", colors[2]);
|
||||
settings.set("user/terminal/@antialiasedfonts", colors[3]);
|
||||
}, handle);
|
||||
|
||||
// Settings UI
|
||||
|
|
Ładowanie…
Reference in New Issue