@@ -1724,6 +1724,7 @@ Plotly.relayout = function relayout(gd, astr, val) {
1724
1724
if ( flags . dolayoutstyle ) seq . push ( subroutines . layoutStyles ) ;
1725
1725
if ( flags . doticks ) seq . push ( subroutines . doTicksRelayout ) ;
1726
1726
if ( flags . domodebar ) seq . push ( subroutines . doModeBar ) ;
1727
+ if ( flags . docamera ) seq . push ( subroutines . doCamera ) ;
1727
1728
}
1728
1729
1729
1730
Queue . add ( gd ,
@@ -1771,6 +1772,7 @@ function _relayout(gd, aobj) {
1771
1772
doplot : false ,
1772
1773
docalc : false ,
1773
1774
domodebar : false ,
1775
+ docamera : false ,
1774
1776
layoutReplot : false
1775
1777
} ;
1776
1778
@@ -1967,7 +1969,10 @@ function _relayout(gd, aobj) {
1967
1969
var pp1 = String ( p . parts [ 1 ] || '' ) ;
1968
1970
// check whether we can short-circuit a full redraw
1969
1971
// 3d or geo at this point just needs to redraw.
1970
- if ( p . parts [ 0 ] . indexOf ( 'scene' ) === 0 ) flags . doplot = true ;
1972
+ if ( p . parts [ 0 ] . indexOf ( 'scene' ) === 0 ) {
1973
+ if ( p . parts [ 1 ] === 'camera' ) flags . docamera = true ;
1974
+ else flags . doplot = true ;
1975
+ }
1971
1976
else if ( p . parts [ 0 ] . indexOf ( 'geo' ) === 0 ) flags . doplot = true ;
1972
1977
else if ( p . parts [ 0 ] . indexOf ( 'ternary' ) === 0 ) flags . doplot = true ;
1973
1978
else if ( ai === 'paper_bgcolor' ) flags . doplot = true ;
@@ -2119,6 +2124,7 @@ Plotly.update = function update(gd, traceUpdate, layoutUpdate, traces) {
2119
2124
if ( relayoutFlags . dolayoutstyle ) seq . push ( subroutines . layoutStyles ) ;
2120
2125
if ( relayoutFlags . doticks ) seq . push ( subroutines . doTicksRelayout ) ;
2121
2126
if ( relayoutFlags . domodebar ) seq . push ( subroutines . doModeBar ) ;
2127
+ if ( relayoutFlags . doCamera ) seq . push ( subroutines . doCamera ) ;
2122
2128
}
2123
2129
2124
2130
Queue . add ( gd ,
0 commit comments