mirror of
https://github.com/chinchang/web-maker.git
synced 2025-07-10 16:46:28 +02:00
resolve conflicts n merge master.
This commit is contained in:
@ -16,6 +16,8 @@ Web-Maker
|
|||||||
* Save as HTML file
|
* Save as HTML file
|
||||||
* Edit in CodePen
|
* Edit in CodePen
|
||||||
|
|
||||||
|
Follow [@webmaker_app](https://twitter.com/intent/follow?screen_name=webmaker_app) for updates or tweet out feature requests and suggestions.
|
||||||
|
|
||||||
### License
|
### License
|
||||||
|
|
||||||
MIT Licensed
|
MIT Licensed
|
||||||
|
22
src/analytics.js
Normal file
22
src/analytics.js
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
window.trackEvent = function (category, action, label, value) {
|
||||||
|
if (window.ga) {
|
||||||
|
ga('send', 'event', category, action, label, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// if online, load after 2 seconds
|
||||||
|
if (navigator.onLine) {
|
||||||
|
setTimeout(function() {
|
||||||
|
(function(i,s,o,g,r,a,m){
|
||||||
|
i['GoogleAnalyticsObject']=r;
|
||||||
|
i[r]=i[r]||function(){
|
||||||
|
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||||
|
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||||
|
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||||
|
|
||||||
|
ga('create', 'UA-87786708-1', {'cookieDomain': 'none'});
|
||||||
|
// required for chrome extension protocol
|
||||||
|
ga('set', 'checkProtocolTask', function(){ /* nothing */ });
|
||||||
|
ga('send', 'pageview');
|
||||||
|
}, 0);
|
||||||
|
}
|
@ -732,11 +732,11 @@
|
|||||||
<script src="lib/escodegen.browser.min.js"></script>
|
<script src="lib/escodegen.browser.min.js"></script>
|
||||||
|
|
||||||
<script src="utils.js"></script>
|
<script src="utils.js"></script>
|
||||||
|
<script src="analytics.js"></script>
|
||||||
<script src="deferred.js"></script>
|
<script src="deferred.js"></script>
|
||||||
<script src="loader.js"></script>
|
<script src="loader.js"></script>
|
||||||
<script src="notifications.js"></script>
|
<script src="notifications.js"></script>
|
||||||
<script src="script.js"></script>
|
<script src="script.js"></script>
|
||||||
<script src="dropdown.js"></script>
|
<script src="dropdown.js"></script>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "Web Maker",
|
"name": "Web Maker",
|
||||||
"version": "1.7.1",
|
"version": "1.7.2",
|
||||||
"manifest_version": 2,
|
"manifest_version": 2,
|
||||||
"description": "Convert new tabs into an offline playground for your web experiments",
|
"description": "Convert new tabs into an offline playground for your web experiments",
|
||||||
"homepage_url": "https://kushagragour.in/lab/web-maker",
|
"homepage_url": "https://kushagragour.in/lab/web-maker",
|
||||||
@ -8,7 +8,7 @@
|
|||||||
"storage",
|
"storage",
|
||||||
"tabs"
|
"tabs"
|
||||||
],
|
],
|
||||||
"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'",
|
"content_security_policy": "script-src 'self' https://www.google-analytics.com 'unsafe-eval'; object-src 'self'",
|
||||||
"options_ui": {
|
"options_ui": {
|
||||||
"page": "options.html",
|
"page": "options.html",
|
||||||
"chrome_style": true
|
"chrome_style": true
|
||||||
|
@ -113,6 +113,7 @@
|
|||||||
document.body.classList.add('layout-' + mode);
|
document.body.classList.add('layout-' + mode);
|
||||||
|
|
||||||
resetSplitting();
|
resetSplitting();
|
||||||
|
trackEvent('ui', 'toggleLayout', mode);
|
||||||
}
|
}
|
||||||
|
|
||||||
function saveSetting(setting, value, cb) {
|
function saveSetting(setting, value, cb) {
|
||||||
@ -270,6 +271,7 @@
|
|||||||
handleModeRequirements(value);
|
handleModeRequirements(value);
|
||||||
editur.cm.html.setOption('mode', modes[value].cmMode);
|
editur.cm.html.setOption('mode', modes[value].cmMode);
|
||||||
CodeMirror.autoLoadMode(editur.cm.html, modes[value].cmMode);
|
CodeMirror.autoLoadMode(editur.cm.html, modes[value].cmMode);
|
||||||
|
trackEvent('ui', 'updateCodeMode', 'html', value);
|
||||||
}
|
}
|
||||||
function updateCssMode(value) {
|
function updateCssMode(value) {
|
||||||
cssMode = value;
|
cssMode = value;
|
||||||
@ -277,6 +279,7 @@
|
|||||||
handleModeRequirements(value);
|
handleModeRequirements(value);
|
||||||
editur.cm.css.setOption('mode', modes[value].cmMode);
|
editur.cm.css.setOption('mode', modes[value].cmMode);
|
||||||
CodeMirror.autoLoadMode(editur.cm.css, modes[value].cmMode);
|
CodeMirror.autoLoadMode(editur.cm.css, modes[value].cmMode);
|
||||||
|
trackEvent('ui', 'updateCodeMode', 'css', value);
|
||||||
}
|
}
|
||||||
function updateJsMode(value) {
|
function updateJsMode(value) {
|
||||||
jsMode = value;
|
jsMode = value;
|
||||||
@ -284,6 +287,7 @@
|
|||||||
handleModeRequirements(value);
|
handleModeRequirements(value);
|
||||||
editur.cm.js.setOption('mode', modes[value].cmMode);
|
editur.cm.js.setOption('mode', modes[value].cmMode);
|
||||||
CodeMirror.autoLoadMode(editur.cm.js, modes[value].cmMode);
|
CodeMirror.autoLoadMode(editur.cm.js, modes[value].cmMode);
|
||||||
|
trackEvent('ui', 'updateCodeMode', 'js', value);
|
||||||
// FIXME: Will be saved as part of global settings
|
// FIXME: Will be saved as part of global settings
|
||||||
/*
|
/*
|
||||||
chrome.storage.sync.set({
|
chrome.storage.sync.set({
|
||||||
@ -469,6 +473,7 @@
|
|||||||
document.body.appendChild(a);
|
document.body.appendChild(a);
|
||||||
a.click();
|
a.click();
|
||||||
a.remove();
|
a.remove();
|
||||||
|
trackEvent('fn', 'saveFileComplete');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -524,6 +529,7 @@
|
|||||||
|
|
||||||
utils.onButtonClick(helpBtn, function () {
|
utils.onButtonClick(helpBtn, function () {
|
||||||
helpModal.classList.toggle('is-modal-visible');
|
helpModal.classList.toggle('is-modal-visible');
|
||||||
|
trackEvent('ui', 'helpButtonClick');
|
||||||
});
|
});
|
||||||
|
|
||||||
notificationsBtn.addEventListener('click', function () {
|
notificationsBtn.addEventListener('click', function () {
|
||||||
@ -535,6 +541,7 @@
|
|||||||
lastSeenVersion: version
|
lastSeenVersion: version
|
||||||
}, function () {});
|
}, function () {});
|
||||||
}
|
}
|
||||||
|
trackEvent('ui', 'notificationButtonClick');
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -557,10 +564,14 @@
|
|||||||
.replace(/'/g, "'")
|
.replace(/'/g, "'")
|
||||||
codepenForm.querySelector('input').value = json;
|
codepenForm.querySelector('input').value = json;
|
||||||
codepenForm.submit();
|
codepenForm.submit();
|
||||||
|
trackEvent('ui', 'openInCodepen');
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
});
|
});
|
||||||
|
|
||||||
utils.onButtonClick(saveHtmlBtn, saveFile);
|
utils.onButtonClick(saveHtmlBtn, function () {
|
||||||
|
saveFile();
|
||||||
|
trackEvent('ui', 'saveHtmlClick');
|
||||||
|
});
|
||||||
utils.onButtonClick(openBtn, openSavedItemsPane);
|
utils.onButtonClick(openBtn, openSavedItemsPane);
|
||||||
utils.onButtonClick(saveBtn, saveItem);
|
utils.onButtonClick(saveBtn, saveItem);
|
||||||
utils.onButtonClick(newBtn, createNewItem);
|
utils.onButtonClick(newBtn, createNewItem);
|
||||||
@ -622,6 +633,7 @@
|
|||||||
if ((event.ctrlKey || event.metaKey) && (event.keyCode === 83)){
|
if ((event.ctrlKey || event.metaKey) && (event.keyCode === 83)){
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
saveFile();
|
saveFile();
|
||||||
|
trackEvent('ui', 'saveFileKeyboardShortcut');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -646,6 +658,7 @@
|
|||||||
url: 'chrome://extensions?options=' + chrome.i18n.getMessage('@@extension_id')
|
url: 'chrome://extensions?options=' + chrome.i18n.getMessage('@@extension_id')
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
trackEvent('ui', 'settingsBtnClick');
|
||||||
});
|
});
|
||||||
|
|
||||||
chrome.storage.local.get({
|
chrome.storage.local.get({
|
||||||
|
Reference in New Issue
Block a user