diff --git a/src/options.html b/src/options.html index 8fdee9e..cba4b29 100644 --- a/src/options.html +++ b/src/options.html @@ -17,6 +17,10 @@ margin: 5px 0; font-size: inherit; } + .status { + color: green; + margin-bottom: 10px; + } label { display: block; margin: 10px 0; @@ -31,7 +35,7 @@ Preserve last written code -
+
 
diff --git a/src/options.js b/src/options.js index 77c8f65..54c4682 100644 --- a/src/options.js +++ b/src/options.js @@ -16,7 +16,7 @@ function saveOptions(e) { var status = document.getElementById('js-status'); status.textContent = 'Settings saved.'; setTimeout(function() { - status.textContent = ''; + status.innerHTML = ' '; }, 750); }); diff --git a/src/script.js b/src/script.js index 8a2349a..ad10aa3 100644 --- a/src/script.js +++ b/src/script.js @@ -157,6 +157,8 @@ }); function init () { + var lastCode; + layoutBtn1.addEventListener('click', function () { saveSetting('layoutMode', 1); toggleLayout(1); return false; }); layoutBtn2.addEventListener('click', function () { saveSetting('layoutMode', 2); toggleLayout(2); return false; }); layoutBtn3.addEventListener('click', function () { saveSetting('layoutMode', 3); toggleLayout(3); return false; }); @@ -233,9 +235,18 @@ }, function localGetCallback(result) { toggleLayout(result.layoutMode); if (result.code) { - editur.cm.html.setValue(result.code.html); - editur.cm.css.setValue(result.code.css); - editur.cm.js.setValue(result.code.js); + lastCode = result.code; + } + }); + + // Get synced `preserveLastCode` setting to get back last code (or not). + chrome.storage.sync.get({ + preserveLastCode: true + }, function syncGetCallback(result) { + if (result.preserveLastCode && lastCode) { + editur.cm.html.setValue(lastCode.html); + editur.cm.css.setValue(lastCode.css); + editur.cm.js.setValue(lastCode.js); editur.cm.html.refresh(); editur.cm.css.refresh(); editur.cm.js.refresh();