File tree Expand file tree Collapse file tree 1 file changed +11
-0
lines changed Expand file tree Collapse file tree 1 file changed +11
-0
lines changed Original file line number Diff line number Diff line change @@ -83,12 +83,15 @@ class Backpack extends React.Component {
83
83
}
84
84
handleDrop ( dragInfo ) {
85
85
let payloader = null ;
86
+ let presaveAsset = null ;
86
87
switch ( dragInfo . dragType ) {
87
88
case DragConstants . COSTUME :
88
89
payloader = costumePayload ;
90
+ presaveAsset = dragInfo . asset ;
89
91
break ;
90
92
case DragConstants . SOUND :
91
93
payloader = soundPayload ;
94
+ presaveAsset = dragInfo . asset ;
92
95
break ;
93
96
case DragConstants . SPRITE :
94
97
payloader = spritePayload ;
@@ -102,6 +105,14 @@ class Backpack extends React.Component {
102
105
// Creating the payload is async, so set loading before starting
103
106
this . setState ( { loading : true } , ( ) => {
104
107
payloader ( dragInfo . payload , this . props . vm )
108
+ . then ( payload => {
109
+ // Force the asset to save to the asset server before storing in backpack
110
+ // Ensures any asset present in the backpack is also on the asset server
111
+ if ( presaveAsset && ! presaveAsset . clean ) {
112
+ return storage . store ( presaveAsset ) . then ( ( ) => payload ) ;
113
+ }
114
+ return payload ;
115
+ } )
105
116
. then ( payload => saveBackpackObject ( {
106
117
host : this . props . host ,
107
118
token : this . props . token ,
You can’t perform that action at this time.
0 commit comments