From d584003a65a3f1121f9d00133758a706e3663a4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Agusti=CC=81n=20Rodri=CC=81guez?= Date: Tue, 9 Oct 2018 20:53:14 -0300 Subject: [PATCH 1/2] keeweb-mojave v0.0.1 --- docs/plugins/keeweb-mojave/manifest.json | 23 +++++++++++++++ docs/plugins/keeweb-mojave/plugin.css | 36 ++++++++++++++++++++++++ docs/plugins/keeweb-mojave/plugin.js | 24 ++++++++++++++++ 3 files changed, 83 insertions(+) create mode 100755 docs/plugins/keeweb-mojave/manifest.json create mode 100755 docs/plugins/keeweb-mojave/plugin.css create mode 100755 docs/plugins/keeweb-mojave/plugin.js diff --git a/docs/plugins/keeweb-mojave/manifest.json b/docs/plugins/keeweb-mojave/manifest.json new file mode 100755 index 0000000..e112459 --- /dev/null +++ b/docs/plugins/keeweb-mojave/manifest.json @@ -0,0 +1,23 @@ +{ + "version": "0.0.1", + "manifestVersion": "0.1.0", + "name": "keeweb-mojave", + "description": "A KeeWeb dark theme, inspired by the new Dark Mode of macOS Mojave", + "author": { + "name": "agurodriguez", + "email": "me@agurodriguez.net", + "url": "http://agurodriguez.net" + }, + "resources": { + "js": "NWC5B0XRzvPAYGrTuVJXRcOLiV65FWYClvNeFVaKh2l3uCIZmuLi3I+ja/MPg5JN/6mEeLYE262FrjYIGUo1ZQvN2VCNsQ2Y1C34tSEB2tvoO9LEHUPfCpNncX1JeQxdADuON6MEVPikfyR0KFoFoyCa56JqjUWfdRrPdnvRzHo568FfrIL+JRBIw06dxe2LxR36Mm0IhOxUjmiTcNl89NAMe0q55SWdsY/J8Dexn+2KKy9SNq9ahu8OZ60xW4XOvUpxNkuJl3y8JF6nmlnpGlgH00rROZnAmAYjGr3GHro4U307Fet1TU0IB0p3dMy+ShtDte31xgkMwdnh+wTCxg==", + "css": "yKwlcd8ppbHQ7jNGcebv/YUp+wpT8CSDWKZUfcZ60RZ4c8wbLoPEauCwSawGSNJe7ZZm9x7KqffRxlKNWNdZoVdaISN4tYTD/rmiwzrewxmH3rJvgAcOFoM1EvAFUdhEafS/Zv+p4YY9jg7GBEQ9I2shPDEKbRLkdlD5kpvkfP9rQeW1im51yYHuD9c+TIAswtLjRiBZ9ihq5uAKPF2eCTK8FYm3i7OvDjR+KaW4frUhyxniq954qlQs2kCvOiN3S1ixYLjSyNovMlXPx+O+Mdn0OCHyKRKJfDeMp2IB1E7EKt9c/Yvl3rLPfFVZe+gstLq+C4zeT5NxdB7eiHXciQ==" + }, + "licence": "MIT", + "url": "https://github.com/agurodriguez/keeweb-mojave", + "publicKey": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyeJsWMw8Fv6Wr/4hG1CAv4PW8xhO/rV+Yrf1dclJJvlvINeVqbm2DQpfvGoBbIS/3cM336l7stnrHA2Ae6G2FRl+zwBT199+Dq7n9N8qkXRqcdFU6CGBwTXyHubUhzwZljLc1n95n/UVKEyLABkj+5+ZUmWN1qi0Q3+bu0n1mswnLA1TWsXNe5yRifvNPENPiuUq8O394QUnztfNE4nLerFJ/3SJDml8F0mguFDPsImPx864HLHNlxyTllAHGt81mAcgFiUnPlNQ3nYGPwLT1yFMxNEWgFICOaUiwh2K0amnaW8rMVOmtCFF0Ob4U9ajWyKpTLr0Vaag56EibEb13QIDAQAB", + "license": "MIT", + "theme": { + "name": "mojave", + "title": "Mojave" + } +} \ No newline at end of file diff --git a/docs/plugins/keeweb-mojave/plugin.css b/docs/plugins/keeweb-mojave/plugin.css new file mode 100755 index 0000000..83f5001 --- /dev/null +++ b/docs/plugins/keeweb-mojave/plugin.css @@ -0,0 +1,36 @@ +.th-mojave { + --action-color: #185bc9; + --background-color: #1f1e1e; + --error-color: #ed5445; + --form-box-shadow-color-focus: transparent; + --intermediate-background-color: transparent; + --light-border-color: #141415; + --medium-color: #ffffff; + --secondary-background-color: #185bc9; + --text-color: #ffffff; + --text-contrast-action-color: #ffffff; + color: white; +} + +.th-mojave .app__menu { + background: #2c2d2f; +} + +.th-mojave .app__menu .menu__section { + border-color: transparent; +} + +.th-mojave .list__item--active .list__item-descr { + color: #78b0f9; +} + +.th-mojave .list__search-field { + background: rgb(53, 53, 55); + border-radius: 3px; + padding: .4em; +} + +.th-mojave .list__search-field .list__search-icon-search { + top: .4em; + right: .4em; +} \ No newline at end of file diff --git a/docs/plugins/keeweb-mojave/plugin.js b/docs/plugins/keeweb-mojave/plugin.js new file mode 100755 index 0000000..4bf430a --- /dev/null +++ b/docs/plugins/keeweb-mojave/plugin.js @@ -0,0 +1,24 @@ +/** + * KeeWeb plugin: keeweb-mojave + * @author agurodriguez + * @license MIT + */ + +const AppSettingsModel = require('models/app-settings-model'); +const FeatureDetector = require('util/feature-detector'); + +const FIRST_RUN_KEY = 'keeweb-mojave-first-run'; +const PREVIOUS_TITLEBAR_STYLE_KEY = 'keeweb-mojave-previous-titlebar-style'; + +if (FeatureDetector.isDesktop) { + if (!localStorage.getItem(FIRST_RUN_KEY)) { + localStorage.setItem(FIRST_RUN_KEY, true); + localStorage.setItem(PREVIOUS_TITLEBAR_STYLE_KEY, AppSettingsModel.instance.get('titlebarStyle')); + AppSettingsModel.instance.set('titlebarStyle', 'hidden'); + } +} + +module.exports.uninstall = function() { + localStorage.removeItem(FIRST_RUN_KEY); + localStorage.removeItem(PREVIOUS_TITLEBAR_STYLE_KEY); +}; \ No newline at end of file From 7fd9a78ba9860e0f8eed28bf37726717392c844f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Agusti=CC=81n=20Rodri=CC=81guez?= Date: Thu, 11 Oct 2018 10:26:03 -0300 Subject: [PATCH 2/2] use RuntimeDataModel instead of localStorage --- docs/plugins/keeweb-mojave/manifest.json | 2 +- docs/plugins/keeweb-mojave/plugin.js | 12 +++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/docs/plugins/keeweb-mojave/manifest.json b/docs/plugins/keeweb-mojave/manifest.json index e112459..d01fbeb 100755 --- a/docs/plugins/keeweb-mojave/manifest.json +++ b/docs/plugins/keeweb-mojave/manifest.json @@ -9,7 +9,7 @@ "url": "http://agurodriguez.net" }, "resources": { - "js": "NWC5B0XRzvPAYGrTuVJXRcOLiV65FWYClvNeFVaKh2l3uCIZmuLi3I+ja/MPg5JN/6mEeLYE262FrjYIGUo1ZQvN2VCNsQ2Y1C34tSEB2tvoO9LEHUPfCpNncX1JeQxdADuON6MEVPikfyR0KFoFoyCa56JqjUWfdRrPdnvRzHo568FfrIL+JRBIw06dxe2LxR36Mm0IhOxUjmiTcNl89NAMe0q55SWdsY/J8Dexn+2KKy9SNq9ahu8OZ60xW4XOvUpxNkuJl3y8JF6nmlnpGlgH00rROZnAmAYjGr3GHro4U307Fet1TU0IB0p3dMy+ShtDte31xgkMwdnh+wTCxg==", + "js": "ArG5VU9v7S/5F9ZwGfY1dLYjG/68x95i/+EaR9WeerC03laBBShN5USxcfImTqXogbWCibMs5PEIJ5/Ym++Ors8i4+qmRF39HCbJIqNTmWhdeqQwxygpmVxLXr8QYu9n97/0JYFp9X4x3+gsWtYfxB6TDIb0S2cz+UxSustOfet10CuGAn+J9zblt0/LVOMhTB5TLocbFhLcQT4WXQda1u6lWorGjUTbQgdHaA9RLiALLqfMsCa0yfjoGGcKTyAFbGljZbVdFMNhisomV90nk2uuvGvdyQ3KaoyqIy/Udc2osBmERxSmJtPMZGAl1hYZTrZMtPF4aa5CKy1nHIlwvQ==", "css": "yKwlcd8ppbHQ7jNGcebv/YUp+wpT8CSDWKZUfcZ60RZ4c8wbLoPEauCwSawGSNJe7ZZm9x7KqffRxlKNWNdZoVdaISN4tYTD/rmiwzrewxmH3rJvgAcOFoM1EvAFUdhEafS/Zv+p4YY9jg7GBEQ9I2shPDEKbRLkdlD5kpvkfP9rQeW1im51yYHuD9c+TIAswtLjRiBZ9ihq5uAKPF2eCTK8FYm3i7OvDjR+KaW4frUhyxniq954qlQs2kCvOiN3S1ixYLjSyNovMlXPx+O+Mdn0OCHyKRKJfDeMp2IB1E7EKt9c/Yvl3rLPfFVZe+gstLq+C4zeT5NxdB7eiHXciQ==" }, "licence": "MIT", diff --git a/docs/plugins/keeweb-mojave/plugin.js b/docs/plugins/keeweb-mojave/plugin.js index 4bf430a..dcc4db4 100755 --- a/docs/plugins/keeweb-mojave/plugin.js +++ b/docs/plugins/keeweb-mojave/plugin.js @@ -5,20 +5,18 @@ */ const AppSettingsModel = require('models/app-settings-model'); +const RuntimeDataModel = require('models/runtime-data-model'); const FeatureDetector = require('util/feature-detector'); const FIRST_RUN_KEY = 'keeweb-mojave-first-run'; -const PREVIOUS_TITLEBAR_STYLE_KEY = 'keeweb-mojave-previous-titlebar-style'; if (FeatureDetector.isDesktop) { - if (!localStorage.getItem(FIRST_RUN_KEY)) { - localStorage.setItem(FIRST_RUN_KEY, true); - localStorage.setItem(PREVIOUS_TITLEBAR_STYLE_KEY, AppSettingsModel.instance.get('titlebarStyle')); + if (!RuntimeDataModel.instance.get(FIRST_RUN_KEY)) { AppSettingsModel.instance.set('titlebarStyle', 'hidden'); + RuntimeDataModel.instance.set(FIRST_RUN_KEY, true); } } module.exports.uninstall = function() { - localStorage.removeItem(FIRST_RUN_KEY); - localStorage.removeItem(PREVIOUS_TITLEBAR_STYLE_KEY); -}; \ No newline at end of file + RuntimeDataModel.instance.unset(FIRST_RUN_KEY); +};