mirror of
https://github.com/gristlabs/grist-core.git
synced 2026-03-02 04:09:24 +00:00
(core) Add dark mode to user preferences
Summary: Adds initial implementation of dark mode. Preferences for dark mode are available on the account settings page. Dark mode is currently a beta feature as there are still some small bugs to squash and a few remaining UI elements to style. Test Plan: Browser tests. Reviewers: jarek Reviewed By: jarek Subscribers: paulfitz, jarek Differential Revision: https://phab.getgrist.com/D3587
This commit is contained in:
@@ -7,7 +7,7 @@ import { getFieldType } from "app/client/ui/RightPanel";
|
||||
import { IWidgetType } from "app/client/ui/widgetTypes";
|
||||
import { basicButton, cssButton, primaryButton } from 'app/client/ui2018/buttons';
|
||||
import * as checkbox from "app/client/ui2018/checkbox";
|
||||
import { colors, vars } from "app/client/ui2018/cssVars";
|
||||
import { theme, vars } from "app/client/ui2018/cssVars";
|
||||
import { cssDragger } from "app/client/ui2018/draggableList";
|
||||
import { icon } from "app/client/ui2018/icons";
|
||||
import * as gutil from 'app/common/gutil';
|
||||
@@ -200,7 +200,7 @@ export class VisibleFieldsConfig extends Disposable {
|
||||
dom.maybe(
|
||||
(use) => Boolean(use(use(this._section.viewFields).getObservable()).length),
|
||||
() => (
|
||||
cssGreenLabel(
|
||||
cssControlLabel(
|
||||
icon('Tick'),
|
||||
'Select All',
|
||||
dom.on('click', () => this._setVisibleCheckboxes(fieldsDraggable, true)),
|
||||
@@ -236,7 +236,7 @@ export class VisibleFieldsConfig extends Disposable {
|
||||
dom.maybe(
|
||||
(use) => Boolean(use(this._hiddenFields.getObservable()).length && !use(this._collapseHiddenFields)),
|
||||
() => (
|
||||
cssGreenLabel(
|
||||
cssControlLabel(
|
||||
icon('Tick'),
|
||||
'Select All',
|
||||
dom.on('click', () => this._setHiddenCheckboxes(hiddenFieldsDraggable, true)),
|
||||
@@ -453,7 +453,7 @@ export const cssDragRow = styled('div', `
|
||||
|
||||
export const cssFieldEntry = styled('div', `
|
||||
display: flex;
|
||||
background-color: ${colors.mediumGrey};
|
||||
background-color: ${theme.hover};
|
||||
width: 100%;
|
||||
border-radius: 2px;
|
||||
margin: 0 8px 0 0;
|
||||
@@ -463,10 +463,11 @@ export const cssFieldEntry = styled('div', `
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
|
||||
--icon-color: ${colors.slate};
|
||||
--icon-color: ${theme.lightText};
|
||||
`);
|
||||
|
||||
const cssHideIcon = styled(icon, `
|
||||
--icon-color: ${theme.lightText};
|
||||
display: none;
|
||||
cursor: pointer;
|
||||
flex: none;
|
||||
@@ -477,12 +478,14 @@ const cssHideIcon = styled(icon, `
|
||||
`);
|
||||
|
||||
export const cssFieldLabel = styled('span', `
|
||||
color: ${theme.text};
|
||||
flex: 1 1 auto;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
`);
|
||||
|
||||
const cssFieldListHeader = styled('span', `
|
||||
color: ${theme.text};
|
||||
flex: 1 1 0px;
|
||||
font-size: ${vars.xsmallFontSize};
|
||||
text-transform: uppercase;
|
||||
@@ -492,15 +495,15 @@ const cssRow = styled('div', `
|
||||
display: flex;
|
||||
margin: 16px;
|
||||
overflow: hidden;
|
||||
--icon-color: ${colors.slate};
|
||||
--icon-color: ${theme.lightText};
|
||||
& > .${cssButton.className} {
|
||||
margin-right: 8px;
|
||||
}
|
||||
`);
|
||||
|
||||
const cssGreenLabel = styled('div', `
|
||||
--icon-color: ${colors.lightGreen};
|
||||
color: ${colors.lightGreen};
|
||||
const cssControlLabel = styled('div', `
|
||||
--icon-color: ${theme.controlFg};
|
||||
color: ${theme.controlFg};
|
||||
cursor: pointer;
|
||||
`);
|
||||
|
||||
@@ -511,6 +514,7 @@ const cssHeader = styled(cssRow, `
|
||||
`);
|
||||
|
||||
const cssHeaderIcon = styled(icon, `
|
||||
--icon-color: ${theme.lightText};
|
||||
flex: none;
|
||||
margin-right: 4px;
|
||||
`);
|
||||
|
||||
Reference in New Issue
Block a user