Replace localStorage calls with prefs calls

This commit is contained in:
hideheader 2015-03-03 18:04:27 -05:00
parent e7f6c62e01
commit f54a70fe07
5 changed files with 8 additions and 22 deletions

View File

@ -316,7 +316,7 @@ chrome.tabs.onAttached.addListener(function(tabId, data) {
if (tabData.url.indexOf(editFullUrl) == 0) { if (tabData.url.indexOf(editFullUrl) == 0) {
chrome.windows.get(tabData.windowId, {populate: true}, function(win) { chrome.windows.get(tabData.windowId, {populate: true}, function(win) {
// If there's only one tab in this window, it's been dragged to new window // If there's only one tab in this window, it's been dragged to new window
localStorage['openEditInWindow'] = win.tabs.length == 1 ? "true" : "false"; prefs.setPref('openEditInWindow', win.tabs.length == 1);
}); });
} }
}); });

View File

@ -24,7 +24,7 @@ function setupCodeMirror(textarea) {
gutters: ["CodeMirror-linenumbers", "CodeMirror-foldgutter", "CodeMirror-lint-markers"], gutters: ["CodeMirror-linenumbers", "CodeMirror-foldgutter", "CodeMirror-lint-markers"],
matchBrackets: true, matchBrackets: true,
lint: CodeMirror.lint.css, lint: CodeMirror.lint.css,
smartIndent: (typeof localStorage["smart-indent"] == "undefined") || localStorage["smart-indent"] == "true", smartIndent: prefs.getPref("smart-indent"),
extraKeys: {"Ctrl-Space": "autocomplete"} extraKeys: {"Ctrl-Space": "autocomplete"}
}); });
editors.push(cm); editors.push(cm);

View File

@ -10,7 +10,7 @@ function notifyAllTabs(request) {
} }
function updateBadgeText(tab) { function updateBadgeText(tab) {
if (localStorage["show-badge"] == "true") { if (prefs.getPref("show-badge")) {
function stylesReceived(styles) { function stylesReceived(styles) {
var t = getBadgeText(styles); var t = getBadgeText(styles);
console.log("Tab " + tab.id + " (" + tab.url + ") badge text set to '" + t + "'."); console.log("Tab " + tab.id + " (" + tab.url + ") badge text set to '" + t + "'.");

View File

@ -122,7 +122,7 @@ function getId(event) {
function openLinkInTabOrWindow(event) { function openLinkInTabOrWindow(event) {
event.preventDefault(); event.preventDefault();
if (localStorage['openEditInWindow'] == 'true') { if (prefs.getPref('openEditInWindow', false)) {
chrome.windows.create({url: event.target.href}); chrome.windows.create({url: event.target.href});
} else { } else {
chrome.tabs.create({url: event.target.href}); chrome.tabs.create({url: event.target.href});

View File

@ -21,20 +21,10 @@ function getDatabase(ready, error) {
} else if (stylishDb.version == "1.4") { } else if (stylishDb.version == "1.4") {
dbV15(stylishDb, error, ready); dbV15(stylishDb, error, ready);
} else { } else {
defaultPrefs();
ready(stylishDb); ready(stylishDb);
} }
} }
function defaultPrefs() {
if (!("show-badge" in localStorage)) {
localStorage["show-badge"] = true;
}
if (!("smart-indent" in localStorage)) {
localStorage["smart-indent"] = true;
}
}
function dbV11(d, error, done) { function dbV11(d, error, done) {
d.changeVersion(d.version, '1.1', function (t) { d.changeVersion(d.version, '1.1', function (t) {
t.executeSql('CREATE TABLE styles (id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, url TEXT, updateUrl TEXT, md5Url TEXT, name TEXT NOT NULL, code TEXT NOT NULL, enabled INTEGER NOT NULL, originalCode TEXT NULL);'); t.executeSql('CREATE TABLE styles (id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, url TEXT, updateUrl TEXT, md5Url TEXT, name TEXT NOT NULL, code TEXT NOT NULL, enabled INTEGER NOT NULL, originalCode TEXT NULL);');
@ -148,20 +138,16 @@ function isCheckbox(el) {
function changePref(event) { function changePref(event) {
var el = event.target; var el = event.target;
var value = isCheckbox(el) ? el.checked : el.value; prefs.setPref(el.id, isCheckbox(el) ? el.checked : el.value);
localStorage[el.id] = value
notifyAllTabs({method: "prefChanged", prefName: el.id, value: value});
} }
// Accepts a hash of pref name to default value // Accepts a hash of pref name to default value
function loadPrefs(prefs) { function loadPrefs(prefs) {
for (var id in prefs) { for (var id in prefs) {
var value = typeof localStorage[id] == "undefined" ? prefs[id] : localStorage[id]; var value = this.prefs.getPref(id);
var el = document.getElementById(id); var el = document.getElementById(id);
if (isCheckbox(el)) { if (isCheckbox(el)) {
if (value == "true") { el.checked = value;
el.checked = true;
}
} else { } else {
el.value = value; el.value = value;
} }
@ -174,7 +160,7 @@ var prefs = {
// defaults // defaults
"openEditInWindow": false, // new editor opens in a own browser window "openEditInWindow": false, // new editor opens in a own browser window
"show-badge": false, // display text on popup menu icon "show-badge": true, // display text on popup menu icon
"smart-indent": true, // CodeMirror smart indent "smart-indent": true, // CodeMirror smart indent
"popup.breadcrumbs": true, // display "New style" links as URL breadcrumbs "popup.breadcrumbs": true, // display "New style" links as URL breadcrumbs