 
   componentWillUpdate: ->
     center = @_getCenter()
-    if @state.center?.x != center.x && @state.center?.y != center.y
-      @setState center: center
+    @setState center: center if @state.center?.x != center.x && @state.center?.y != center.y
 
   componentWillUnmount: ->
     window.removeEventListener('resize', @handleResize)

    <div className={css.root}>
      <div ref="wrapper" className={css.wrapper} style={height: @state.radius * 2} >
        {
          if @state.mode == 'minutes'
            <Minutes
              center={@state.center}
              onChange={@onMinuteChange}
              radius={@state.radius}
              spacing={@state.radius * 0.16} />
          else if @state.mode == 'hours'
            <Hours
              format={'24hr'}
              initialValue={16}
              center={@state.center}
              onChange={@onHourChange}
              radius={@state.radius}
              spacing={@state.radius * 0.16} />

  # -- States & Properties
  propTypes:
    className : React.PropTypes.string
    display   : React.PropTypes.oneOf(['hours', 'minutes'])
    format    : React.PropTypes.oneOf(['24hr', 'ampm'])

  getDefaultProps: ->
    className : ''
    display   : 'hours'
    format    : '24hr'

  getInitialState: ->
    radius    : 0

  # -- Lifecycle
