restoring immediate rpi initialization and window creation to fix broken tests

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
monroegm-disable-blank-issue-2
Guthrie Adams 4 years ago
parent 1dcc20fd76
commit a93c1758f4

@ -176,7 +176,10 @@ namespace AZ
m_isAssetCatalogLoaded = true;
RPI::RPISystemInterface::Get()->InitializeSystemAssets();
if (!RPI::RPISystemInterface::Get()->IsInitialized())
{
RPI::RPISystemInterface::Get()->InitializeSystemAssets();
}
if (!RPI::RPISystemInterface::Get()->IsInitialized())
{

@ -16,7 +16,6 @@
#include <AzCore/UserSettings/UserSettingsProvider.h>
#include <AzFramework/Application/Application.h>
#include <AzFramework/Asset/AssetCatalogBus.h>
#include <AzFramework/Asset/AssetSystemBus.h>
#include <AzQtComponents/Application/AzQtApplication.h>
@ -36,7 +35,6 @@ namespace AtomToolsFramework
, public AzQtComponents::AzQtApplication
, protected AzToolsFramework::AssetDatabase::AssetDatabaseRequestsBus::Handler
, protected AzFramework::AssetSystemStatusBus::Handler
, protected AzFramework::AssetCatalogEventBus::Handler
, protected AzToolsFramework::EditorPythonConsoleNotificationBus::Handler
, protected AZ::UserSettingsOwnerRequestBus::Handler
, protected AtomToolsMainWindowNotificationBus::Handler
@ -69,11 +67,6 @@ namespace AtomToolsFramework
void OnMainWindowClosing() override;
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
// AzFramework::AssetCatalogEventBus::Handler overrides ...
void OnCatalogLoaded(const char* catalogFile) override;
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
// AssetDatabaseRequestsBus::Handler overrides...
bool GetAssetDatabaseLocation(AZStd::string& result) override;

@ -92,7 +92,6 @@ namespace AtomToolsFramework
AtomToolsMainWindowNotificationBus::Handler::BusDisconnect();
AzToolsFramework::AssetDatabase::AssetDatabaseRequestsBus::Handler::BusDisconnect();
AzToolsFramework::EditorPythonConsoleNotificationBus::Handler::BusDisconnect();
AzFramework::AssetCatalogEventBus::Handler::BusDisconnect();
}
void AtomToolsApplication::CreateReflectionManager()
@ -175,11 +174,18 @@ namespace AtomToolsFramework
AzToolsFramework::AssetBrowser::AssetDatabaseLocationNotificationBus::Broadcast(
&AzToolsFramework::AssetBrowser::AssetDatabaseLocationNotifications::OnDatabaseInitialized);
AzFramework::AssetCatalogEventBus::Handler::BusConnect();
AZ::Data::AssetCatalogRequestBus::Broadcast(&AZ::Data::AssetCatalogRequestBus::Events::LoadCatalog, "@assets@/assetcatalog.xml");
if (!AZ::RPI::RPISystemInterface::Get()->IsInitialized())
{
AZ::RPI::RPISystemInterface::Get()->InitializeSystemAssets();
}
LoadSettings();
AtomToolsMainWindowFactoryRequestBus::Broadcast(&AtomToolsMainWindowFactoryRequestBus::Handler::CreateMainWindow);
AtomToolsMainWindowNotificationBus::Handler::BusConnect();
auto editorPythonEventsInterface = AZ::Interface<AzToolsFramework::EditorPythonEventsInterface>::Get();
if (editorPythonEventsInterface)
{
@ -189,6 +195,9 @@ namespace AtomToolsFramework
editorPythonEventsInterface->StartPython();
}
QTimer::singleShot(0, this, [this]() {
ProcessCommandLine(m_commandLine);
});
m_timer.start();
}
@ -197,26 +206,12 @@ namespace AtomToolsFramework
ExitMainLoop();
}
void AtomToolsApplication::OnCatalogLoaded(const char* catalogFile)
{
AZ_UNUSED(catalogFile);
// Delay execution of commands and scripts post initialization
AZ::TickBus::QueueFunction([this]() {
AtomToolsMainWindowFactoryRequestBus::Broadcast(&AtomToolsMainWindowFactoryRequestBus::Handler::CreateMainWindow);
AtomToolsMainWindowNotificationBus::Handler::BusConnect();
ProcessCommandLine(m_commandLine);
});
AzFramework::AssetCatalogEventBus::Handler::BusDisconnect();
}
void AtomToolsApplication::Destroy()
{
// before modules are unloaded, destroy UI to free up any assets it cached
AtomToolsMainWindowFactoryRequestBus::Broadcast(&AtomToolsMainWindowFactoryRequestBus::Handler::DestroyMainWindow);
m_styleManager.reset();
AzFramework::AssetCatalogEventBus::Handler::BusDisconnect();
AzToolsFramework::EditorPythonConsoleNotificationBus::Handler::BusDisconnect();
AzToolsFramework::AssetDatabase::AssetDatabaseRequestsBus::Handler::BusDisconnect();
AtomToolsMainWindowNotificationBus::Handler::BusDisconnect();

Loading…
Cancel
Save