From fa9c681c7cb0ec6e025ecbfde18bc9ad499142d8 Mon Sep 17 00:00:00 2001 From: Ben Vanik Date: Mon, 7 Sep 2015 09:29:07 -0700 Subject: [PATCH] Implicit Window::MakeReady on context set. --- src/xenia/debug/ui/main_window.cc | 1 - src/xenia/emulator.cc | 10 +++------- src/xenia/ui/window.h | 6 +++++- 3 files changed, 8 insertions(+), 9 deletions(-) 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);