/** * Roundcube webmail styles for the Elastic skin * * Copyright (c) 2017, The Roundcube Dev Team * * The contents are subject to the Creative Commons Attribution-ShareAlike * License. It is allowed to copy, distribute, transmit and to adapt the work * by keeping credits to the original authors in the README.md file. * See http://creativecommons.org/licenses/by-sa/3.0/ for details. */ /*** Toolbar widget ***/ .toolbar { &.listing a, a { text-decoration: none; cursor: pointer !important; /* TODO: re-consider .listing class use on toolbar */ color: @color-toolbar-button; } a.button { padding: 0 .3em; display: inline-block; border: 0 !important; &:before { &:extend(.font-icon-class); display: inline; float: none; } &.reply:before { content: @fa-var-mail-reply; } &.reply-all:before { content: @fa-var-mail-reply-all; } &.forward:before { content: @fa-var-mail-forward; } &.delete:before { content: @fa-var-trash-o; } &.markmessage:before { content: @fa-var-tag; } &.more:before { content: @fa-var-ellipsis-h; } &.dropdown:before { content: @fa-var-caret-down; } &.settings:before { content: @fa-var-sliders; } &.create:before { content: @fa-var-plus-square; } &.move:before { content: @fa-var-arrows; } &.purge:before { content: @fa-var-eraser; } &.print:before { content: @fa-var-print; } &.search:before { content: @fa-var-search; } &.upload:before, &.import:before { content: @fa-var-upload; } &.download:before, &.export:before { content: @fa-var-download; } &.compose:before { content: @fa-var-edit; } &.archive:before { content: @fa-var-archive; } &.junk:before { content: @fa-var-recycle; } &.enigma:before, &.encrypt:before { content: @fa-var-lock; } &.firstpage:before { content: @fa-var-fast-backward; } &.prev:before { content: @fa-var-arrow-left; } &.next:before { content: @fa-var-arrow-right; } &.prevpage:before { content: @fa-var-backward; } &.nextpage:before { content: @fa-var-forward; } &.lastpage:before { content: @fa-var-fast-forward; } &.send:before { content: @fa-var-paper-plane; } &.back:before { content: @fa-var-arrow-left; } &.closewin:before { content: @fa-var-window-close; } &.save:before { content: @fa-var-floppy-o; } &.vcard:before, &.attach:before { content: @fa-var-paperclip; } &.spellcheck:before { content: @fa-var-magic; /* TODO */ } &.signature:before { content: @fa-var-at; /* TODO */ } &.responses:before { content: @fa-var-comment; } &.select:before { content: @fa-var-check-square-o; } &.threads:before { content: @fa-var-comments; } &.actions:before { content: @fa-var-cog; } &.addto:before { content: @fa-var-envelope-o; } &.addcc:before { content: @fa-var-envelope-o; } &.addbcc:before { content: @fa-var-envelope-o; } &.addressbook:before { content: @fa-var-user; } } .dropbutton { a.button.dropdown { font-size: 75%; span.inner { display: none; } } a.button:first-child { padding-right: 0; } } & > .spacer { width: 1em; } &.pagenav { text-align: center; display: flex; flex-direction: row; border-bottom: 1px solid @color-layout-border; height: @layout-pagenav-height; overflow: hidden; a.button { flex-grow: 1; font-size: 80%; min-width: 1rem !important; height: @layout-pagenav-height !important; color: @color-list-pagenav; &:before { line-height: 1 !important; @media screen and (max-width: (@screen-width-small)) { line-height: 2 !important; } } } .pagenav-text { flex-grow: 4; line-height: @layout-pagenav-height; font-size: 80%; color: @color-list-pagenav; text-overflow: ellipsis; white-space: nowrap; } input { width: 3rem; font-size: 90%; line-height: 1; padding: .25rem; margin: .15rem; display: inline; text-align: center; } } } .header { a.button { color: @color-font; } .buttons { display: block; button { display: block; float: left; cursor: pointer; color: @color-toolbar-button; background-color: transparent; border: 0; padding: 0; height: @layout-touch-header-height; line-height: @layout-touch-header-height; width: 2.5em; &:before { font-size: 1.75rem; } } a.button { display: inline-block; &:before { &:extend(.font-icon-class); float: none; } &.reply:before { content: @fa-var-mail-reply; } &.send:before { content: @fa-var-paper-plane; } } } } .popupmenu.toolbar.listing { a.button:before { display: inline-block; } .dropbutton { display: flex; a.button:first-child { overflow: hidden; text-overflow: ellipsis; flex: 1; } a.button.dropdown { font-size: 100%; cursor: pointer; &:before { content: @fa-var-angle-right; margin-left: .5em; margin-right: 0; } span.inner { display: none; } } } li.spacer { display: none; } li:last-child { border: 0; } } .toolbarmenu li { &.separator { /* TODO: all separator properties */ line-height: 1.5rem !important; font-size: .75rem; padding: 0 .5rem; color: @color-popover-separator; background-color: @color-popover-separator-background; label { margin: 0; /* Unsets Bootstrap label margin, bug? */ } } a { opacity: .5; &.active { opacity: 1; &:hover { color: @color-toolbarmenu-hover; background-color: @color-toolbarmenu-hover-background; } } } &:last-child { border-bottom: none; } a:before { &:extend(.font-icon-class); } a.print:before { content: @fa-var-print; } a.copy:before { content: @fa-var-copy; } a.move:before { content: @fa-var-arrows; } a.source:before { content: @fa-var-flask; } a.download:before { content: @fa-var-download; } a.extwin:before { content: @fa-var-external-link; } a.create:before { content: @fa-var-plus-square; } a.edit:before { content: @fa-var-edit; /* TODO: edit.asnew */ } a.rename:before { content: @fa-var-pencil; /* TODO: better icon? */ } a.read:before { content: @fa-var-star-o; } a.unread:before { content: @fa-var-star; } a.flag:before { content: @fa-var-flag; } a.unflag:before { content: @fa-var-flag-o; } a.filterlink:before { content: @fa-var-filter; } a.reply.list:before, a.reply.all:before { content: @fa-var-mail-reply-all; } a.forward:before, a.forward.bounce:before, a.forward.attachment:before, a.forward.inline:before { content: @fa-var-mail-forward; } a.download.mbox:before, a.download.eml:before, a.download.maildir:before { content: @fa-var-download; } a.export.selection:before, a.export.all:before { content: @fa-var-download; } a.select.all:before { content: @fa-var-check-square-o; } a.select.none:before { content: @fa-var-times; } a.select.page:before { content: @fa-var-reorder; } a.select.flagged:before { content: @fa-var-flag; } a.select.unread:before { content: @fa-var-star; } a.select.invert:before { content: @fa-var-square-o; } a.expand.all:before, a.expand.unread:before, a.expand.none:before { content: @fa-var-comments; } a.search:before { content: @fa-var-search; } a.delete:before { content: @fa-var-trash; } a.expunge:before { content: @fa-var-compress; } a.import:before { content: @fa-var-upload; } a.settings:before { content: @fa-var-sliders; } a.insertresponse:before { content: @fa-var-comment; } a.compose:before { content: @fa-var-edit; } a.addressbook:before { content: @fa-var-user; } } #layout > .sidebar, #layout > .list { span.inner { display: none; } } .toolbar.content-frame-navigation { span { flex-grow: 1; } } @media screen and (min-width: (@screen-width-small + 1px)) { ul.toolbar { flex: 1; } .toolbar { margin: 0; font-size: 1rem; a.button { height: @layout-header-height; min-width: 3.5rem; max-width: 6rem; padding: .45rem; text-align: center; text-overflow: ellipsis; overflow-x: hidden; line-height: 1.5; &:before { margin: 0; line-height: 1.75; } &:not(.disabled):focus, &:not(.disabled):hover { background-color: @color-toolbar-button-background-hover; outline: 0; } } a span.inner { font-size: 90%; font-weight: normal; } &.listing li { display: inline-block; border: 0; a.button:before { height: 1.75rem; float: none; display: block; width: auto; } } .dropbutton { height: @layout-header-height; display: inline-block; &:hover { background-color: @color-toolbar-button-background-hover; } a.button.dropdown { min-width: 1.1rem; padding: 0 .3rem; &:hover { background-color: darken(@color-toolbar-button-background-hover, 5%); } &:before { height: @layout-header-height; line-height: 4.2; } } } } .footer.toolbar { a.button:before { height: 1.75rem; float: none; display: block; width: auto; } } #layout .footer span.inner { display: inline !important; } .toolbar.content-frame-navigation { display: none !important; } #layout > .content > .header > .toolbar { text-align: center; } } @media screen and (max-width: @screen-width-small) { .toolbar { a.button { padding: 0 .5em; } a.button.texticon { &:before { display: none; } span.inner { display: inline !important; } } } }