diff --git a/Assets/Cryville/Crtr/Browsing/UI/ResourceBrowserMaster.cs b/Assets/Cryville/Crtr/Browsing/UI/ResourceBrowserMaster.cs index f4dca10..52bc8c7 100644 --- a/Assets/Cryville/Crtr/Browsing/UI/ResourceBrowserMaster.cs +++ b/Assets/Cryville/Crtr/Browsing/UI/ResourceBrowserMaster.cs @@ -34,16 +34,15 @@ namespace Cryville.Crtr.Browsing.UI { OnTabClicked(AddPathedBrowserTab("Local", new LegacyResourceManager(Settings.Default.GameDataPath))); AddPathedBrowserTab("Files", new FileSystemResourceManager()); - AddTab("Settings", m_settingsBrowser, _tabs.Count, false); + AddTab("Settings", InitBrowser(m_settingsBrowser), _tabs.Count, false); } BrowserTab AddPathedBrowserTab(string name, IPathedResourceManager manager) { - var browser = Instantiate(m_pathedBrowserPrefab, m_browserContainer, false).GetComponent(); + var browser = InitBrowser(Instantiate(m_pathedBrowserPrefab, m_browserContainer, false).GetComponent()); browser.Init(manager); return AddTab(name, browser, _tabs.Count, false); } BrowserTab AddTab(string name, ResourceBrowser browser, int index, bool closable) { - browser.Init(this); var tab = Instantiate(m_tabPrefab, m_tabContainer, false).GetComponent(); tab.transform.SetSiblingIndex(index); tab.Icon = browser.Icon; @@ -55,8 +54,10 @@ namespace Cryville.Crtr.Browsing.UI { _tabs.Add(tab, browser); return tab; } + T InitBrowser(T browser) where T : ResourceBrowser { browser.Init(this); return browser; } public void AddAndOpenTab(string name, ResourceBrowser browser) { + InitBrowser(browser); browser.transform.SetParent(m_browserContainer, false); OnTabClicked(AddTab(name, browser, _currentTab.transform.GetSiblingIndex() + 1, true)); }