From ed952068688220eba30f8af6a828f25a54875753 Mon Sep 17 00:00:00 2001
From: Jayant Jain <jayantjain1992@gmail.com>
Date: Thu, 12 Jun 2014 01:50:24 +0530
Subject: [PATCH] Enables moving around the map while an addThang is selected

---
 app/views/editor/level/thangs_tab_view.coffee | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/app/views/editor/level/thangs_tab_view.coffee b/app/views/editor/level/thangs_tab_view.coffee
index 3642b1e5e..0de49060d 100644
--- a/app/views/editor/level/thangs_tab_view.coffee
+++ b/app/views/editor/level/thangs_tab_view.coffee
@@ -186,6 +186,7 @@ module.exports = class ThangsTabView extends View
 
   onStageMouseUp: (e) ->
     if @addThangSprite
+      @surface.camera.lock()
       # If we click on the background, we need to add @addThangSprite, but not if onSpriteMouseUp will fire.
       @backgroundAddClickTimeout = _.defer => @onExtantThangSelected {}
     $('#contextmenu').hide()
@@ -202,6 +203,7 @@ module.exports = class ThangsTabView extends View
 
   onSpriteMouseUp: (e) ->
     clearTimeout @backgroundAddClickTimeout
+    @surface.camera.unlock()
     if e.originalEvent.nativeEvent.button == 2 and @selectedExtantThang
       @onSpriteContextMenu e
     clearInterval(@movementInterval) if @movementInterval?
@@ -276,7 +278,6 @@ module.exports = class ThangsTabView extends View
     @surface.spriteBoss.removeSprite @addThangSprite if @addThangSprite
     @addThangType = type
     if @addThangType
-      @surface.camera.lock()
       thang = @createAddThang()
       @addThangSprite = @surface.spriteBoss.addThangToSprites thang, @surface.spriteBoss.spriteLayers["Floating"]
       @addThangSprite.notOfThisWorld = true
@@ -285,7 +286,6 @@ module.exports = class ThangsTabView extends View
       pos ?= x: Math.round(@world.width / 2), y: Math.round(@world.height / 2)
       @adjustThangPos @addThangSprite, thang, pos
     else
-      @surface.camera.unlock()
       @addThangSprite = null
 
   createEssentialComponents: ->