mirror of
https://github.com/Foundry376/Mailspring.git
synced 2025-02-25 16:44:16 +08:00
Summary: When two or more buttons are grouped together, cut the padding off one interior edge so they're spaced more appropriately Remove source list graphics for active states we aren't using Starred in the sidebar Small fix to the feature that keeps the selected item visible as you scroll Test Plan: No new tests yet Reviewers: evan Reviewed By: evan Differential Revision: https://phab.nylas.com/D1607
199 lines
4.4 KiB
Text
199 lines
4.4 KiB
Text
@import "ui-variables";
|
|
|
|
.sheet-toolbar .selection-bar {
|
|
// This item sits in the toolbar and takes up all the remaining
|
|
// space from the toolbar-spacer divs, but flex-shrink means that
|
|
// it shrinks before any other element when not enough space is available.
|
|
|
|
// This is important because the spacers will prevent items from being clickable,
|
|
// (webkit-app-region:drag) even if we're covering them up. We need to make them
|
|
// 0px wide!
|
|
|
|
width: 100%;
|
|
flex-shrink:100;
|
|
height:49px;
|
|
z-index: 10000;
|
|
-webkit-app-region: drag;
|
|
|
|
.absolute {
|
|
position: absolute;
|
|
left: -1px;
|
|
right:-1px;
|
|
top: 0;
|
|
height:49px;
|
|
border-left:1px solid @border-color-divider;
|
|
border-right:1px solid @border-color-divider;
|
|
background-color: @background-primary;
|
|
opacity:0;
|
|
transition: opacity 0.2s ease-in-out;
|
|
pointer-events: none;
|
|
|
|
.inner {
|
|
top: -100%;
|
|
position: absolute;
|
|
width: 100%;
|
|
display:flex;
|
|
transition: top 0.2s ease-in-out;
|
|
-webkit-app-region: no-drag;
|
|
|
|
.centered {
|
|
flex: 1;
|
|
cursor:default;
|
|
text-align: center;
|
|
color:@text-color-subtle;
|
|
padding-top: 15px;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
}
|
|
}
|
|
}
|
|
|
|
// .absolute is positioned full-width over all the other items in the toolbar.
|
|
// when .enabled, it transitions to opacity:1, hiding other items beneath it.
|
|
|
|
// .inner contains the actual buttons and animates *down* while the opacity animation
|
|
// is running. This means the items beneath fade out as the new ones slide in.
|
|
|
|
&.enabled {
|
|
.absolute {
|
|
opacity: 1;
|
|
pointer-events: initial;
|
|
.inner {
|
|
top:0;
|
|
.centered {
|
|
-webkit-app-region: drag;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
.list-container {
|
|
.list-item {
|
|
font-size: @font-size-base;
|
|
line-height: @line-height-computed;
|
|
color: @text-color;
|
|
background: @list-bg;
|
|
|
|
&:hover {
|
|
background: darken(@list-bg, 5%);
|
|
}
|
|
|
|
&.selected {
|
|
background: @list-selected-bg;
|
|
color: @list-selected-color;
|
|
.list-column {
|
|
border-bottom: 1px solid @list-selected-border;
|
|
}
|
|
}
|
|
|
|
&.focused {
|
|
background: @list-focused-bg;
|
|
color: @list-focused-color;
|
|
.list-column {
|
|
border-bottom: 1px solid @list-focused-border;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.list-tabular {
|
|
flex: 1;
|
|
width: 100%;
|
|
height: 100%;
|
|
|
|
.list-tabular-item {
|
|
position: relative;
|
|
width: 100%;
|
|
display: flex;
|
|
&:hover {
|
|
cursor: default;
|
|
}
|
|
|
|
&.keyboard-cursor {
|
|
.checkmark {
|
|
border-left:4px solid @list-focused-bg;
|
|
padding-left:8px;
|
|
}
|
|
}
|
|
|
|
&.selected {
|
|
.checkmark .inner {
|
|
background-color: @accent-primary;
|
|
background-image: url(images/thread-list/checkbox-checkmark@2x.png);
|
|
border:none;
|
|
border-radius: 2px;
|
|
}
|
|
}
|
|
|
|
&.selected.focused {
|
|
.checkmark .inner {
|
|
background-color: @list-bg;
|
|
background-image: url(images/thread-list/checkbox-checkmark-activerow@2x.png);
|
|
border:none;
|
|
border-radius: 2px;
|
|
}
|
|
}
|
|
&.focused {
|
|
.checkmark .inner {
|
|
border:1px solid @accent-primary;
|
|
}
|
|
}
|
|
|
|
.checkmark {
|
|
padding: 12px;
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
.inner {
|
|
width:14px;
|
|
height:14px;
|
|
border:1px solid @list-border;
|
|
border-radius: 2px;
|
|
background: transparent;
|
|
background-size: 12px 9px;
|
|
background-repeat: no-repeat;
|
|
background-position: center;
|
|
}
|
|
}
|
|
}
|
|
|
|
.list-rows {
|
|
overflow: auto;
|
|
// Add back when when we re-implement list-headers
|
|
// padding-top: @font-size-base * 2; /* height of list-headers*/
|
|
}
|
|
|
|
.list-column {
|
|
// The width is set by React.
|
|
display: inline-block;
|
|
padding: @padding-base-vertical @padding-base-horizontal @padding-base-vertical @padding-base-horizontal;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
border-bottom: 1px solid @list-border;
|
|
|
|
&:last-child {
|
|
text-align: right;
|
|
}
|
|
}
|
|
|
|
.list-headers {
|
|
display: flex;
|
|
position: absolute;
|
|
width: 100%;
|
|
top: 0;
|
|
position: absolute;
|
|
background: fade(@list-bg,90%);
|
|
font-size: @font-size-base;
|
|
line-height: @font-size-base * 1.6;
|
|
height:@font-size-base * 2;
|
|
z-index: 3;
|
|
}
|
|
|
|
.list-header {
|
|
}
|
|
|
|
}
|