Fix #131 - Make active favourite buttons yellow

This commit is contained in:
Eugen Rochko
2016-11-10 01:32:32 +01:00
parent ca3b364aea
commit 36921be9aa
3 changed files with 34 additions and 8 deletions

View File

@ -7,7 +7,9 @@ const IconButton = React.createClass({
icon: React.PropTypes.string.isRequired,
onClick: React.PropTypes.func.isRequired,
size: React.PropTypes.number,
active: React.PropTypes.bool
active: React.PropTypes.bool,
style: React.PropTypes.object,
activeStyle: React.PropTypes.object
},
getDefaultProps () {
@ -26,7 +28,7 @@ const IconButton = React.createClass({
},
render () {
const style = {
let style = {
display: 'inline-block',
border: 'none',
padding: '0',
@ -39,6 +41,10 @@ const IconButton = React.createClass({
...this.props.style
};
if (this.props.active) {
style = { ...style, ...this.props.activeStyle };
}
return (
<button aria-label={this.props.title} title={this.props.title} className={`icon-button ${this.props.active ? 'active' : ''}`} onClick={this.handleClick} style={style}>
<i className={`fa fa-fw fa-${this.props.icon}`} aria-hidden='true' />

View File

@ -49,7 +49,7 @@ const StatusActionBar = React.createClass({
<div style={{ marginTop: '10px', overflow: 'hidden' }}>
<div style={{ float: 'left', marginRight: '18px'}}><IconButton title='Reply' icon='reply' onClick={this.handleReplyClick} /></div>
<div style={{ float: 'left', marginRight: '18px'}}><IconButton active={status.get('reblogged')} title='Reblog' icon='retweet' onClick={this.handleReblogClick} /></div>
<div style={{ float: 'left', marginRight: '18px'}}><IconButton active={status.get('favourited')} title='Favourite' icon='star' onClick={this.handleFavouriteClick} /></div>
<div style={{ float: 'left', marginRight: '18px'}}><IconButton active={status.get('favourited')} title='Favourite' icon='star' onClick={this.handleFavouriteClick} activeStyle={{ color: '#ca8f04' }} /></div>
<div onClick={e => e.stopPropagation()} style={{ width: '18px', height: '18px', float: 'left' }}>
<DropdownMenu items={menu} icon='ellipsis-h' size={18} />