From 1d186b900696cf0c4c11fe949d75f0c04e8e1a56 Mon Sep 17 00:00:00 2001 From: benweet Date: Tue, 21 May 2013 23:34:42 +0100 Subject: [PATCH] Theming support --- cache.manifest | 2 + css/default.css | 549 +++++++++++++++++++++ css/main.css | 549 +-------------------- doc/theming.md | 2 + img/ajax-loader.gif | Bin 404 -> 404 bytes img/glyphicons-halflings-white.png | Bin 22591 -> 28008 bytes index.html | 28 +- js/config.js | 5 + js/core.js | 10 + themes/blue-gray/ajax-loader-blue-gray.gif | Bin 0 -> 404 bytes themes/blue-gray/blue-gray.css | 65 +++ viewer.html | 18 +- 12 files changed, 664 insertions(+), 564 deletions(-) create mode 100644 css/default.css create mode 100644 doc/theming.md create mode 100644 themes/blue-gray/ajax-loader-blue-gray.gif create mode 100644 themes/blue-gray/blue-gray.css diff --git a/cache.manifest b/cache.manifest index e97a3522..b68cb183 100644 --- a/cache.manifest +++ b/cache.manifest @@ -93,6 +93,8 @@ lib/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/MiscTechnical.js lib/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/PUA.js lib/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/SpacingModLetters.js lib/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/SuppMathOperators.js +themes/blue-gray/ajax-loader-blue-gray.gif +themes/blue-gray/blue-gray.css NETWORK: diff --git a/css/default.css b/css/default.css new file mode 100644 index 00000000..9980ce1b --- /dev/null +++ b/css/default.css @@ -0,0 +1,549 @@ +@media print { + @page { + margin: 25mm 25mm 25mm 25mm; + } + + #wmd-preview { + padding: 0px; + margin: 0px; + } + + #navbar { + display: none; + } +} + +body { + background-color: #f5f5f5; + tab-size: 4; +} + +.working { + cursor: progress; +} + +.btn, .dropdown-menu { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + -o-user-select: none; + user-select: none; +} + +/* +Override Bootstrap +*/ +div, span, a, ul, li, textarea, input, button { + background-image: none !important; + filter: none !important; + -webkit-box-shadow: none !important; + -moz-box-shadow: none !important; + box-shadow: none !important; + text-shadow: none !important; +} + +.btn, .navbar-inner, #wmd-preview, .add-on { + border: none !important; +} + +.dropdown-menu { + border: 1px solid #ddd !important; + text-align: left; +} + +.dropdown-menu:before { + border-bottom-color: #ddd !important; +} + +input, +select, +textarea, +.input-prepend .btn, +.input-prepend .add-on { + border: 1px solid #ddd !important; +} + +.modal textarea:focus, +input[type="text"]:focus, +input[type="password"]:focus, +input[type="datetime"]:focus, +input[type="datetime-local"]:focus, +input[type="date"]:focus, +input[type="month"]:focus, +input[type="time"]:focus, +input[type="week"]:focus, +input[type="number"]:focus, +input[type="email"]:focus, +input[type="url"]:focus, +input[type="search"]:focus, +input[type="tel"]:focus, +input[type="color"]:focus, +.uneditable-input:focus +{ + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(128, 128, 128, 0.6) !important; + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(128, 128, 128, 0.6) !important; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(128, 128, 128, 0.6) !important; +} + +.help-block { + color: #999999; + font-size: 12px; + line-height: 17px; +} + +.error { + border-color: #ff8661 !important; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(255, 134, 97, 0.6) !important; + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(255, 134, 97, 0.6) !important; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(255, 134, 97, 0.6) !important; +} + +.navbar-inner .btn { + background-color: #ddd; +} + +.navbar-inner .btn:hover, +.navbar-inner .btn:focus, +.navbar-inner .btn:active, +.navbar-inner .btn.active, +.btn-group.open .btn.dropdown-toggle { + color: #333333; + background-color: #eee; +} + +.nav .dropdown-toggle .caret, +.nav .dropdown-toggle:hover .caret, +.nav .dropdown-toggle:focus .caret { + border-top-color: #000; + border-bottom-color: #000; +} + +.navbar .nav.hide { + display: none; +} + +.navbar-inner .btn.disabled, +.navbar-inner .btn[disabled] { + color: #333333; + background-color: #ddd; + opacity: 0.3; + filter: alpha(opacity=30); +} + +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus, +.dropdown-submenu:hover > a, +.dropdown-submenu:focus > a, +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + background-color: #888; +} + +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #bbb; +} + +.btn-primary { + background-color: #777; +} + +input[disabled], select[disabled], textarea[disabled], .input-prepend .add-on { + background-color: #f5f5f5; +} + +input[readonly], select[readonly], textarea[readonly] { + background-color: transparent; + cursor: text; +} + +.btn-primary:hover, +.btn-primary:focus, +.btn-primary:active, +.btn-primary.active, +.btn-primary.disabled, +.btn-primary[disabled], +.btn-group.open .btn.btn-primary.dropdown-toggle { + color: #fff; + background-color: #888; +} + +.btn-group { + margin-right: 10px; +} + +.btn-group > .btn + .dropdown-toggle { + padding-right: 12px; + padding-left: 12px; +} + +.navbar-inner { + background-color: #ddd !important; +} + +code { + color: #333333 !important; +} + +h1 { + margin: 30px 0 30px; +} + +p, pre, blockquote { + margin: 0 0 20px; +} + +hr { + border-top: 1px solid #ddd; + margin: 30px 0; +} + +#file-selector { + max-height: 500px; + overflow-y: auto; + overflow-x: hidden; +} + +#file-selector .stick { + padding: 10px 20px 0; +} + +#file-title { + line-height: 23px; + padding: 9px 15px 11px; +} + +#file-title i { + margin: 4px 5px 0; +} + +.dropdown-menu i { + margin-right: 5px; +} + +#navbar { + position: static; +} + +#menu-bar { + margin: 0 15px 10px 15px; +} + +#wmd-button-bar { + margin-left: 15px; +} + +#wmd-input, #md-section-helper { + font-family: "Courier New", Courier, monospace; + resize: none; + border: none !important; +} + +#wmd-preview { + overflow: auto; +} + +.wmd-button-row { + margin: 10px 0; + height: 20px; +} + +.wmd-spacer { + margin-right: 15px; + display: inline-block; +} + +.wmd-prompt-background { + display: none; +} + +.wmd-prompt-dialog { + border: 1px solid #999999; + background-color: #F5F5F5; +} + +.wmd-prompt-dialog>div { + font-size: 0.8em; + font-family: arial, helvetica, sans-serif; +} + +.wmd-prompt-dialog>form>input[type="text"] { + border: 1px solid #999999; + color: black; +} + +.wmd-prompt-dialog>form>input[type="button"] { + border: 1px solid #888888; + font-family: trebuchet MS, helvetica, sans-serif; + font-size: 0.8em; + font-weight: bold; +} + +.dropdown-menu .divider.with-text { + height: auto; + margin-bottom: 2px; + background-color: transparent; + border-top: 1px solid #e5e5e5; + color: #ccc; + font-variant: small-caps; + font-weight: bold; + padding-left: 20px; + cursor: default; +} + +div.dropdown-menu { + padding: 5px 20px; + white-space: normal; +} + +div.dropdown-menu p, +div.dropdown-menu blockquote { + margin: 10px 0; +} + +div.dropdown-menu i { + margin-right: 0; +} + +#link-container { + min-width: 210px; +} + +#link-container .link-list { + margin-top: 10px; +} + +.icon-link { + background-position: -72px -168px; +} + +.icon-code { + width: 15px; + background-position: -384px -168px; +} + +.icon-numbered-list { + background-position: -408px -168px; +} + +.icon-hr { + background-position: -432px -168px; +} + +.icon-undo { + background-position: -456px -168px; +} + +.icon-stackedit { + background-image: url("../img/icons.png") !important; + width: 16px; + height: 16px; + background-position: -1px 0; +} + +.icon-gdrive { + background-image: url("../img/icons.png") !important; + width: 16px; + height: 16px; + background-position: -19px 0; +} + +.icon-dropbox { + background-image: url("../img/icons.png") !important; + width: 16px; + height: 16px; + background-position: -37px 0; +} + +.icon-github, +.icon-gist { + background-image: url("../img/icons.png") !important; + width: 16px; + height: 16px; + background-position: -55px 0; +} + +.icon-blogger { + background-image: url("../img/icons.png") !important; + width: 16px; + height: 16px; + background-position: -73px 0; +} + +.icon-tumblr { + background-image: url("../img/icons.png") !important; + width: 16px; + height: 16px; + background-position: -91px 0; +} + +.icon-wordpress { + background-image: url("../img/icons.png") !important; + width: 16px; + height: 16px; + background-position: -109px 0; +} + +.icon-ssh { + background-image: url("../img/icons.png") !important; + width: 16px; + height: 16px; + background-position: -127px 0; +} + +.working-indicator { + background-image: none; + width: 43px; + height: 11px; + background-position: 0 0; + margin: 14px 15px 0; +} + +.working-indicator.show { + background-image: url("../img/ajax-loader.gif"); +} + +.ui-layout-toggler-north .caret, .ui-layout-toggler-south .caret { + margin-top: 5px; +} + +.ui-layout-toggler-north-open .caret,.ui-layout-toggler-south-closed .caret + { + border-bottom: 5px solid #525252; + border-right: 5px solid transparent; + border-left: 5px solid transparent; + border-top: 0; +} + +.ui-layout-toggler-north-closed .caret,.ui-layout-toggler-south-open .caret + { + border-top: 5px solid #525252; + border-right: 5px solid transparent; + border-left: 5px solid transparent; + border-bottom: 0; +} + +.ui-layout-toggler-east .caret,.ui-layout-toggler-west .caret { + margin-top: 40px; +} + +.ui-layout-toggler-east-open .caret,.ui-layout-toggler-west-closed .caret + { + border-bottom: 5px solid transparent; + border-top: 5px solid transparent; + border-left: 5px solid #525252; + border-right: 0; +} + +.ui-layout-toggler-east-closed .caret,.ui-layout-toggler-west-opened .caret + { + border-bottom: 5px solid transparent; + border-top: 5px solid transparent; + border-right: 5px solid #525252; + border-left: 0; +} + +/* Google picker */ +.picker-dialog { + z-index: 1050 !important; +} + +#modal-settings textarea { + height: 80px; + max-width: 206px; +} + +.tooltip-inner { + text-align: left; +} + +table { + margin-bottom: 20px; +} + +table th, +table td { + padding: 8px; + line-height: 20px; + text-align: left; + vertical-align: top; + border-top: 1px solid #dddddd; +} + +table th { + font-weight: bold; +} + +table thead th { + vertical-align: bottom; +} + +table caption + thead tr:first-child th, +table caption + thead tr:first-child td, +table colgroup + thead tr:first-child th, +table colgroup + thead tr:first-child td, +table thead:first-child tr:first-child th, +table thead:first-child tr:first-child td { + border-top: 0; +} + +table tbody + tbody { + border-top: 2px solid #dddddd; +} + +blockquote p { + margin-bottom: 0; + font-size: 17.5px; + font-weight: 300; + line-height: 1.25; +} + +ul, ol { + margin-bottom: 20px; +} + +blockquote p { + margin-bottom: 20px; + font-size: 14px; + line-height: 20px; +} + +#md-section-helper { + position: absolute; + top: -100px; + height: 1px; + padding: 0 6px; + overflow-y: scroll; + z-index: -1; +} + +.gecko #md-section-helper { + /* Firefox doesn't show the scrollbar if height is less than 40px */ + height: 40px; +} + +.opera #md-section-helper { + /* Opera needs to have the textarea in the viewport to evaluate size correctly */ + top: 0; +} + +/* Viewer */ +.viewer #navbar { + position: fixed; +} + +.viewer .navbar-inner { + background-color:rgba(215,215,215,0.75) !important; +} + +.viewer #wmd-preview { + max-width: 1024px; + margin: 50px auto; +} + +.viewer .btn-group { + margin-right: 0; + margin-left: 0; +} diff --git a/css/main.css b/css/main.css index 511f974d..44690e75 100644 --- a/css/main.css +++ b/css/main.css @@ -1,553 +1,6 @@ @import url("bootstrap.css"); @import url("jgrowl.css"); @import url("prettify.css"); +@import url("default.css"); -@media print { - @page { - margin: 25mm 25mm 25mm 25mm; - } - #wmd-preview { - padding: 0px; - margin: 0px; - } - - #navbar { - display: none; - } -} - -body { - background-color: #f5f5f5; - tab-size: 4; -} - -.working { - cursor: progress; -} - -.btn, .dropdown-menu { - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - -o-user-select: none; - user-select: none; -} - -/* -Override Bootstrap -*/ -div, span, a, ul, li, textarea, input, button { - background-image: none !important; - filter: none !important; - -webkit-box-shadow: none !important; - -moz-box-shadow: none !important; - box-shadow: none !important; - text-shadow: none !important; -} - -.btn, .navbar-inner, #wmd-preview, .add-on { - border: none !important; -} - -.dropdown-menu { - border: 1px solid #ddd !important; - text-align: left; -} - -.dropdown-menu:before { - border-bottom-color: #ddd !important; -} - -input, -select, -textarea, -.input-prepend .btn, -.input-prepend .add-on { - border: 1px solid #ddd !important; -} - -.modal textarea:focus, -input[type="text"]:focus, -input[type="password"]:focus, -input[type="datetime"]:focus, -input[type="datetime-local"]:focus, -input[type="date"]:focus, -input[type="month"]:focus, -input[type="time"]:focus, -input[type="week"]:focus, -input[type="number"]:focus, -input[type="email"]:focus, -input[type="url"]:focus, -input[type="search"]:focus, -input[type="tel"]:focus, -input[type="color"]:focus, -.uneditable-input:focus -{ - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(128, 128, 128, 0.6) !important; - -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(128, 128, 128, 0.6) !important; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(128, 128, 128, 0.6) !important; -} - -.help-block { - color: #999999; - font-size: 12px; - line-height: 17px; -} - -.error { - border-color: #ff8661 !important; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(255, 134, 97, 0.6) !important; - -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(255, 134, 97, 0.6) !important; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(255, 134, 97, 0.6) !important; -} - -.navbar-inner .btn { - background-color: #ddd; -} - -.navbar-inner .btn:hover, -.navbar-inner .btn:focus, -.navbar-inner .btn:active, -.navbar-inner .btn.active, -.btn-group.open .btn.dropdown-toggle { - color: #333333; - background-color: #eee; -} - -.nav .dropdown-toggle .caret, -.nav .dropdown-toggle:hover .caret, -.nav .dropdown-toggle:focus .caret { - border-top-color: #000; - border-bottom-color: #000; -} - -.navbar .nav.hide { - display: none; -} - -.navbar-inner .btn.disabled, -.navbar-inner .btn[disabled] { - color: #333333; - background-color: #ddd; - opacity: 0.3; - filter: alpha(opacity=30); -} - -.dropdown-menu > li > a:hover, -.dropdown-menu > li > a:focus, -.dropdown-submenu:hover > a, -.dropdown-submenu:focus > a, -.dropdown-menu > .active > a, -.dropdown-menu > .active > a:hover, -.dropdown-menu > .active > a:focus { - background-color: #888; -} - -.dropdown-menu > .disabled > a, -.dropdown-menu > .disabled > a:hover, -.dropdown-menu > .disabled > a:focus { - color: #bbb; -} - -.btn-primary { - background-color: #777; -} - -input[disabled], select[disabled], textarea[disabled], .input-prepend .add-on { - background-color: #f5f5f5; -} - -input[readonly], select[readonly], textarea[readonly] { - background-color: transparent; - cursor: text; -} - -.btn-primary:hover, -.btn-primary:focus, -.btn-primary:active, -.btn-primary.active, -.btn-primary.disabled, -.btn-primary[disabled], -.btn-group.open .btn.btn-primary.dropdown-toggle { - color: #fff; - background-color: #888; -} - -.btn-group { - margin-right: 10px; -} - -.btn-group > .btn + .dropdown-toggle { - padding-right: 12px; - padding-left: 12px; -} - -.navbar-inner { - background-color: #ddd !important; -} - -code { - color: #333333 !important; -} - -h1 { - margin: 30px 0 30px; -} - -p, pre, blockquote { - margin: 0 0 20px; -} - -hr { - border-top: 1px solid #ddd; - margin: 30px 0; -} - -#file-selector { - max-height: 500px; - overflow-y: auto; - overflow-x: hidden; -} - -#file-selector .stick { - padding: 10px 20px 0; -} - -#file-title { - line-height: 23px; - padding: 9px 15px 11px; -} - -#file-title i { - margin: 4px 5px 0; -} - -.dropdown-menu i { - margin-right: 5px; -} - -#navbar { - position: static; -} - -#menu-bar { - margin: 0 15px 10px 15px; -} - -#wmd-button-bar { - margin-left: 15px; -} - -#wmd-input, #md-section-helper { - font-family: "Courier New", Courier, monospace; - resize: none; - border: none !important; -} - -#wmd-preview { - overflow: auto; -} - -.wmd-button-row { - margin: 10px 0; - height: 20px; -} - -.wmd-spacer { - margin-right: 15px; - display: inline-block; -} - -.wmd-prompt-background { - display: none; -} - -.wmd-prompt-dialog { - border: 1px solid #999999; - background-color: #F5F5F5; -} - -.wmd-prompt-dialog>div { - font-size: 0.8em; - font-family: arial, helvetica, sans-serif; -} - -.wmd-prompt-dialog>form>input[type="text"] { - border: 1px solid #999999; - color: black; -} - -.wmd-prompt-dialog>form>input[type="button"] { - border: 1px solid #888888; - font-family: trebuchet MS, helvetica, sans-serif; - font-size: 0.8em; - font-weight: bold; -} - -.dropdown-menu .divider.with-text { - height: auto; - margin-bottom: 2px; - background-color: transparent; - border-top: 1px solid #e5e5e5; - color: #ccc; - font-variant: small-caps; - font-weight: bold; - padding-left: 20px; - cursor: default; -} - -div.dropdown-menu { - padding: 5px 20px; - white-space: normal; -} - -div.dropdown-menu p, -div.dropdown-menu blockquote { - margin: 10px 0; -} - -div.dropdown-menu i { - margin-right: 0; -} - -#link-container { - min-width: 210px; -} - -#link-container .link-list { - margin-top: 10px; -} - -.icon-link { - background-position: -72px -168px; -} - -.icon-code { - width: 15px; - background-position: -384px -168px; -} - -.icon-numbered-list { - background-position: -408px -168px; -} - -.icon-hr { - background-position: -432px -168px; -} - -.icon-undo { - background-position: -456px -168px; -} - -.icon-stackedit { - background-image: url("../img/icons.png") !important; - width: 16px; - height: 16px; - background-position: -1px 0; -} - -.icon-gdrive { - background-image: url("../img/icons.png") !important; - width: 16px; - height: 16px; - background-position: -19px 0; -} - -.icon-dropbox { - background-image: url("../img/icons.png") !important; - width: 16px; - height: 16px; - background-position: -37px 0; -} - -.icon-github, -.icon-gist { - background-image: url("../img/icons.png") !important; - width: 16px; - height: 16px; - background-position: -55px 0; -} - -.icon-blogger { - background-image: url("../img/icons.png") !important; - width: 16px; - height: 16px; - background-position: -73px 0; -} - -.icon-tumblr { - background-image: url("../img/icons.png") !important; - width: 16px; - height: 16px; - background-position: -91px 0; -} - -.icon-wordpress { - background-image: url("../img/icons.png") !important; - width: 16px; - height: 16px; - background-position: -109px 0; -} - -.icon-ssh { - background-image: url("../img/icons.png") !important; - width: 16px; - height: 16px; - background-position: -127px 0; -} - -.working-indicator { - background-image: none; - width: 43px; - height: 11px; - background-position: 0 0; - margin: 14px 15px 0; -} - -.working-indicator.show { - background-image: url("../img/ajax-loader.gif"); -} - -.ui-layout-toggler-north .caret, .ui-layout-toggler-south .caret { - margin-top: 5px; -} - -.ui-layout-toggler-north-open .caret,.ui-layout-toggler-south-closed .caret - { - border-bottom: 5px solid #525252; - border-right: 5px solid transparent; - border-left: 5px solid transparent; - border-top: 0; -} - -.ui-layout-toggler-north-closed .caret,.ui-layout-toggler-south-open .caret - { - border-top: 5px solid #525252; - border-right: 5px solid transparent; - border-left: 5px solid transparent; - border-bottom: 0; -} - -.ui-layout-toggler-east .caret,.ui-layout-toggler-west .caret { - margin-top: 40px; -} - -.ui-layout-toggler-east-open .caret,.ui-layout-toggler-west-closed .caret - { - border-bottom: 5px solid transparent; - border-top: 5px solid transparent; - border-left: 5px solid #525252; - border-right: 0; -} - -.ui-layout-toggler-east-closed .caret,.ui-layout-toggler-west-opened .caret - { - border-bottom: 5px solid transparent; - border-top: 5px solid transparent; - border-right: 5px solid #525252; - border-left: 0; -} - -/* Google picker */ -.picker-dialog { - z-index: 1050 !important; -} - -#modal-settings textarea { - height: 80px; - max-width: 206px; -} - -.tooltip-inner { - text-align: left; -} - -table { - margin-bottom: 20px; -} - -table th, -table td { - padding: 8px; - line-height: 20px; - text-align: left; - vertical-align: top; - border-top: 1px solid #dddddd; -} - -table th { - font-weight: bold; -} - -table thead th { - vertical-align: bottom; -} - -table caption + thead tr:first-child th, -table caption + thead tr:first-child td, -table colgroup + thead tr:first-child th, -table colgroup + thead tr:first-child td, -table thead:first-child tr:first-child th, -table thead:first-child tr:first-child td { - border-top: 0; -} - -table tbody + tbody { - border-top: 2px solid #dddddd; -} - -blockquote p { - margin-bottom: 0; - font-size: 17.5px; - font-weight: 300; - line-height: 1.25; -} - -ul, ol { - margin-bottom: 20px; -} - -blockquote p { - margin-bottom: 20px; - font-size: 14px; - line-height: 20px; -} - -#md-section-helper { - position: absolute; - top: -100px; - height: 1px; - padding: 0 6px; - overflow-y: scroll; - z-index: -1; -} - -.gecko #md-section-helper { - /* Firefox doesn't show the scrollbar if height is less than 40px */ - height: 40px; -} - -.opera #md-section-helper { - /* Opera needs to have the textarea in the viewport to evaluate size correctly */ - top: 0; -} - -/* Viewer */ -.viewer #navbar { - position: fixed; -} - -.viewer .navbar-inner { - background-color:rgba(215,215,215,0.75) !important; -} - -.viewer #wmd-preview { - max-width: 1024px; - margin: 50px auto; -} - -.viewer .btn-group { - margin-right: 0; - margin-left: 0; -} diff --git a/doc/theming.md b/doc/theming.md new file mode 100644 index 00000000..a8fd9f76 --- /dev/null +++ b/doc/theming.md @@ -0,0 +1,2 @@ +StackEdit theming guide +======================= diff --git a/img/ajax-loader.gif b/img/ajax-loader.gif index 60e718fbebf7f2df0ad34d2f7cb7270831698a41..f8a1c82c77371134c92603043cc44ea03d75d5a5 100644 GIT binary patch delta 83 zcmbQjJcU`(-P6s&GEtj>o8cn^!`-`g7c5w?fB$|UIZ;PZl!1$ZfkE*mR~DcIo8cn^!~g&Pmn>Ow>Cz=2sraAU&ow02*)hP?NY8+ok%56> dqNE}dC)Y%OR~Ak#Aa8~rgnk8~C)+Sa005j?7&!m{ diff --git a/img/glyphicons-halflings-white.png b/img/glyphicons-halflings-white.png index ad3866a26b48c9fbd6d08742ba7ec3ffacd16cb9..82022a636053d418bd84e087618da9def95358d2 100644 GIT binary patch literal 28008 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 Ziy!k#Ngqq(zdM+mg$mYB{|8~MJ~;pY literal 22591 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 @@ -546,6 +549,15 @@ +
+ + +
diff --git a/js/config.js b/js/config.js index d080ad65..a69f3092 100644 --- a/js/config.js +++ b/js/config.js @@ -43,3 +43,8 @@ if(location.hostname.indexOf("benweet.github.io") === 0) { GATEKEEPER_URL = "http://stackedit-gatekeeper.herokuapp.com/"; TUMBLR_PROXY_URL = "http://stackedit-tumblr-proxy.herokuapp.com/"; } + +var THEME_LIST = { + "": "Default", + "blue-gray": "Blue-Gray" +}; diff --git a/js/core.js b/js/core.js index a73f1caa..5f95cdc3 100644 --- a/js/core.js +++ b/js/core.js @@ -241,6 +241,8 @@ define( + core.settings.layoutOrientation + "]").prop("checked", true); // Scroll Link $("#input-settings-scroll-link").prop("checked", core.settings.scrollLink); + // Theme + $("#input-settings-theme").val(localStorage.theme); // Converter type $("#input-settings-converter-type").val(core.settings.converterType); // MathJax @@ -265,6 +267,8 @@ define( // Layout orientation newSettings.layoutOrientation = $( "input:radio[name=radio-layout-orientation]:checked").prop("value"); + // Theme + var theme = $("#input-settings-theme").val(); // Converter type newSettings.converterType = $("#input-settings-converter-type").val(); // MathJax @@ -287,6 +291,7 @@ define( if(!event.isPropagationStopped()) { $.extend(core.settings, newSettings); localStorage.settings = JSON.stringify(newSettings); + localStorage.theme = theme; } }; @@ -796,6 +801,11 @@ define( $.jGrowl.defaults.closeTemplate = ''; $.jGrowl.defaults.position = 'bottom-right'; + // Load theme list + _.each(THEME_LIST, function(name, value) { + $("#input-settings-theme").append($('')); + }); + // listen to online/offline events $(window).on('offline', core.setOffline); $(window).on('online', core.setOnline); diff --git a/themes/blue-gray/ajax-loader-blue-gray.gif b/themes/blue-gray/ajax-loader-blue-gray.gif new file mode 100644 index 0000000000000000000000000000000000000000..4ed29d0b47dc90ff10c807a5f56e5f4462a935ac GIT binary patch literal 404 zcmZ?wbhEHb)Mnsj_{hL;?&`g%vledLu^&h({*!VpN=+3d5&pA{za-Q@zcO4N_8 wTlt%BquK1ObNl~pdOR`3Iri-{ZLhKuuEGL)5|qvfi2h;{VPLQZg&P li > a { + color: #64656b; +} + +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus, +.dropdown-submenu:hover > a, +.dropdown-submenu:focus > a, +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus, +div.jGrowl div.jGrowl-notification { + background-color: #80838a; +} + +.working-indicator.show { + background-image: url("ajax-loader-blue-gray.gif"); +} + +.viewer .navbar-inner { + background-color:rgba(195,203,214,0.75) !important; +} + diff --git a/viewer.html b/viewer.html index 080b9c10..9b12ac4b 100644 --- a/viewer.html +++ b/viewer.html @@ -11,15 +11,17 @@