From 20cba4e0924c8fd667d4fffedfc82aea46b0cd7c Mon Sep 17 00:00:00 2001
From: Robin Ward <robin.ward@gmail.com>
Date: Thu, 10 Oct 2013 15:18:01 -0400
Subject: [PATCH] Never bind the poster expansion twice.

---
 .../javascripts/discourse/views/poster_expansion_view.js   | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/app/assets/javascripts/discourse/views/poster_expansion_view.js b/app/assets/javascripts/discourse/views/poster_expansion_view.js
index c0007d55f03..059937d917f 100644
--- a/app/assets/javascripts/discourse/views/poster_expansion_view.js
+++ b/app/assets/javascripts/discourse/views/poster_expansion_view.js
@@ -5,6 +5,9 @@
   @namespace Discourse
   @module Discourse
 **/
+
+var clickOutsideEventName = "mousedown.outside-poster-expansion";
+
 Discourse.PosterExpansionView = Discourse.View.extend({
   elementId: 'poster-expansion',
   classNameBindings: ['controller.visible::hidden'],
@@ -29,7 +32,7 @@ Discourse.PosterExpansionView = Discourse.View.extend({
 
   didInsertElement: function() {
     var self = this;
-    $('html').on('mousedown.outside-poster-expansion', function(e) {
+    $('html').off(clickOutsideEventName).on(clickOutsideEventName, function(e) {
 
       if (self.get('controller.visible')) {
         var $target = $(e.target);
@@ -44,7 +47,7 @@ Discourse.PosterExpansionView = Discourse.View.extend({
   },
 
   willDestroyElement: function() {
-    $('html').off('mousedown.outside-poster-expansion');
+    $('html').off(clickOutsideEventName);
   }
 
 });
\ No newline at end of file