about summary refs log tree commit diff
path: root/app/assets/javascripts/components/components/icon_button.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/components/components/icon_button.jsx')
-rw-r--r--app/assets/javascripts/components/components/icon_button.jsx10
1 files changed, 8 insertions, 2 deletions
diff --git a/app/assets/javascripts/components/components/icon_button.jsx b/app/assets/javascripts/components/components/icon_button.jsx
index 656f3d4a3..d8f00f5d8 100644
--- a/app/assets/javascripts/components/components/icon_button.jsx
+++ b/app/assets/javascripts/components/components/icon_button.jsx
@@ -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' />