Fix speech bubbles of dragged nested sprites

pull/3/merge
jmoenig 2015-01-21 17:15:58 +01:00
rodzic 669704a90a
commit 82552d0b29
2 zmienionych plików z 8 dodań i 5 usunięć

Wyświetl plik

@ -2425,3 +2425,4 @@ ______
* GUI, Store, BYOB: Generate ScriptsPaneTexture programmatically
* GUI: Fix Zoom Dialogs sample background in “flat” design
* Updated Korean and Catalan translations, thanks, Yunjae Jang and Bernat Romagosa!
* Objects: Fix speech bubbles of dragged nested sprites

Wyświetl plik

@ -3155,14 +3155,11 @@ SpriteMorph.prototype.positionTalkBubble = function () {
bubble.changed();
};
// dragging and dropping adjustments b/c of talk bubbles
// dragging and dropping adjustments b/c of talk bubbles and parts
SpriteMorph.prototype.prepareToBeGrabbed = function (hand) {
var bubble = this.talkBubble();
this.recordLayers();
if (!bubble) {return null; }
this.removeShadow();
bubble.hide();
this.recordLayers();
if (!this.bounds.containsPoint(hand.position())) {
this.setCenter(hand.position());
}
@ -4055,6 +4052,10 @@ SpriteMorph.prototype.recordLayers = function () {
return;
}
this.layers = this.allParts();
this.layers.forEach(function (part) {
var bubble = part.talkBubble();
if (bubble) {bubble.hide(); }
});
this.layers.sort(function (x, y) {
return stage.children.indexOf(x) < stage.children.indexOf(y) ?
-1 : 1;
@ -4065,6 +4066,7 @@ SpriteMorph.prototype.restoreLayers = function () {
if (this.layers && this.layers.length > 1) {
this.layers.forEach(function (sprite) {
sprite.comeToFront();
sprite.positionTalkBubble();
});
}
this.layers = null;