diff --git a/src/plots/gl3d/scene.js b/src/plots/gl3d/scene.js index eb108e89899..1fdf3a9c031 100644 --- a/src/plots/gl3d/scene.js +++ b/src/plots/gl3d/scene.js @@ -179,7 +179,7 @@ function initializeGLPlot(scene, fullLayout, canvas, gl) { if(scene.fullSceneLayout.dragmode === false) return; var update = {}; - update[scene.id] = getLayoutCamera(scene.camera); + update[scene.id + '.camera'] = getLayoutCamera(scene.camera); scene.saveCamera(scene.graphDiv.layout); scene.graphDiv.emit('plotly_relayout', update); }; diff --git a/test/jasmine/tests/gl_plot_interact_basic_test.js b/test/jasmine/tests/gl_plot_interact_basic_test.js index 097f63ee1a9..f6a09aa5781 100644 --- a/test/jasmine/tests/gl_plot_interact_basic_test.js +++ b/test/jasmine/tests/gl_plot_interact_basic_test.js @@ -38,7 +38,7 @@ function verifyInteractionEffects(tuple) { expect(tuple.relayoutCallback).toHaveBeenCalledTimes(1); // Check structure of event callback value contents - expect(tuple.relayoutCallback).toHaveBeenCalledWith(jasmine.objectContaining({scene: cameraStructure})); + expect(tuple.relayoutCallback).toHaveBeenCalledWith(jasmine.objectContaining({'scene.camera': cameraStructure})); // Check camera contents on the DIV layout var divCamera = tuple.graphDiv.layout.scene.camera;