diff options
| author | qsm-odoo <qsm@odoo.com> | 2016-02-24 11:51:43 +0100 |
|---|---|---|
| committer | qsm-odoo <qsm@odoo.com> | 2016-02-24 13:09:48 +0100 |
| commit | 5b65befcd889139152c590490fb8965c9f4b5279 (patch) | |
| tree | 8c82983ec486274372db96a70620805e3ea80454 /addons/web_editor/static/src/less/web_editor.ui.less | |
| parent | 40334b3342df66ff93e511a97107e6df6c209e21 (diff) | |
[REF] web,web_editor,website,report,mass_mailing,mail: LESS
* Convert some CSS to LESS
* Split/Join LESS files
* Remove duplicates between website and web_editor
* UI improvements
* Allow simple customizations thanks to LESS var&mixins for website
Diffstat (limited to 'addons/web_editor/static/src/less/web_editor.ui.less')
| -rw-r--r-- | addons/web_editor/static/src/less/web_editor.ui.less | 1771 |
1 files changed, 866 insertions, 905 deletions
diff --git a/addons/web_editor/static/src/less/web_editor.ui.less b/addons/web_editor/static/src/less/web_editor.ui.less index 75410d27eb0..33edd55dc61 100644 --- a/addons/web_editor/static/src/less/web_editor.ui.less +++ b/addons/web_editor/static/src/less/web_editor.ui.less @@ -1,976 +1,937 @@ - +// TOP BAR (EDIT) #web_editor-top-edit { - text-rendering: geometricPrecision; - -webkit-font-smoothing: antialiased; - background-color: @we_color-dark; - height: @we_editor-bar-height; - font-family: @we_font-default; - min-height: initial; - border: none; - - form.navbar-form { - margin: 0; - padding: 0; - border: none; - text-align: right; - position: absolute; - height: @we_editor-bar-height; - right: -@we_sidebar-width; - .transition(right 0.4s @we_md-ease); - .full { - margin-top: 0; - margin-bottom: 0; - border-radius: 0; - padding: 0 15px; - height: @we_editor-bar-height; - &.accent { - .button-variant(white, @we_color-accent, @we_color-accent) - } - &.compl { - .button-variant(white, @we_color-primary, @we_color-primary) - } - } - a, button { - font-weight: 600; - font-size: 11px; - } - .btn-group { - button { - height: @we_editor-bar-height; - padding: 0 10px 0 10px; - line-height: 1; - border-radius: 0; + .o-position-absolute(0, 0, auto, 0); + position: fixed; + height: @odoo-navbar-height; + z-index: 1003; + + background-color: rgba(0,0,0,0); + .o-transition(background-color, 400ms, @o-we-md-ease); + font-family: Roboto, @font-family-sans-serif; + + form.navbar-form { + height: 100%; margin: 0; - border: none; - .button-variant(white, @we_color-primary, @we_color-primary); - } - } - } -} + padding: 0; + .o-position-absolute(@right: -@o-we-sidebar-width); + .o-transition(right, 0.4s, @o-we-md-ease); -#web_editor_snippets { - text-rendering: geometricPrecision; - -webkit-font-smoothing: antialiased; - bottom: 0; - width: @we_sidebar-width; - left: -@we_sidebar-width; - top: 0; - z-index: 1030; - font-family: @we_font-default; - position: fixed; - .transition(left 0.4s @we_md-ease); - #o_left_bar { - top: @we_editor-bar-height; - width: @we_sidebar-width; - left: 0px; - bottom: 0; - .linear-gradient(@we_color-normal, darken(@we_color-normal, 10%)); - .box-shadow(0px 10px 10px -10px black inset); - } -} + .btn-group { + height: 100%; + } -#snippets_menu { - border: 1px solid @we_color-divider; - border-width: 0 1px 1px 0; - background: @we_color-dark; - height: @we_editor-bar-height + 1; - text-align: center; - margin: 0; - padding: 7px 0; - list-style-type: none; - li { - display: inline-block; - padding: 0 9px; - font-size: 0; - a i { - color: #999999; - &:hover{ color: white; } - } - &.structure a i{ - font-size: 25px; - .translateY(3px); - } - &.content a i{ - font-size: 19px; - } - &.feature a i{ - font-size: 19px; - } - &.effect a i{ - font-size: 16px; - .translateY(-3px); + .btn { + height: 100%; + margin: 0; + padding: 10px; + line-height: 1; + font-weight: bold; + + .o-transition(all, 0.3s); + border: none; + border-radius: 0; + + &.btn-primary { + .button-variant(white, @odoo-brand-primary, @odoo-brand-primary); + text-transform: uppercase; + } + &.btn-default { + .button-variant(white, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)); + text-transform: uppercase; + } + + &:focus, &:active, &:focus:active { + outline: none; + } + } + .dropdown-menu { + left: auto; + right: 0; + } } - } - li.active a { - color: white; - } } +// SNIPPET PANEL +#oe_snippets { + .o-flex-display(); + .o-flex-flow(column, nowrap); + .o-position-absolute(0, auto, 0, -@o-we-sidebar-width); + position: fixed; + width: @o-we-sidebar-width; + z-index: 1003; -#o_scroll { - .o_panel { - margin: 0; - border: 0; - width: 210px; - } - .o_panel_header { - padding: 1px 8px; - color: #999999; - text-align: center; - } - .o_panel_body { - white-space: normal; - background: transparent; - padding: 7px 3px; - } -} + font-family: Roboto, @font-family-sans-serif; + border-right: 1px solid @o-we-color-divider; + .o-transition(left, 400ms, @o-we-md-ease); + .o-linear-gradient(45deg, @o-we-color-normal, darken(@o-we-color-normal, 10%)); + box-shadow: 0px 10px 10px -10px black inset; -.oe_snippet { - display: inline-block; - vertical-align: top; - width: 93px; - margin-left: 3px; - margin-right: 3px; - margin-top: 1px; - position: relative; - overflow: hidden; - .user-select(none); - cursor: move; - cursor: copy; - color: @we_color-text-normal; - font-weight: 600; - margin-bottom: 0.5em; - .oe_snippet_thumbnail { - text-align: center; - height: 100%; - background: transparent; - position: relative; - .oe_snippet_thumbnail_img { - height: 74px; - width: 92px; - background-size: cover; - opacity: 0.9; - } - .oe_snippet_thumbnail_title { - font-size: 12px; - display: block; - text-shadow: none; - color: @we_color-text-normal; - } - &:hover { - .oe_snippet_thumbnail_img { - opacity: 1; - .scale(1); - } - .oe_snippet_thumbnail_title { - color: white; - } - } - } - > :not(.oe_snippet_thumbnail) { - display: none !important; - } - &.disable { - .oe_snippet_thumbnail { - background-color: rgba(255, 0, 0, 0.75); - } - .oe_snippet_thumbnail_img { - opacity: 0.8; + #snippets_menu { + .o-flex(0, 0, auto); + height: @odoo-navbar-height; + margin: 0; + padding: 0; + background: @o-we-color-dark; + list-style-type: none; + li { + display: block; + float: left; + width: 25%; + height: 100%; + + a { + display: block; + width: 100%; + height: 100%; + .o-flex-display(); + .o-align-items(center); + .o-justify-content(center); + text-decoration: none!important; + + i { + font-size: 20px; + color: #999999; + + i { + color: white; + } + } + } + + &.active, &:hover { + a i { + color: white; + + i { + color: @odoo-brand-primary; + } + } + } + } } - } -} - -.oe_drop_zone.oe_insert{ - display: block; - height: 48px; - margin: 0px; - margin-top: -4px; - margin-bottom: -44px; - width: 100%; - position: absolute; - z-index: 1000; - .transition(margin 250ms linear); - &:not(.oe_vertical):before{ - content: ""; - display: block; - border-top: dashed 2px rgba(209, 178, 255, 0.72); - position: relative; - top: 0px} - &.oe_hover:before{ - border-top: dashed 2px rgba(116, 255, 161, 0.72)} - &.oe_vertical{ - width: 48px; - float: left; - position: relative; - margin: 0px -24px !important} - &.oe_vertical_text{ - width: 48px; - float: none; - display: inline-block; - position: relative; - margin: 0px -24px !important} - &.oe_overlay{ - .border-radius(3px); - background: rgba(153, 0, 255,.5)} -} -.oe_drop_zone, .oe_drop_zone_style{ - border: none; - background: rgba(153, 0, 255, .3); - .border-radius(4px); - &.oe_hover{ - background: rgba(0, 255, 133, .3); - z-index: 1001} -} -.oe_drop_zone_style{ - color: white; - height: 48px; - margin-bottom: 32px; - padding-top: 12px -} + #o_scroll { + height: 100%; + overflow: auto; + .o_panel_header { + color: #999999; + .o-flex-display(); + .o-align-items(center); + .o-justify-content(center); + padding: 3%; + i { + margin-right: 5px; + } + } + .o_panel_body { + &:after { + content: " "; + display: table; + clear: both; + } + + .oe_snippet { + float: left; + width: 45.5%; + margin: 0 0 3% 3%; + box-shadow: none; + background-color: transparent; + .user-select(none); + + cursor: pointer; + cursor: copy; + cursor: grab; + + .oe_snippet_thumbnail { + .oe_snippet_thumbnail_img { + border: none; + } + .oe_snippet_thumbnail_title { + border: none; + padding: 0px; + } + + &:hover .oe_snippet_thumbnail_img { + .o-transition(transform, 200ms, ease); + .scale(1.05); + } + } + + &.disable { + .oe_snippet_thumbnail { + background-color: rgba(255, 0, 0, 0.75); + } + .oe_snippet_thumbnail_img { + opacity: 0.8; + } + } + } + } + } +} +.oe_snippet { // No root because can be drag and drop (and the helper is in the body) + position: relative; + width: 100px; + background-color: @o-we-color-normal; + > :not(.oe_snippet_thumbnail) { + display: none!important; + } -/* ---- SNIPPET MANIPULATOR ---- {{{ */ + .oe_snippet_thumbnail { + width: 100%; -#oe_manipulators { - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; + .oe_snippet_thumbnail_img { + width: 100%; + height: 0; + border: 1px solid @o-we-color-normal; + padding-bottom: 75%; + background-size: cover; + background-position: center center; + text-align: center; + overflow: hidden; + } + img.oe_snippet_thumbnail_img { + height: auto; + padding-bottom: 0; + } + .oe_snippet_thumbnail_title { + display: block; + border: 1px solid @o-we-color-normal; + padding: 5px; + font-size: 12px; + font-weight: 600; + text-shadow: none; + color: @o-we-color-text-normal; + } + &:hover .oe_snippet_thumbnail_title { + color: white; + } + } } -.oe_overlay { - display:none; - height:0; - position:absolute; - background:transparent; - z-index:1001; - border-radius:3px; - .transition(opacity 100ms linear); - .box-sizing(border-box); - &.o_keypress { - .transition(0.8s); - } +// DROPZONES +@-webkit-keyframes dropZoneInsert { + to { + background-color: fade(@odoo-brand-primary, 20%); + } } - - -/* ---- HANDLES ---- {{{ */ - -.oe_handle { - display:block; - width:16px; - height:16px; - margin:-2px; - .o-position-absolute(50%, auto, auto, 50%); - .box-sizing(border-box); - .opacity(0.6); - .transition(opacity 0.3s ease); - &:hover { - .opacity(0.9); - } - // Orizontal lines - > div { - z-index:1; - position:absolute; - border-style:dashed; - border-width:1px; - border-color:#666666; - .box-shadow(inset 0px 0px 0px 1px rgba(255,255,255,0.5) 0px 0px 0px 1px rgba(255,255,255,0.5)); - } - // Vertical lines - &.e > div, &.w > div { - width:0; - height:100%; - top:2px; - left:8px; - } - &.readonly { - cursor:auto !important; - } - &.readonly:before, &.readonly.size { - display:none !important; - } +@keyframes dropZoneInsert { + to { + background-color: fade(@odoo-brand-primary, 20%); + } } +#wrapwrap .oe_drop_zone { + background-color: fade(@odoo-brand-primary, 5%); + .o-animation(dropZoneInsert, 1s, linear, 0s, infinite, alternate); -.oe_handle.e, .oe_handle.w, .oe_handle.s, .oe_handle.n { - &:before { - z-index:2; - position:relative; - top:50%; - left:50%; - display:block; - border:solid 1px rgba(0,0,0,0.2); - width:18px; - height:18px; - margin:-9px; - font-size:14px; - line-height:16px; - font-family:FontAwesome; - content:""; - text-align:center; - padding:1px; - border-radius: 3px; - background-color: @we_color-light; - color: @we_color-text-light; - .transition(background 100ms linear); - } - &:hover:before{ - background-color: @we_color-dark; - color:#ffffff; - .box-shadow(0 0 5px 3px rgba(255,255,255,0.7)); - } -} + &.oe_insert { + @odoo-dropzone-size: 40px; + @odoo-dropzone-border-width: 2px; + @odoo-dropzone-border: @odoo-dropzone-border-width dashed @odoo-brand-primary; -// SPECIFIC HANDLERS POSITION -// =========================== + z-index: 999; -.oe_handle.e { - top:4px; - height:100%; - left:auto; - right:-6px; - cursor:w-resize; -} -.oe_handle.w { - top:4px; - height:100%; - left:-6px; - cursor:e-resize; -} -.oe_handle.s { - left:2px; - width:100%; - top:auto; - cursor:n-resize; - > div { - width:100%; - height:0; - top:7px; - left:1px; - } -} -.oe_handle.n { - left:2px; - width:100%; - cursor:s-resize; - > div { - width:100%; - height:0; - top:5px; - left:1px; - } -} + border: @odoo-dropzone-border; + border-top: none; + border-bottom: none; -// SIZE HANDLERS -// =========================== - -.oe_handle.size { - z-index: 3; - margin-left: -50px; - .auto_size, .size { - font-weight: 600; - font-size: 9px; - line-height: 9px; - text-transform: uppercase; - line-height: 9px; - padding: 4px; - border-radius: 3px; - border: none; - height: 18px; - text-align: center; - margin-top: -10px; - background-color: @we_color-light; - color: @we_color-text-light; - .o-position-absolute(9px); - .box-shadow(none); - &:hover { - background-color: @we_color-dark; - color: white; + position: relative; + width: 100%; + height: @odoo-dropzone-size; + margin: -@odoo-dropzone-size/2 0; + + .o-transition(margin, 400ms, linear); + + &:after { + content: ""; + display: block; + width: 100%; + height: 50%; + border-bottom: @odoo-dropzone-border; + box-sizing: content-box; + } + + &.oe_vertical { + border: 2px dashed @odoo-brand-primary; + border-left: none; + border-right: none; + + width: @odoo-dropzone-size; + float: left; + margin: 0 -@odoo-dropzone-size/2; + + &:after { + width: 50%; + height: 100%; + border-bottom: none; + border-right: @odoo-dropzone-border; + } + } } - } - .size { - width:64px; - cursor:row-resize; - margin-left:52px; - margin-left: 60px; - } - .auto_size { - margin-left: -63px; - width:100px; - cursor:pointer; - .transition(all 1s ease); - } } +// MANIPULATORS +#oe_manipulators { + @odoo-handle-edge-size: 8px; + @odoo-handle-border-width: 3px; + + // SNIPPET MANIPULATORS + .oe_overlay { + .o-position-absolute(); + z-index: 1002; + display: none; + height: 0; + background: transparent; + text-align: center; + .o-transition(opacity, 400ms, linear); + &.o_keypress { + opacity: 0; + } + &.oe_active { + display: block; + } -// HANDLERS ICONS -// =========================== + // OVERLAY OPTIONS + > .oe_overlay_options { + .o-position-absolute(@bottom: 0, @left: 0); + + > .btn-group { + white-space: nowrap; + + .btn { + @o-overlay-option-size: 25px; + + display: inline-block; + width: @o-overlay-option-size; + height: @o-overlay-option-size; + padding: 0; + border: 1px solid @o-we-color-dark; + line-height: @o-overlay-option-size; + font-size: 11px; + border-radius: 0; + font-weight: 600; + + .o-transition(all, 400ms); + color: @o-we-color-text-light; + background-color: @o-we-color-light; + &:hover { + color: white; + background-color: lighten(@o-we-color-dark, 10%); + } + + &.oe_snippet_remove { + color: white; + background-color: @o-we-color-danger; + border-color: darken(@o-we-color-danger, 20%); + &:hover { + background-color: darken(@o-we-color-danger, 20%); + } + } + } + + // CUSTOMIZE MENU BUTTON + > .oe_options { + .btn { + width: auto; + padding: 0 25px 0 5px; + background-color: @o-we-color-dark; + text-transform: uppercase; + &:hover, &:active, &:focus { + background-color: lighten(@o-we-color-dark, 5%); + border-color: lighten(@o-we-color-dark, 10%); + color: white; + } + &:active, &:focus, &:active:focus { + outline: none; + } + &:before, &:after { + content: ""; + width: 7px; + height: 2px; + background-color: @o-we-color-text-light; + .o-position-absolute(46%); + .o-transition(all, 0.3s); + } + &:before { + right: 9px; + .rotate(45deg); + } + &:after { + right: 5px; + .rotate(-45deg); + } + } + // Open menu + &.open .btn { + background-color: @o-we-color-light; + &:before, &:after { + width: 9px; + } + &:before { + right: 10px; + transform: translateX(5px) rotate(-45deg); + } + &:after { + .rotate(45deg); + } + } + + // CUSTOMIZE MENU + .dropdown-menu { + margin: -1px 0 0 0; + padding: 0; + border: 1px solid @o-we-color-dark; + border-radius: 0; + background-color: @o-we-color-light; + a { + color: @o-we-color-text-light; + font-weight: 600; + font-size: 12px; + padding: 5px 20px; + } + + > li { + position: relative; + &:hover { + background-color: fadeOut(@o-we-color-dark, 50%); + > a { + color: white; + background: transparent; + cursor: pointer; + } + > .dropdown-menu { + display: block; + left: 100%; + top: 0; + } + } + &.dropdown-submenu:before { + .o-position-absolute(@top: 10px, @right: 10px); + .o-caret-right(3px); + border-left-color: @o-we-color-text-light; + } + &.divider { + background-color: @o-we-color-divider; + margin: 0; + } + &.active > a { + color: white; + background-color: fadeOut(@o-we-color-dark, 50%); + &:before { + .o-position-absolute(@top: 5px, @left: 5px); + content: "\f00c"; + font-family: "FontAwesome"; + color: @odoo-brand-optional; + } + } + } + } + } + } + } -.oe_overlay{ - .w:before, .e:before { - content:"\f07e"; - } - .s:before, .n:before { - content:"\f07d"; - } -} + &.o_top_cover > .oe_overlay_options { + bottom: auto; + top: @odoo-handle-border-width; + right: @odoo-handle-border-width; + } -.oe_overlay.oe_active { - display:block; -} + // HANDLES + > .oe_handles { + @o-handles-offset-to-hide: 10000px; + .o-position-absolute(-@o-handles-offset-to-hide, 0, auto, 0); + + > .oe_handle { + @o-handle-size: 18px; + + opacity: 0.5; + .o-transition(opacity, 400ms); + &:hover { + opacity: 0.9; + } + border: 0 dashed black; + + &:after { + display: block; + width: @o-handle-size; + height: @o-handle-size; + border: solid 1px rgba(0, 0, 0, 0.2); + line-height: @o-handle-size - 2; + font-size: 14px; + font-family: FontAwesome; + background-color: @o-we-color-light; + color: @o-we-color-text-light; + } + &:hover:after { + background-color: @o-we-color-dark; + color: white; + box-shadow: 0 0 5px 3px rgba(255,255,255,0.7); + } + &.w:after, &.e:after { + content: "\f07e"; + } + &.s:after, &.n:after { + content: "\f07d"; + } + + &.w { + border-left-width: @odoo-handle-border-width; + cursor: e-resize; + width: @odoo-handle-edge-size; + .o-position-absolute(@o-handles-offset-to-hide, auto, -@o-handles-offset-to-hide, 0); + + &:after { + .o-position-absolute(@top: 50%, @left: -@odoo-handle-border-width); + margin-top: -@o-handle-size/2; + } + } + &.e { + border-right-width: @odoo-handle-border-width; + cursor: w-resize; + width: @odoo-handle-edge-size; + .o-position-absolute(@o-handles-offset-to-hide, 0, -@o-handles-offset-to-hide, auto); + + &:after { + .o-position-absolute(@top: 50%, @right: -@odoo-handle-border-width); + margin-top: -@o-handle-size/2; + } + } + &.n { + border-top-width: @odoo-handle-border-width; + cursor: s-resize; + height: @odoo-handle-edge-size; + .o-position-absolute(@o-handles-offset-to-hide, 0, auto, 0); + + &:after { + .o-position-absolute(@left: 50%, @top: -@odoo-handle-border-width); + margin-left: -@o-handle-size/2; + } + } + &.s { + border-bottom-width: @odoo-handle-border-width; + cursor: n-resize; + height: @odoo-handle-edge-size; + .o-position-absolute(auto, 0, -@o-handles-offset-to-hide, 0); + + &:after { + .o-position-absolute(@left: 50%, @bottom: -@odoo-handle-border-width); + margin-left: -@o-handle-size/2; + } + } + + // SIZE HANDLERS + &.size { + @o-handle-size-height: 15px; + + height: 0; + background: transparent; + .o-position-absolute(@bottom: -@o-handles-offset-to-hide + @o-handle-size-height, @left: 50%); + width: 250px; + margin-left: -125px; + + > .oe_handle_button { + display: block; + width: 100px; + height: @o-handle-size-height; + padding-top: 2px; + font-weight: 600; + font-size: 9px; + text-transform: uppercase; + background-color: @o-we-color-light; + color: @o-we-color-text-light; + &:hover { + background-color: @o-we-color-dark; + color: white; + } + &.auto_size { + cursor: pointer; + float: left; + } + &.size { + cursor: row-resize; + float: right; + } + } + } + + &.readonly { + cursor: auto !important; + + &:after, &.size { + display: none !important; + } + &:hover { + opacity: 0.5; + } + } + } + } -.oe_overlay.block-w-left .w:before { - content:"" !important; -} -.oe_overlay.block-w-right .w:before { - content:"" !important; -} -.oe_overlay.block-w-left.block-w-right .w:before { - display:none !important; -} -.oe_overlay.block-e-left .e:before { - content:"" !important; -} -.oe_overlay.block-e-right .e:before { - content:"" !important; -} -.oe_overlay.block-e-left.block-e-right .e:before { - display:none !important; -} -.oe_overlay.block-s-top .s:before { - content:"" !important; -} -.oe_overlay.block-s-bottom .s:before { - content:"" !important; -} -.oe_overlay.block-n-top .n:before { - content:"" !important; -} -.oe_overlay.block-n-bottom .n:before { - content:"" !important; + // HANDLERS ICONS + &.block-w-left .w:after { + content: "" !important; + } + &.block-w-right .w:after { + content: "" !important; + } + &.block-w-left.block-w-right .w:after { + display: none !important; + } + &.block-e-left .e:after { + content: "" !important; + } + &.block-e-right .e:after { + content: "" !important; + } + &.block-e-left.block-e-right .e:after { + display: none !important; + } + &.block-s-top .s:after { + content: "" !important; + } + &.block-s-bottom .s:after { + content: "" !important; + } + &.block-n-top .n:after { + content: "" !important; + } + &.block-n-bottom .n:after { + content: "" !important; + } + } } -.s-resize-important { - & * { - cursor:s-resize !important; - } -} -.n-resize-important { - & * { - cursor:n-resize !important; - } -} -.e-resize-important { - & * { - cursor:e-resize !important; - } +.s-resize-important * { + cursor: s-resize !important; } -.w-resize-important { - & * { - cursor:w-resize !important; - } +.n-resize-important * { + cursor: n-resize !important; } -.move-important { - & * { - cursor:move !important; - } +.e-resize-important * { + cursor: e-resize !important; } - -.block-s-top .s:before, -.block-s-bottom .s:before, -.block-n-top .n:before, -.block-n-bottom .n:before, -.block-w-left .w:before, -.block-e-right .e:before { - font-size: 10px; +.w-resize-important * { + cursor: w-resize !important; } - - - - -// OVERLAY OPTIONS -// =========================== - -.oe_overlay_options { - text-align:center; - margin-top: -17px; - z-index:1002; - .o-position-absolute(-20px, auto, auto, 50%); - > .btn-group { - left:-50%; - white-space:nowrap; - // default buttons (not customize) - > a.btn { - cursor:pointer; - display:inline-block; - background-color: @we_color-light; - color: @we_color-text-light; - border: 1px solid lighten(@we_color-dark, 10%); - border-left-width: 0; - border-radius: 0; - margin: 0; - float: left; - font-weight: 600; - .transition(all 0.4s ease); - &:first-child { - border-left-width: 1px; - } - &:hover { - color: white; - background-color: lighten(@we_color-dark, 10%); - } - &.oe_snippet_remove { - color: white; - background-color: @we_color-danger; - border-color: darken(@we_color-danger, 20%); - &:hover{ - background-color: darken(@we_color-danger, 20%); - } - } - } - } +.move-important * { + cursor: move !important; } -// CUTOMIZE MENU BUTTON -// =========================== - -.oe_options{ - float: left; - display:inline-block; - .btn.btn-primary { - background-color: @we_color-dark; - border: 1px solid @we_color-dark; - color: @we_color-text-light; - width: 110px; - font-weight: bold; - text-align: left; - text-transform: uppercase; - font-size: 10px; - line-height: 18px; - .transition(all 0.3s ease); - &:hover, &:active, &:focus { - background-color: lighten(@we_color-dark, 5%); - border-color: lighten(@we_color-dark, 10%); - color: white; - outline: none; - .transition(all 0.3s ease); - } - &:before, &:after { - content: ""; - background-color: @we_color-text-light; - border-radius: 5px; - margin-top: -1px; - height: 2px; - width: 7px; - .o-position-absolute(50%); - .transition(all 0.3s); - } +.block-s-top .s, +.block-s-bottom .s, +.block-n-top .n, +.block-n-bottom .n, +.block-w-left .w, +.block-e-right .e { &:before { - right: 21px; - .rotate(45deg); - } - &:after { - right: 17px; - .rotate(-45deg); + font-size: 10px; } - } - // Open menu - &.open .btn.btn-primary { - background-color: @we_color-light; - &:before { - right: 22px; - width: 9px; - transform: translateX(5px) rotate(-45deg); - background-color: white; - } - &:after { - width: 9px; - background-color: white; - .rotate(45deg); - } - } } -// CUTOMIZE MENU -// =========================== -.oe_options { - .dropdown-menu { - text-align:left; - background-color: @we_color-light; - min-width: 192px; - .border-radius(0); - margin: -1px 0 0 0; +// NOTE EDITOR +.note-popover .popover { + height: @odoo-navbar-height; + top: 0 !important; + left: 0 !important; padding: 0; - border-color: @we_color-light; - border: 1px solid @we_color-dark; - select, input { - display:block; - } - a { - color: @we_color-text-light; - font-weight: 600; - font-size: 12px; - padding: 5px 20px; - } - } -} + margin: 0 0 0 @o-we-sidebar-width; + background-color: @o-we-color-dark; + border-radius: 0; + border-width: 0 1px; + width: auto; + text-align: center; + box-shadow: none; + .popover-content { + height: @odoo-navbar-height; + .btn { + height: @odoo-navbar-height; + border: none; + border-radius: 0; + background-color: @o-we-color-dark; + color: @o-we-color-text-normal; + border-top: 2px solid transparent; + .o-transition(all, 0.3s); + &:hover { + border-top: 2px solid @o-we-color-text-normal; + color: @o-we-color-text-normal; + } + } + .btn.active { + border-top: 2px solid white; + background-color: @o-we-color-dark; + color: @o-we-color-text-light; + box-shadow: inset 0 3px 10px rgba(0, 0, 0, 0.5); + } + >.btn-group { + margin-top: -2px + } + .btn-group.open .dropdown-toggle { + border-top: 2px solid white; + background-color: @o-we-color-darker; + color: white; + box-shadow: none; + } + .dropdown-menu { + margin: 0; + border-radius: 0; + background-color: @o-we-color-darker; + > li > a { + width: 100%; + color: @o-we-color-text-light; + &:hover { + background-color: @o-we-tab-active-bg; + color: white; + } + + > i { + visibility: hidden; + } + &.checked > i { + visibility: visible; + } + } + } + #colors_preview { + padding: 4px; + border-radius: 2px; + border: 1px solid #989898; + border-color: fadeOut(@o-we-color-text-normal, 0.5); + } + .note-color-palette td > button, .note-color-palette div .note-color-btn { + border-color: fadeOut(white, 50%); + border-radius: 0; + margin: 1px; + } -// CUTOMIZE MENU LI -// =========================== - -.oe_options .dropdown-menu li { - background-color: @we_color-light; - position: relative; - a { - cursor: pointer; - background-color: transparent; - } - &:last-child a { - padding-bottom: 8px; - } - &:hover { - background-color: fadeOut(@we_color-dark, 50%); - &.dropdown-submenu:after{ - border-left-color: white; - } - > a { - color: white; - background: transparent; - } - > .dropdown-menu{ - display: block; - left: 100%; - top: 1px; - } - } - &.dropdown-submenu:after{ - content: ""; - .o-position-absolute(10px, 10px); - .o-caret-right(3px); - border-left-color: @we_color-text-light; - } - &.divider { - background-color: @we_color-divider; - margin: -1px 0; - } - &.active { - > a { - color: white; - background-color: fadeOut(@we_color-dark, 50%); - &:after { - content: "\E876"; - font-family: "Material Icons"; - float: right; - color: @we_color-accent; - } + // COLORPICKER + .note-color { + .dropdown-toggle { + width: auto; + } + .o_foreground_toggle > button:before { + font-family: FontAwesome; + content: '\f1fc'; + } + .o_background_toggle > button:before { + font-family: FontAwesome; + content: '\f0c3'; + } + + border: 1px solid @o-we-color-divider; + border-width: 0 1px; + .dropdown-menu { + min-width: 250px!important; + padding: 0!important; + } + } } - } } - - -// NOTE EDITOR -// ========================= - -.note-popover .popover { - height: @we_editor-bar-height; - top: 0 !important; - left: 0 !important; - padding: 0; - margin: 0 0 0 @we_sidebar-width; - background-color: @we_color-dark; - border-radius: 0; - border-width: 0 1px; - width: auto; - text-align: center; - .box-shadow(none); - .popover-content { - height: @we_editor-bar-height; - .btn { - height: @we_editor-bar-height; - border: none; - border-radius: 0; - background-color: @we_color-dark; - color: @we_color-text-normal; - border-top: 2px solid transparent; - .transition(all 0.3s); - &:hover { - border-top: 2px solid @we_color-text-normal; - color: @we_color-text-normal; - } - } - .btn.active { - border-top: 2px solid white; - background-color: @we_color-dark; - color: @we_color-text-light; - .box-shadow(inset 0 3px 10px rgba(0, 0, 0, 0.5)); - } - >.btn-group { - margin-top: -2px - } - .btn-group.open .dropdown-toggle { - border-top: 2px solid white; - background-color: @we_color-darker; - color: white; - .box-shadow(none); - } - .dropdown-menu { - margin: 11px 0 0; - border: 0; - border-top: 7px solid darken(@we_color-accent,10%); - background-color: @we_color-darker; - border-radius: 2px 2px 0 0; - &:before{ - .o-caret-up(8px); - border-bottom-color: darken(@we_color-accent,10%); - .o-position-absolute(-15px, auto, auto, 5px); - } - > li > a { - color: @we_color-text-light; - &:hover { - color: white; - } - } - } - #colors_preview { - padding: 4px; - border-radius: 2px; - border: 1px solid #989898; - border-color:fadeOut(@we_color-text-normal, 0.5); - } - .note-color-palette td > button, .note-color-palette div .note-color-btn { - border-color: fadeOut(white, 50%); - border-radius: 0; - margin: 1px; +table.colorpicker { + width: 100%; + td { + padding: 0 2px 2px 0; + > button { + width: 100%; + border: 1px solid black; + padding: 0; + &::after { + content: "A"; + font-weight: bold; + vertical-align: sub; + } + } } - } } +.colorpicker { + background-color: @o-we-color-dark!important; + + .o_colorpicker_sections { + border: 1px solid darken(@o-we-color-dark, 12%); + border-width: 1px 0 0; + font-size: 14px; + + .o_colorpicker_section_menu { + width: 50px; + height: 100%; + float: left; + margin: 0; + padding: 0; + list-style: none; + text-align: center; + + > li { + display: block; + float: none; + margin: 0; + background-color: transparent; + > a { + display: block; + padding: 5px 10px!important; + border-radius: 0; + background-color: transparent; + color: darken(@o-we-color-text-light, 10%); + > i.fa { + font-size: 20px; + } + + &:focus, &:active, &:focus:active { + outline: none; + } + } + &:hover, &.active { + > a { + color: white; + } + } + &.active > a { + background-color: @o-we-tab-active-bg!important; + } + } + } + .o_colorpicker_section_tabs { + width: 200px; + height: 100%; + margin-left: 50px; + .tab-pane { + padding: 5px 10px; + background-color: @o-we-tab-active-bg; + } + } + } + .o_colorpicker_section { + &:after { + content: ""; + display: table; + clear: both; + } -.foreground_toggle, .background_toggle{ - > button { - width: 30px!important; - text-align: center; - } - > button > .caret { - display: none; - } -} -.foreground_toggle > button:before{ - font-family:FontAwesome; - content:'\f1fc'; -} -.background_toggle > button:before{ - font-family:'Material Icons'; - content:'\E23A'; -} -.note-popover .popover-content{ - .note-color{ - border: 1px solid @we_color-divider; - border-width: 0 1px; - .dropdown-menu{ - min-width: 250px!important; - padding: 0!important; - .note-palette-title{ + > button { + position: relative; + display: block; + width: 100%; + height: 30px; + border: 1px solid @o-we-color-dark; + border-radius: 3px; + margin: 0 0 5px; + padding: 0 20px; + line-height: 28px; + font-size: 12px; + font-weight: bold; + text-align: left; + &:hover, &.selected { + box-shadow: 0px 0px 2px 2px @o-we-color-light; + } + &.selected:before { + content: "\f00c"; + font-family: "FontAwesome"; + color: @odoo-brand-optional; + .o-position-absolute(@top: 0, @left: 3px); + font-size: 13px; + line-height: 28px; + } + + &:after { + content: "A"; + .o-position-absolute(0, 0); + width: 25px; + text-align: center; + line-height: 28px; + font-weight: normal; + } + + &[data-event="foreColor"] { + background-color: @o-we-color-normal; + &:after { + background-color: fade(white, 30%); + } + } + + &.o_small { + float: left; + width: auto; + min-width: 27px; + padding: 0; + margin-right: 5px; + } + } + } + .note-palette-title { padding: 10px 0px 10px 10px; - color: @we_color-text-light; + color: @o-we-color-text-light; font-weight: bold; - position: absolute; - } - .palette-reset{ - text-align: right; - width: 100%; + } + .palette-reset { + .o-position-absolute(0, 0); margin: 0; padding: 5px 10px 0; - .note-color-reset{ - float: right; - margin: 3px 0 0; - padding: 0; - &:hover{ - background: transparent!important; - color: @we_color-danger; - } - } - } + .note-color-reset { + font-size: 20px!important; + margin: 3px 0 0; + padding: 0; + &:hover { + background: transparent!important; + color: @o-we-color-danger; + } + } } - } } +// ENTER IN EDIT MODE +body.editor_enable { + padding-top: @odoo-navbar-height!important; -.note-popover .popover-content .dropdown-menu, #oe_manipulators .snippet-option-colorpicker .dropdown-menu{ - > li{ - background-color: @we_color-darker; - min-width: 250px!important - } - .tabs_container{ - background-color: @we_color-darker; - font-size: 0; - background-color: @we_tab--active-bg; - border: 1px solid darken(@we_tab-bg,10%); - border-width: 1px 0 0; - margin: 5px 0 0; - .tabs_toggles{ - display: table-cell; - font-size: 14px; - width: 50px; - padding:0; - margin: 0; - list-style: none; - height: 100%; - vertical-align: top; - background-color: @we_tab-bg; - li{ - background: transparent; - margin-bottom: 10px; - &:last-child{ - margin-bottom: 0; + #web_editor-top-edit { + background-color: @o-we-color-dark; + form.navbar-form { + right: 0; } - > a { - padding: 5px 10px; - display: block; - } - > a > i { - visibility: visible; - color: darken(@we_color-text-light, 10%); - } - &:hover, &.active{ - > a > i {color: white} - } - &.active > a{ - background-color: @we_tab--active-bg; - } - } - } - .tabs{ - display: table-cell; - font-size: 14px; - height: 100%; - width: 200px; } - .tab{ - display: none; - padding: 5px 10px; - background-color: @we_tab--active-bg; - } - .tab.on{ - display: block; - } - } -} + &.editor_has_snippets { + .o-transition(padding-left, 400ms, @o-we-md-ease); + padding-left: @o-we-sidebar-width!important; -// COLORPICKER -// ==================================== - -#oe_manipulators .snippet-option-colorpicker .dropdown-menu{ - - .note-palette-title{ - padding: 10px 0px 10px 10px; - color: @we_color-text-light; - font-weight: bold; - position: absolute; - } - .palette-reset{ - text-align: right; - width: 100%; - margin: 0; - padding: 5px 10px 0; - cursor: pointer; - .note-color-reset{ - float: right; - margin: 3px 0 0; - padding: 0; - &:hover{ - background: transparent!important; - color: @we_color-danger; - } - } - } -} -.popover-content, .dropdown-menu { - .palette_theme, .palette_ui, .palette_grayscale { - button { - display: block; - font-size: 12px; - width: 100%; - max-width: 180px; - padding: 5px 20px; - margin: 0; - position: relative; - text-align: left; - background-color: @we_color-normal; - border: 1px solid @we_color-dark; - height: 30px; - color: @we_color-text-light; - white-space: nowrap; - overflow: auto; - font-weight: 600; - -webkit-font-smoothing: antialiased; - .border-radius(3px); - margin-bottom: 5px; - span { - height: 20px; - width: 25px; - float: right; - display: inline-block; - border: 1px solid #393c44; - .o-position-absolute(4px, 5px); - box-shadow: -10px 0px 10px @we_color-normal; - } - &:hover { - border: 1px solid @we_color-dark; - background: @we_color-light; - color: white; - span { - box-shadow: -10px 0px 10px @we_color-light; - } - } - } - button.selected{ - border: 1px solid @we_color-dark; - background: @we_color-light; - color: white; - span { - box-shadow: -10px 0px 10px @we_color-light; - } - &:before{ - content: "\f00c"; - font-family: "FontAwesome"; - color: @we_color-accent; - position: absolute; - left: 5px; - line-height: 1.7; - font-size: 0.8em; - } + #oe_snippets { + left: 0; + } } - } } +#web_editor_inside_iframe { + background-color: @odoo-brand-secondary; + #editable_area { + font: inherit !important; + line-height: inherit !important; + color: inherit !important; - - -// ENTER IN EDIT MODE -// ============================================ - -body.editor_enable { - #web_editor-top-edit { - background-color: transparent; - } - #web_editor_snippets { - .transition(left 0.4s @we_md-ease); - } -} - -body.editor_enable.editor_has_snippets { - #web_editor-top-edit { - .transition(background 0.4s @we_md-ease); - background-color: @we_color-dark; - .navbar-form { - right: 0; + p { + margin: initial; + } + a, a:hover { + color: inherit; + } + } + &.editor_enable #wrapwrap { + height: 100%; + padding-top: @odoo-navbar-height; + > main { + height: 100%; + #editable_area { + position: relative; + overflow: hidden; + max-width: 600px; + min-height: 100%; + margin: auto; + + background-color: white; + } + } + } + .note-color-palette .colorpicker { + display: none; } - } - #web_editor_snippets { - left: 0; - } } |
