summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--public/assets/javascripts/mx/extensions/mx.movements.js11
-rw-r--r--public/assets/javascripts/mx/primitives/mx.youtube.js13
-rw-r--r--public/assets/javascripts/rectangles/engine/scenery/_scenery.js2
-rw-r--r--public/assets/javascripts/rectangles/engine/scenery/move.js13
-rw-r--r--public/assets/javascripts/rectangles/engine/scenery/types/_object.js39
-rw-r--r--public/assets/javascripts/ui/editor/MediaEditor.js13
-rw-r--r--public/assets/javascripts/ui/editor/TextEditor.js6
-rw-r--r--public/assets/javascripts/ui/reader/ShareView.js7
8 files changed, 67 insertions, 37 deletions
diff --git a/public/assets/javascripts/mx/extensions/mx.movements.js b/public/assets/javascripts/mx/extensions/mx.movements.js
index dc9660b..1ba33c9 100644
--- a/public/assets/javascripts/mx/extensions/mx.movements.js
+++ b/public/assets/javascripts/mx/extensions/mx.movements.js
@@ -62,7 +62,7 @@ MX.Movements = function (cam) {
},
keydown: function (e) {
- // console.log(e.keyCode)
+ console.log(e.keyCode)
if (locked || e.altKey || e.metaKey || e.ctrlKey) {
return
}
@@ -155,6 +155,15 @@ MX.Movements = function (cam) {
app.controller.toolbar.toggleMap()
}
break
+
+ case 8: // backspace
+ e.preventDefault()
+ if (app.controller.mediaEditor.scenery) {
+ app.controller.mediaEditor.scenery.remove()
+ }
+ else if (app.controller.textEditor.scenery) {
+ app.controller.textEditor.scenery.remove()
+ }
}
},
diff --git a/public/assets/javascripts/mx/primitives/mx.youtube.js b/public/assets/javascripts/mx/primitives/mx.youtube.js
index 873348f..8511173 100644
--- a/public/assets/javascripts/mx/primitives/mx.youtube.js
+++ b/public/assets/javascripts/mx/primitives/mx.youtube.js
@@ -34,9 +34,22 @@ MX.Youtube = MX.Object3D.extend({
preload.style.width = this.media.width + "px"
preload.style.height = this.media.height + "px"
preload.style.pointerEvents = "none"
+ preload.style.position = "absolute"
+ preload.style.top = "0"
+ preload.style.left = "0"
+ preload.style.zIndex = "1"
preload.className = "preload"
this.el.appendChild(preload)
+ var overlay = this.overlay = document.createElement("div")
+ overlay.style.width = "100%"
+ overlay.style.height = "100%"
+ overlay.style.position = "absolute"
+ overlay.style.top = "0"
+ overlay.style.left = "0"
+ overlay.style.zIndex = "2"
+ overlay.className = "overlay"
+ this.el.appendChild(overlay)
this.defer(uid)
},
diff --git a/public/assets/javascripts/rectangles/engine/scenery/_scenery.js b/public/assets/javascripts/rectangles/engine/scenery/_scenery.js
index 3d3067f..24c2602 100644
--- a/public/assets/javascripts/rectangles/engine/scenery/_scenery.js
+++ b/public/assets/javascripts/rectangles/engine/scenery/_scenery.js
@@ -6,7 +6,7 @@ var Scenery = new function(){
base.list = {}
base.nextMedia = null
- base.mouse = new mouse ({ use_offset: false })
+ base.mouse = new mouse ({ use_offset: false, mousedownUsesCapture: true })
base.init = function(){
base.resize.init()
diff --git a/public/assets/javascripts/rectangles/engine/scenery/move.js b/public/assets/javascripts/rectangles/engine/scenery/move.js
index 3ae4993..12705d3 100644
--- a/public/assets/javascripts/rectangles/engine/scenery/move.js
+++ b/public/assets/javascripts/rectangles/engine/scenery/move.js
@@ -22,18 +22,9 @@ Scenery.move = function(base){
}
function down (e, cursor){
- if (e.target != base.mx.el) return;
+ if (e.target != base.mx.el && (e.target != base.mx.overlay)) return;
if (editor.permissions.destroy) {
- UndoStack.push({
- type: 'destroy-scenery',
- undo: base.serialize(),
- redo: { id: base.id },
- })
-
- // TODO: watch individual scenery object here
- Minotaur.watch( app.router.editorView.settings )
-
- Scenery.remove(base.id)
+ base.remove()
return
}
diff --git a/public/assets/javascripts/rectangles/engine/scenery/types/_object.js b/public/assets/javascripts/rectangles/engine/scenery/types/_object.js
index 4e5e2c5..10ba2b0 100644
--- a/public/assets/javascripts/rectangles/engine/scenery/types/_object.js
+++ b/public/assets/javascripts/rectangles/engine/scenery/types/_object.js
@@ -62,20 +62,43 @@ Scenery.types.base = Fiber.extend(function(base){
bind: function(){
this.move.bind()
- $(this.mx.el).bind({
- mouseenter: this.enter,
- mouseleave: this.leave,
- })
+// $(this.mx.el).bind({
+// mouseenter: this.enter,
+// mouseleave: this.leave,
+// })
},
unbind: function(){
this.move.unbind()
- $(this.mx.el).unbind({
- mouseenter: this.enter,
- mouseleave: this.leave,
- })
+// $(this.mx.el).unbind({
+// mouseenter: this.enter,
+// mouseleave: this.leave,
+// })
},
+ remove: function(){
+ UndoStack.push({
+ type: 'destroy-scenery',
+ undo: this.serialize(),
+ redo: { id: this.id },
+ })
+
+ // TODO: watch individual scenery object here
+ Minotaur.watch( app.router.editorView.settings )
+
+ Scenery.remove(this.id)
+
+ Scenery.resize.hide()
+ if (app.controller.mediaEditor) {
+ app.controller.mediaEditor.tainted = false
+ app.controller.mediaEditor.hide()
+ }
+ if (app.controller.textEditor) {
+ app.controller.textEditor.tainted = false
+ app.controller.textEditor.hide()
+ }
+ },
+
destroy: function(){
this.unbind()
scene.remove(this.mx)
diff --git a/public/assets/javascripts/ui/editor/MediaEditor.js b/public/assets/javascripts/ui/editor/MediaEditor.js
index 9a3c355..db5878f 100644
--- a/public/assets/javascripts/ui/editor/MediaEditor.js
+++ b/public/assets/javascripts/ui/editor/MediaEditor.js
@@ -179,17 +179,8 @@ var MediaEditor = FormView.extend({
var scenery = this.scenery
this.hide()
- UndoStack.push({
- type: 'destroy-scenery',
- undo: scenery.serialize(),
- redo: { id: scenery.id },
- })
-
- // TODO: watch individual scenery object here
- Minotaur.watch( app.router.editorView.settings )
-
- Scenery.remove(scenery.id)
- Scenery.resize.hide()
+ scenery.remove()
+
this.tainted = false
this.scenery = null
},
diff --git a/public/assets/javascripts/ui/editor/TextEditor.js b/public/assets/javascripts/ui/editor/TextEditor.js
index b559ba5..51077af 100644
--- a/public/assets/javascripts/ui/editor/TextEditor.js
+++ b/public/assets/javascripts/ui/editor/TextEditor.js
@@ -136,10 +136,8 @@ var TextEditor = FormView.extend({
},
destroy: function(){
- var scenery = this.scenery
- this.hide()
- Scenery.remove(scenery.id)
- Scenery.resize.hide()
+ this.tainted = false
+ this.scenery.remove()
},
})
diff --git a/public/assets/javascripts/ui/reader/ShareView.js b/public/assets/javascripts/ui/reader/ShareView.js
index 35c23ca..4e5f832 100644
--- a/public/assets/javascripts/ui/reader/ShareView.js
+++ b/public/assets/javascripts/ui/reader/ShareView.js
@@ -22,6 +22,11 @@ var ShareView = View.extend({
var msg = $(".roomName").html() + " on VValls"
var url = "https://twitter.com/home?status=" + encodeURIComponent(window.location.origin + window.location.pathname + " " + msg);
window.open(url, "_blank")
- }
+ },
+
+ embed: function (e) {
+ e.preventDefault()
+
+ },
})