@@ -18,6 +18,7 @@ import type { Shader } from "gl-shader";
1818import type { NDArray } from "ndarray" ;
1919import type { ShaderIdentifier , ShaderInfo , ShaderDefinition } from "./Shaders" ;
2020import type { Surface , SurfaceContext } from "./createSurface" ;
21+ import GLContext from "./GLContext" ;
2122
2223const blendFuncAliases = {
2324 zero : "ZERO" ,
@@ -418,23 +419,7 @@ export default class Node extends Component<Props, *> {
418419 } ,
419420 } ;
420421
421- static contextTypes = {
422- glParent : PropTypes . object . isRequired ,
423- glSurface : PropTypes . object . isRequired ,
424- glSizable : PropTypes . object . isRequired ,
425- } ;
426-
427- static childContextTypes = {
428- glParent : PropTypes . object . isRequired ,
429- glSizable : PropTypes . object . isRequired ,
430- } ;
431-
432- getChildContext ( ) {
433- return {
434- glParent : this ,
435- glSizable : this ,
436- } ;
437- }
422+ static contextType = GLContext ;
438423
439424 componentDidMount ( ) {
440425 const {
@@ -512,10 +497,18 @@ export default class Node extends Component<Props, *> {
512497 glSurface : { RenderLessElement } ,
513498 } = this . context ;
514499 return (
515- < RenderLessElement >
516- { children }
517- { Object . keys ( uniforms ) . map ( this . _renderUniformElement ) }
518- </ RenderLessElement >
500+ < GLContext . Provider
501+ value = { {
502+ glParent : this ,
503+ glSurface : this . context . glSurface ,
504+ glSizable : this ,
505+ } }
506+ >
507+ < RenderLessElement >
508+ { children }
509+ { Object . keys ( uniforms ) . map ( this . _renderUniformElement ) }
510+ </ RenderLessElement >
511+ </ GLContext . Provider >
519512 ) ;
520513 }
521514
@@ -725,10 +718,10 @@ export default class Node extends Component<Props, *> {
725718 newdeps : Array < Node | Bus >
726719 ) : [ Array < Bus | Node > , Array < Bus | Node > ] {
727720 const olddeps = this . dependencies ;
728- const additions = newdeps . filter ( ( node ) => olddeps . indexOf ( node ) === - 1 ) ;
729- const deletions = olddeps . filter ( ( node ) => newdeps . indexOf ( node ) === - 1 ) ;
730- additions . forEach ( ( d ) => d . _addDependent ( this ) ) ;
731- deletions . forEach ( ( d ) => d . _removeDependent ( this ) ) ;
721+ const additions = newdeps . filter ( node => olddeps . indexOf ( node ) === - 1 ) ;
722+ const deletions = olddeps . filter ( node => newdeps . indexOf ( node ) === - 1 ) ;
723+ olddeps . forEach ( d => d . _removeDependent ( this ) ) ;
724+ newdeps . forEach ( d => d . _addDependent ( this ) ) ;
732725 this . dependencies = newdeps ;
733726 return [ additions , deletions ] ;
734727 }
0 commit comments