diff options
Diffstat (limited to 'public/assets/javascripts/ui/editor/WallpaperPicker.js')
| -rw-r--r-- | public/assets/javascripts/ui/editor/WallpaperPicker.js | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/public/assets/javascripts/ui/editor/WallpaperPicker.js b/public/assets/javascripts/ui/editor/WallpaperPicker.js index afdfca7..b26a5dc 100644 --- a/public/assets/javascripts/ui/editor/WallpaperPicker.js +++ b/public/assets/javascripts/ui/editor/WallpaperPicker.js @@ -11,6 +11,8 @@ var WallpaperPicker = UploadView.extend({ "click .swatch": 'pick', "click .wallpaperRemove": 'remove', "input [data-role='wallpaper-scale']": 'updateScale', + "change .url": "tileWalls", + "keydown .url": "enterSetUrl", }, initialize: function(opt){ @@ -20,6 +22,8 @@ var WallpaperPicker = UploadView.extend({ this.$remove = this.$(".wallpaperRemove") this.$remove.hide() + this.$url = this.$(".url") + this.$position = this.$("[data-role='wallpaper-position']") this.$scale = this.$("[data-role='wallpaper-scale']") @@ -38,6 +42,7 @@ var WallpaperPicker = UploadView.extend({ // }, toggle: function (state) { + Scenery.nextWallpaper = null app.tube('cancel-wallpaper') this.$el.toggleClass("active", state) if (state) { @@ -134,7 +139,7 @@ var WallpaperPicker = UploadView.extend({ } function _hideCursor (e) { $(window).off('mousemove', _followCursor) - $(window).off('click', _hideCursor) + // $(window).off('click', _hideCursor) app.off('cancel-wallpaper', _hideCursor) $floatingSwatch.removeClass("scissors").hide() } @@ -145,7 +150,7 @@ var WallpaperPicker = UploadView.extend({ _followCursor(e); }) }, - + wall: null, pickWall: function(wall){ if (! wall.background || wall.background.src == "none") { @@ -160,7 +165,24 @@ var WallpaperPicker = UploadView.extend({ s = parseFloat(this.$scale.val()) this.wall.wallpaperPosition({ scale: s }) }, - + + tileWalls: function(){ + var url = this.$url.sanitize() + if (url.length && url.indexOf("http") == 0) { + Walls.setWallpaper.wall({ src: url }) + Walls.setWallpaper.floor({ src: url }) + Walls.setWallpaper.ceiling({ src: url }) + } + this.addUrl(url) + this.$url.val("") + }, + enterSetUrl: function (e) { + e.stopPropagation() + if (e.keyCode == 13) { + setTimeout(this.tileWalls.bind(this), 100) + } + }, + initializePositionCursor: function(){ var base = this var dx = 0, dy = 0, dragging = false, delta |
