mirror of
https://github.com/Foundry376/Mailspring.git
synced 2025-02-24 16:14:01 +08:00
Summary: This diff moves the preferences interface to a sheet in the main window, with the following benefits: - We can put any sort of React control in it (no ReactRemote) - It's not strange for the interface to scroll - Since it can scroll, it's safe to auto-generate preferences for plugins based on their package config schema. The general tab is now mostly based on the config schema, with the exception of the "Workspace" and "Layout" bits. The other tabs are still manual, and should be polished more. Test Plan: No new tests Reviewers: evan Reviewed By: evan Differential Revision: https://phab.nylas.com/D2278
211 lines
4.2 KiB
Text
211 lines
4.2 KiB
Text
@import "ui-variables";
|
|
@import "ui-mixins";
|
|
|
|
// Preferences Specific
|
|
|
|
.preferences-wrap {
|
|
input[type=checkbox] {margin: 0 7px 0 0; position: relative; top: -1px; }
|
|
input[type=radio] {margin: 0 7px 0 0; position: relative; top: -1px; }
|
|
select { margin: 4px 0 0 8px; }
|
|
|
|
height: 100%;
|
|
background-color: @background-primary;
|
|
color: @text-color;
|
|
|
|
section:first-child h2:first-child {
|
|
margin-top:0;
|
|
}
|
|
|
|
section section h2 {
|
|
font-size:120%;
|
|
}
|
|
|
|
section {
|
|
padding-bottom: @padding-base-vertical;
|
|
.item {
|
|
padding-top: @padding-small-vertical;
|
|
padding-bottom: @padding-small-vertical;
|
|
}
|
|
}
|
|
|
|
.preferences-sidebar {
|
|
background: @background-secondary;
|
|
border-right: 1px solid @border-color-divider;
|
|
flex: 1;
|
|
max-width:350px;
|
|
min-width:200px;
|
|
height: 100%;
|
|
|
|
.item {
|
|
padding: @padding-large-vertical @padding-large-horizontal;
|
|
border-bottom: 1px solid @border-color-divider;
|
|
cursor: default;
|
|
}
|
|
.item.active {
|
|
background: @background-primary;
|
|
}
|
|
}
|
|
|
|
.preferences-content {
|
|
flex: 4;
|
|
.scroll-region-content {
|
|
padding: @padding-large-vertical*3 @padding-large-horizontal * 3;
|
|
}
|
|
}
|
|
|
|
.well {
|
|
border-radius: 7px;
|
|
border:1px solid @border-color-divider;
|
|
background-color: lighten(@background-secondary, 2%);
|
|
|
|
&.large {
|
|
padding: 20px;
|
|
padding-right:10px;
|
|
}
|
|
&.small {
|
|
padding:10px;
|
|
}
|
|
}
|
|
|
|
.container-signatures {
|
|
.contenteditable-container {
|
|
border: 1px solid @input-border-color;
|
|
padding: 10px;
|
|
margin-top: 20px;
|
|
min-height: 200px;
|
|
}
|
|
|
|
.section-body {
|
|
padding: 10px 0 0 0;
|
|
|
|
.menu {
|
|
border: solid thin #CCC;
|
|
margin-right: 5px;
|
|
min-height: 200px;
|
|
.menu-items {
|
|
margin:0;
|
|
padding:0;
|
|
list-style: none;
|
|
|
|
li { padding: 6px; }
|
|
}
|
|
}
|
|
.menu-horizontal {
|
|
height: 100%;
|
|
.menu-items {
|
|
height:100%;
|
|
margin: 0;
|
|
padding: 0;
|
|
list-style: none;
|
|
li {
|
|
text-align:center;
|
|
width:40px;
|
|
display:inline-block;
|
|
padding:8px 16px 8px 16px;
|
|
border-right: solid thin #CCC;
|
|
}
|
|
}
|
|
}
|
|
.signature-area {
|
|
border: solid thin #CCC;
|
|
min-height: 200px;
|
|
}
|
|
.menu-footer {
|
|
border: solid thin #CCC;
|
|
overflow: auto;
|
|
}
|
|
.signature-footer {
|
|
border: solid thin #CCC;
|
|
overflow: auto;
|
|
|
|
.edit-html-button {
|
|
float: right;
|
|
margin: 6px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.appearance-mode-switch {
|
|
max-width:400px;
|
|
text-align: right;
|
|
|
|
.appearance-mode {
|
|
background-color: @background-off-primary;;
|
|
border-radius: 10px;
|
|
border: 1px solid @background-tertiary;
|
|
text-align: center;
|
|
flex: 1;
|
|
padding:25px;
|
|
padding-bottom:9px;
|
|
margin-right:10px;
|
|
margin-bottom:7px;
|
|
margin-top:0;
|
|
img {
|
|
background-color: @background-tertiary;
|
|
}
|
|
div {
|
|
margin-top: 15px;
|
|
text-transform: capitalize;
|
|
cursor: default;
|
|
}
|
|
&:last-child {
|
|
margin-right:0;
|
|
}
|
|
}
|
|
.appearance-mode.active {
|
|
border:1px solid @component-active-color;
|
|
color: @component-active-color;
|
|
img { background-color: @component-active-color; }
|
|
}
|
|
}
|
|
|
|
.container-keymaps {
|
|
.shortcut {
|
|
padding: 3px 0;
|
|
&.shortcut-select {
|
|
padding: 5px 0 20px 0;
|
|
select {
|
|
width: 75%;
|
|
}
|
|
}
|
|
|
|
.shortcut-name {
|
|
text-align: right;
|
|
flex: 1;
|
|
margin-right: 20px;
|
|
}
|
|
|
|
.shortcut-value {
|
|
text-align: left;
|
|
flex: 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
.container-accounts {
|
|
.account-name {
|
|
font-size: @font-size-large;
|
|
cursor:default;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
}
|
|
.account-subtext {
|
|
font-size: @font-size-small;
|
|
cursor:default;
|
|
}
|
|
}
|
|
}
|
|
|
|
body.platform-win32 {
|
|
.preferences-wrap {
|
|
.well {
|
|
border-radius: 0;
|
|
}
|
|
.container-appearance {
|
|
.appearance-mode {
|
|
border-radius: 0;
|
|
}
|
|
}
|
|
}
|
|
}
|