                 NSNotificationCenter.defaultCenter().removeObserver(handler)
             }
 
+            setUpTimer()
+            
             // update stuff
             if let post = post {
                 switch type {

                        [weak self]
                        (note) -> Void in
                        self?.updateProfileLabelTextColor()
                        
                        if (self?.updateTimer == nil && self?.post?.player.isPlaying() ?? false) {
                            // 60 fps
                            self?.updateTimer = NSTimer(timeInterval: 1.0 / 60.0,
                                target: self!, selector: Selector("timerFired:"),
                                userInfo: nil,
                                repeats: true)
                            NSRunLoop.currentRunLoop().addTimer(self!.updateTimer!, forMode: NSRunLoopCommonModes)
                        } else {
                            self?.updateTimer?.invalidate()
                            self?.updateTimer = nil
                        }
                })
            } else {
                updateTimer?.invalidate()
                updateTimer = nil
            }
        }
    }
    
    override func didMoveToWindow() {

    }
    
    dynamic private func timerFired(timer: NSTimer) {
//        if (self.post?.player.isPlaying() ?? false) {
            self.setNeedsDisplay()
//        }
    }
    
    override func layoutSubviews() {
        super.layoutSubviews()
        setNeedsDisplay()
        updateProfileLabelTextColor()
        setUpTimer()
    }
    
    // Customize view to be able to re-use it for search results.
