message: FixedLayout.tsx: fixed window ref
diff: @@ -38,6 +38,7 @@ export interface FixedLayoutState {
  export interface FixedLayoutContext {
  document: Requireable<{}>;
  + window: Requireable<Window>;
  }
  class FixedLayout extends React.Component<FixedLayoutProps, FixedLayoutState> {
  @@ -51,6 +52,7 @@ class FixedLayout extends React.Component<FixedLayoutProps, FixedLayoutState> {
  static contextTypes: FixedLayoutContext = {
  document: PropTypes.any,
  + window: PropTypes.any,
  };
  private onMountResizeTimeout: number;
  @@ -59,9 +61,13 @@ class FixedLayout extends React.Component<FixedLayoutProps, FixedLayoutState> {
  return this.context.document || document;
  }
  + get window() {
  + return this.context.window || window;
  + }
  +
  componentDidMount() {
  this.onMountResizeTimeout = setTimeout(() => this.doResize());
  - window.addEventListener('resize', this.doResize);
  + this.window.addEventListener('resize', this.doResize);
  this.document.addEventListener(transitionStartEventName, this.onViewTransitionStart);
  this.document.addEventListener(transitionEndEventName, this.onViewTransitionEnd);
  @@ -69,7 +75,7 @@ class FixedLayout extends React.Component<FixedLayoutProps, FixedLayoutState> {
  componentWillUnmount() {
  clearInterval(this.onMountResizeTimeout);
  - window.removeEventListener('resize', this.doResize);
  + this.window.removeEventListener('resize', this.doResize);
  this.document.removeEventListener(transitionStartEventName, this.onViewTransitionStart);
  this.document.removeEventListener(transitionEndEventName, this.onViewTransitionEnd);
  