From 92f1d6447335fb0241aeac795eead32f52b79f60 Mon Sep 17 00:00:00 2001 From: Paul Kaplan <pkaplan@media.mit.edu> Date: Tue, 27 Feb 2018 09:33:46 -0500 Subject: [PATCH] Cache Renderer.isSupported because it takes 30ms every time --- src/components/gui/gui.jsx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/components/gui/gui.jsx b/src/components/gui/gui.jsx index 488e705e8..da08720d1 100644 --- a/src/components/gui/gui.jsx +++ b/src/components/gui/gui.jsx @@ -33,6 +33,10 @@ const messages = defineMessages({ } }); +// Cache this value to only retreive it once the first time. +// Assume that it doesn't change for a session. +let isRendererSupported = null; + const GUIComponent = props => { const { activeTabIndex, @@ -66,7 +70,9 @@ const GUIComponent = props => { tabSelected: classNames(tabStyles.reactTabsTabSelected, styles.isSelected) }; - const isRendererSupported = Renderer.isSupported(); + if (isRendererSupported === null) { + isRendererSupported = Renderer.isSupported(); + } return ( <Box -- GitLab