Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Push dark theme #671

Merged
merged 14 commits into from
Apr 3, 2020
3 changes: 2 additions & 1 deletion src/components/App/App.reducer.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ const initialState = {
uiSize: DISPLAY_SIZE_STANDARD,
fontSize: DISPLAY_SIZE_STANDARD,
hideOutputActive: false,
labelPosition: LABEL_POSITION_BELOW
labelPosition: LABEL_POSITION_BELOW,
darkThemeActive: false
},
navigationSettings: {
active: false,
Expand Down
5 changes: 4 additions & 1 deletion src/components/Board/Board.component.js
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,8 @@ export class Board extends Component {
navigationSettings,
deactivateScanner,
publishBoard,
emptyVoiceAlert
emptyVoiceAlert,
displaySettings
} = this.props;

const tiles = this.renderTiles(board.tiles);
Expand Down Expand Up @@ -275,6 +276,7 @@ export class Board extends Component {
userData={userData}
publishBoard={publishBoard}
showNotification={this.props.showNotification}
dark={displaySettings.darkThemeActive}
/>
{emptyVoiceAlert && (
<Alert variant="filled" severity="error">
Expand Down Expand Up @@ -319,6 +321,7 @@ export class Board extends Component {
edit={isSelecting && !isSaving}
cols={cols}
updateTiles={this.updateTiles}
dark={displaySettings.darkThemeActive}
>
{tiles}
</Grid>
Expand Down
5 changes: 5 additions & 0 deletions src/components/Board/Navbar/Navbar.css
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@
color: #fff;
}

.Navbar__dark {
martinbedouret marked this conversation as resolved.
Show resolved Hide resolved
color: #000;
background: #fff;
}

.Navbar__title {
display: flex;
order: 2;
Expand Down
8 changes: 5 additions & 3 deletions src/components/Board/Navbar/Navbar.js
Original file line number Diff line number Diff line change
Expand Up @@ -110,14 +110,15 @@ export class Navbar extends React.Component {
onBackClick,
onDeactivateScannerClick,
onLockClick,
onLockNotify
onLockNotify,
dark
} = this.props;

const isPublic = board && board.isPublic;
const isOwnBoard = board && board.email === userData.email;

return (
<div className={classNames('Navbar', className)}>
<div className={classNames('Navbar', { Navbar__dark: dark }, className)}>
martinbedouret marked this conversation as resolved.
Show resolved Hide resolved
{isLocked && <h2 className="Navbar__title">{title}</h2>}
<div className="Navbar__group Navbar__group--start">
<div className={this.state.backButton ? 'scanner__focused' : ''}>
Expand Down Expand Up @@ -211,7 +212,8 @@ Navbar.propTypes = {
*/
onLockClick: PropTypes.func,
isScannerActive: PropTypes.bool,
onDeactivateScannerClick: PropTypes.func
onDeactivateScannerClick: PropTypes.func,
dark: PropTypes.bool
};

export default injectIntl(Navbar);
6 changes: 4 additions & 2 deletions src/components/Board/Output/Output.container.js
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,7 @@ export class OutputContainer extends Component {
};

render() {
const { output, navigationSettings } = this.props;
const { output, navigationSettings, dark } = this.props;

const tabIndex = output.length ? '0' : '-1';

Expand All @@ -211,6 +211,7 @@ export class OutputContainer extends Component {
symbols={this.state.translatedOutput}
tabIndex={tabIndex}
navigationSettings={navigationSettings}
dark={dark}
/>
);
}
Expand All @@ -219,7 +220,8 @@ export class OutputContainer extends Component {
const mapStateToProps = ({ board, app }) => {
return {
output: board.output,
navigationSettings: app.navigationSettings
navigationSettings: app.navigationSettings,
dark: app.displaySettings.darkThemeActive
};
};

Expand Down
5 changes: 5 additions & 0 deletions src/components/Board/Output/SymbolOutput/SymbolOutput.css
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@
background: #fff;
}

.SymbolOutput__dark {
martinbedouret marked this conversation as resolved.
Show resolved Hide resolved
color: #fff;
background: #303030;
}

.SymbolOutput__value {
height: calc(100% - 10px);
width: 100px;
Expand Down
8 changes: 6 additions & 2 deletions src/components/Board/Output/SymbolOutput/SymbolOutput.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import React, { PureComponent } from 'react';
import PropTypes from 'prop-types';

import classNames from 'classnames';
import ClearIcon from '@material-ui/icons/Clear';
import IconButton from '@material-ui/core/IconButton';

Expand All @@ -9,6 +10,7 @@ import BackspaceButton from './BackspaceButton';
import ClearButton from './ClearButton';
import Scroll from './Scroll';
import './SymbolOutput.css';
import { dark } from '@material-ui/core/styles/createPalette';
martinbedouret marked this conversation as resolved.
Show resolved Hide resolved

class SymbolOutput extends PureComponent {
static propTypes = {
Expand All @@ -24,7 +26,8 @@ class SymbolOutput extends PureComponent {
/**
* Label to display
*/
label: PropTypes.oneOfType([PropTypes.string, PropTypes.node])
label: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
dark: PropTypes.bool
})
)
};
Expand All @@ -40,6 +43,7 @@ class SymbolOutput extends PureComponent {
onRemoveClick,
symbols,
navigationSettings,
dark,
...other
} = this.props;

Expand All @@ -56,7 +60,7 @@ class SymbolOutput extends PureComponent {
};

return (
<div className="SymbolOutput">
<div className={classNames('SymbolOutput', { SymbolOutput__dark: dark })}>
<Scroll {...other}>
{symbols.map(({ image, label }, index) => (
<div className="SymbolOutput__value" key={index}>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import React from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames';
import FullScreenDialog, {
FullScreenDialogContent
} from '../../UI/FullScreenDialog';
Expand Down Expand Up @@ -45,7 +46,8 @@ const CommunicatorDialog = ({
updateMyBoard,
setRootBoard,
publishBoard,
showNotification
showNotification,
dark
}) => (
<FullScreenDialog
disableSubmit={true}
Expand All @@ -67,7 +69,9 @@ const CommunicatorDialog = ({
<Tabs
value={selectedTab}
onChange={onTabChange}
className="CommunicatorDialog__tabs"
className={classNames('CommunicatorDialog__tabs', {
CommunicatorDialog__tabs__dark: dark
martinbedouret marked this conversation as resolved.
Show resolved Hide resolved
})}
fixed="top"
variant="scrollable"
scrollButtons="off"
Expand All @@ -91,11 +95,20 @@ const CommunicatorDialog = ({
/>
</Tabs>

<div className="CommunicatorDialog__content">
<div
className={classNames('CommunicatorDialog__content', {
CommunicatorDialog__content__dark: dark
})}
>
{!loading && (
<React.Fragment>
{selectedTab === TAB_INDEXES.COMMUNICATOR_BOARDS && (
<div className="CommunicatorDialog__communicatorData">
<div
className={classNames(
'CommunicatorDialog__communicatorData',
{ CommunicatorDialog__communicatorData__dark: dark }
)}
>
<React.Fragment>
<div className="CommunicatorDialog__communicatorData__title">
{communicator.name}
Expand All @@ -109,7 +122,11 @@ const CommunicatorDialog = ({
</div>
)}

<div className="CommunicatorDialog__boards">
<div
className={classNames('CommunicatorDialog__boards', {
CommunicatorDialog__boards__dark: dark
})}
>
{!boards.length && (
<div className="CommunicatorDialog__boards__emptyMessage">
<FormattedMessage {...messages.emptyBoardsList} />
Expand All @@ -133,6 +150,7 @@ const CommunicatorDialog = ({
communicator={communicator}
showNotification={showNotification}
activeBoardId={activeBoardId}
dark={dark}
/>
))}

Expand Down Expand Up @@ -208,7 +226,8 @@ CommunicatorDialog.propTypes = {
copyBoard: PropTypes.func.isRequired,
setRootBoard: PropTypes.func.isRequired,
publishBoard: PropTypes.func.isRequired,
showNotification: PropTypes.func.isRequired
showNotification: PropTypes.func.isRequired,
dark: PropTypes.bool
};

export default CommunicatorDialog;
Original file line number Diff line number Diff line change
Expand Up @@ -542,7 +542,7 @@ const mapStateToProps = ({ board, communicator, language, app }, ownProps) => {
board => currentCommunicator.boards.indexOf(board.id) >= 0
);

const { userData } = app;
const { userData, displaySettings } = app;
const cboardBoards = board.boards.filter(
board => board.email === 'support@cboard.io'
);
Expand All @@ -555,7 +555,8 @@ const mapStateToProps = ({ board, communicator, language, app }, ownProps) => {
cboardBoards,
availableBoards: board.boards,
userData,
activeBoardId: board.activeBoardId
activeBoardId: board.activeBoardId,
dark: displaySettings.darkThemeActive
};
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@
color: #fff;
}

.CommunicatorDialog__tabs__dark {
background-color: #607d8b;
color: #fff;
}

.CommunicatorDialog__tabs [class^='TabIndicator-'] {
background-color: #fff;
height: 3px;
Expand All @@ -22,6 +27,10 @@
padding: 0;
}

.CommunicatorDialog__content__dark {
background-color: #5e5e5e;
}

.CommunicatorDialog__content .CommunicatorDialog__spinner {
margin: 40px auto;
display: block;
Expand All @@ -31,6 +40,9 @@
background: #eee;
padding: 16px 16px 28px;
}
.CommunicatorDialog__communicatorData__dark {
background: rgba(36, 36, 36, 0.933);
}

.CommunicatorDialog__communicatorData__title {
font-size: 1.14rem;
Expand All @@ -47,12 +59,20 @@
padding: 20px 16px;
}

.CommunicatorDialog__boards__dark {
background-color: #424242;
}

.CommunicatorDialog__boards__item {
display: flex;
min-height: 150px;
margin-bottom: 10px;
}

.CommunicatorDialog__boards__item__dark {
background-color: #424242;
}

.CommunicatorDialog__boards__item__data {
position: relative;
width: 50%;
Expand All @@ -75,7 +95,7 @@
right: 8px;
padding: 5px;
min-width: 20px;
background-color: #5e5e5e;
background-color: #838383;
}

.CommunicatorDialog__boards__item__image_container svg {
Expand All @@ -86,7 +106,7 @@
.CommunicatorDialog__boards__item__actions {
position: relative;
width: 10%;
color: #5e5e5e;
color: #838383;
}

.CommunicatorDialog__boards__item__image img {
Expand All @@ -107,7 +127,7 @@
right: 8px;
padding: 5px;
min-width: 20px;
background-color: #5e5e5e;
background-color: #838383;
}

.CommunicatorDialog__boards__item__image__empty button svg {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import React from 'react';
import PropTypes from 'prop-types';
import { intlShape } from 'react-intl';
import classNames from 'classnames';
import moment from 'moment';
import PublicIcon from '@material-ui/icons/Public';
import KeyIcon from '@material-ui/icons/VpnKey';
Expand Down Expand Up @@ -226,7 +227,8 @@ class CommunicatorDialogBoardItem extends React.Component {
userData,
communicator,
activeBoardId,
addOrRemoveBoard
addOrRemoveBoard,
dark
} = this.props;
const title = board.name || board.id;
const displayActions =
Expand All @@ -246,7 +248,11 @@ class CommunicatorDialogBoardItem extends React.Component {
: this.state.imageBoard;

return (
<div className="CommunicatorDialog__boards__item">
<div
className={classNames('CommunicatorDialog__boards__item', {
CommunicatorDialog__boards__item__dark: dark
})}
>
<div className="CommunicatorDialog__boards__item__image">
{!!boardCaption && (
<div className="CommunicatorDialog__boards__item__image_container">
Expand Down Expand Up @@ -645,7 +651,8 @@ CommunicatorDialogBoardItem.propTypes = {
publishBoard: PropTypes.func.isRequired,
setRootBoard: PropTypes.func.isRequired,
showNotification: PropTypes.func.isRequired,
selectedIds: PropTypes.arrayOf(PropTypes.string)
selectedIds: PropTypes.arrayOf(PropTypes.string),
dark: PropTypes.bool
};

export default CommunicatorDialogBoardItem;
Loading