diff --git a/src/xenia/debug/ui/main_window.cc b/src/xenia/debug/ui/main_window.cc index b1e41611b..d4e3cdeda 100644 --- a/src/xenia/debug/ui/main_window.cc +++ b/src/xenia/debug/ui/main_window.cc @@ -43,7 +43,6 @@ bool MainWindow::Initialize() { } window_->Initialize(); window_->set_context(xe::ui::gl::GLContext::Create(window_.get())); - window_->MakeReady(); #if XE_PLATFORM_WIN32 el::io::FileManager::RegisterFileSystem( diff --git a/src/xenia/emulator.cc b/src/xenia/emulator.cc index 9770d67a8..ded391eca 100644 --- a/src/xenia/emulator.cc +++ b/src/xenia/emulator.cc @@ -154,13 +154,9 @@ X_STATUS Emulator::Setup(ui::Window* display_window) { // Finish initializing the display. display_window_->loop()->PostSynchronous([this]() { - { - xe::ui::GraphicsContextLock context_lock(display_window_->context()); - auto profiler_display = - display_window_->context()->CreateProfilerDisplay(); - Profiler::set_display(std::move(profiler_display)); - } - display_window_->MakeReady(); + xe::ui::GraphicsContextLock context_lock(display_window_->context()); + auto profiler_display = display_window_->context()->CreateProfilerDisplay(); + Profiler::set_display(std::move(profiler_display)); }); return result; diff --git a/src/xenia/ui/window.h b/src/xenia/ui/window.h index ac0327b27..38e704947 100644 --- a/src/xenia/ui/window.h +++ b/src/xenia/ui/window.h @@ -75,8 +75,10 @@ class Window { virtual bool Initialize() { return true; } void set_context(std::unique_ptr context) { context_ = std::move(context); + if (context_) { + MakeReady(); + } } - virtual bool MakeReady(); bool LoadLanguage(std::string filename); bool LoadSkin(std::string filename); @@ -116,6 +118,8 @@ class Window { protected: Window(Loop* loop, const std::wstring& title); + virtual bool MakeReady(); + virtual bool InitializeElemental(Loop* loop, el::graphics::Renderer* renderer);