roundcubemail-plugins-kolab/plugins/libkolab/skins/elastic/libkolab.less

420 lines
9.5 KiB
Text
Raw Normal View History

/**
* Kolab core library
*
2018-01-03 11:06:01 +01:00
* This file contains Elastic skin styles for various Kolab plugins.
*
2018-01-03 11:06:01 +01:00
* @author Aleksander Machniak <machniak@kolabsys.com>
*
2018-01-03 11:06:01 +01:00
* Copyright (C) 2012-2018, Kolab Systems AG <contact@kolabsys.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
@import (reference) "../../../../skins/elastic/styles/variables";
@import (reference) "../../../../skins/elastic/styles/mixins";
2018-01-03 11:06:01 +01:00
/*** Common folders list extensions ***/
.listing {
// Fix focus indicator, because we add div element in the list record
@media screen and (min-width: @screen-width-large) {
li > div > a {
border-left: 2px solid transparent;
}
li > div > a:focus {
border-left: 2px solid @color-list-focus-indicator;
outline: 0;
}
}
li {
& > div {
display: flex;
& > a:first-child {
.overflow-ellipsis;
position: relative;
flex-grow: 1;
&:after {
color: #ccc;
position: absolute;
top: 0;
right: 0;
height: @listing-line-height !important;
font-size: 1.1em !important;
}
& + input {
position: initial;
}
}
&.folder .listname:before {
&:extend(.font-icon-class);
content: @fa-var-sticky-note;
2018-01-30 10:38:32 +01:00
margin-right: .5rem;
}
span.actions {
display: flex;
input + & {
padding-right: 2em;
}
a {
padding: 0;
margin: 0;
margin-right: .2rem;
cursor: pointer;
&:before {
margin: 0;
}
&.remove {
display: none;
}
}
}
2018-03-25 13:15:30 +00:00
a.quickview {
&:before {
content: @fa-var-eye;
opacity: .2;
color: @color-link;
}
2018-03-25 13:15:30 +00:00
&:after {
display: none !important;
}
}
&.focusview {
a.quickview:before {
content: @fa-var-eye;
opacity: 1;
}
}
.subscribed {
cursor: pointer;
// reset listing's link style
padding: 0;
border-left: 0;
width: auto;
&:before {
2017-12-08 13:43:58 +01:00
.font-icon-regular(@fa-var-bookmark); // TODO: better icon
height: auto;
color: @color-link;
margin-right: .25rem;
}
}
// span.subscribed is used on addressbooks list, a.subscribed in other places
span.subscribed:before {
&:extend(.font-icon-class);
.font-icon-regular(@fa-var-bookmark); // TODO: better icon
}
&.subscribed {
.subscribed:before {
2017-12-08 13:43:58 +01:00
.font-icon-solid(@fa-var-bookmark); // TODO: better icon
}
}
}
&.selected > div {
color: @color-list-selected;
background-color: @color-list-selected-background;
}
/*
&.shared > div a:first-child {
padding-right: 1.6em;
&:after {
&:extend(.font-icon-class);
content: @fa-var-share-alt;
}
}
&.user > div a:first-child {
padding-right: 1.6em;
&:after {
&:extend(.font-icon-class);
content: @fa-var-user;
}
}
*/
& > div.readonly a:first-child,
2017-12-08 13:43:58 +01:00
&.readonly:not(.virtual) > div a:first-child {
padding-right: 1.6em;
&:after {
&:extend(.font-icon-class);
content: @fa-var-lock;
}
}
& > div.virtual.user > .listname,
&.virtual.user > div a:first-child {
&:before {
.font-icon-solid(@fa-var-user);
}
&:after {
display: none;
}
}
& > div.virtual.shared > .listname,
&.virtual.shared > div a:first-child {
&:before {
.font-icon-solid(@fa-var-share-alt);
}
&:after {
display: none;
}
}
&.virtual > div > a {
opacity: .5;
}
}
2018-02-25 10:35:13 +00:00
// Tree structure fix
&.treelist:not(.notree) {
& > li > div > a {
padding-left: @listing-treetoggle-width;
}
}
input.flex-checkbox {
position: relative !important;
margin: 0 0 0 .25em !important;
& + label {
position: relative !important;
margin: 0 .3em 0 -1em !important;
right: 0 !important;
2018-03-25 13:15:30 +00:00
font-size: 1.15em;
}
}
li.droptarget > div {
background-color: @color-list-droptarget-background;
}
li .count {
position: absolute;
top: 0;
right: 0;
min-width: 2em;
line-height: 1.4rem;
margin: (@listing-line-height - 1.4rem)/2;
padding: 0 .3em;
border-radius: .4em;
background: @color-list-secondary;
color: #fff;
text-align: center;
font-weight: bold;
html.touch & {
line-height: 2rem;
margin: (@listing-touch-line-height - 2rem)/2;
}
}
}
html.touch .listing {
li {
& > div {
a:after {
height: @listing-touch-line-height !important;
}
}
2018-03-25 13:15:30 +00:00
.actions {
margin-left: .2rem;
a {
margin-right: .5rem;
}
}
}
}
.searchresults {
.boxtitle {
line-height: 2rem !important;
font-size: 80%;
padding: 0 .5rem;
margin: 0;
color: @color-popover-separator;
background-color: @color-popover-separator-background;
text-align: center;
border-bottom: 1px solid @color-layout-border;
}
}
.folderlist li.mailbox {
&.type-event > a:before {
.font-icon-solid(@fa-var-calendar);
}
&.type-task > a:before {
.font-icon-solid(@fa-var-calendar-check);
}
&.type-journal > a:before {
.font-icon-regular(@fa-var-calendar);
}
&.type-contact > a:before {
.font-icon-regular(@fa-var-address-book);
}
&.type-note > a:before {
.font-icon-regular(@fa-var-sticky-note);
}
&.type-configuration > a:before {
.font-icon-solid(@fa-var-cog);
}
&.type-freebusy > a:before {
.font-icon-regular(@fa-var-calendar);
}
&.type-file > a:before {
.font-icon-solid(@fa-var-folder);
}
}
2017-11-29 13:14:48 +01:00
.toolbarmenu.listing li {
&.search {
padding: .25rem .5rem;
.input-group {
i.icon {
font-size: 80%;
padding: .5rem;
}
input {
font-size: 100%;
}
}
}
a.history:before {
content: @fa-var-history;
}
}
.formbuttons-secondary-kolab {
display: inline;
}
a.history {
&.disabled {
display: none;
}
&:before {
&:extend(.font-icon-class);
content: @fa-var-history;
display: inline;
float: none;
}
}
2018-01-03 11:06:01 +01:00
// E.g. notes preview frame
.watermark {
& > * {
display: none;
}
&.formcontainer {
background: transparent !important;
& > * {
display: initial;
}
}
}
.form-group > .datetime {
display: flex;
white-space: nowrap;
input {
width: 10em;
}
input:first-child {
margin-right: .5rem;
width: 15em;
}
a {
margin-left: 1em;
text-align: right;
flex: 1;
line-height: 2.4;
}
}
button.btn.save.notify:before {
content: @fa-var-envelope;
}
button.btn.print:before {
content: @fa-var-print;
}
.print-config {
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 10000;
padding: .5em 1em;
background-color: @color-black-shade-bg;
.prop {
margin-left: .5rem;
}
@media print {
display: none;
}
& + .print-content {
position: relative;
top: 0;
left: 0;
height: auto;
margin: 5em auto 0 auto;
overflow: visible;
}
}
2018-01-03 11:06:01 +01:00
@import "include/calendar";
@import "include/kolab_activesync";
@import "include/kolab_delegation";
@import "include/kolab_files";
2018-01-03 11:06:01 +01:00
@import "include/kolab_notes";
@import "include/kolab_tags";
@import "include/libcalendaring";
2018-01-03 11:06:01 +01:00
@import "include/tasklist";