diff --git a/Kernel/WindowComposer.cpp b/Kernel/WindowComposer.cpp index 3a884bfffa..c33d236950 100644 --- a/Kernel/WindowComposer.cpp +++ b/Kernel/WindowComposer.cpp @@ -13,6 +13,7 @@ void WindowComposer_main() FrameBuffer::initialize(); EventLoop::initialize(); WindowManager::initialize(); + AbstractScreen::initialize(); auto info = current->get_display_info(); diff --git a/Widgets/AbstractScreen.cpp b/Widgets/AbstractScreen.cpp index d9453ca3be..948be12137 100644 --- a/Widgets/AbstractScreen.cpp +++ b/Widgets/AbstractScreen.cpp @@ -6,6 +6,11 @@ static AbstractScreen* s_the; +void AbstractScreen::initialize() +{ + s_the = nullptr; +} + AbstractScreen& AbstractScreen::the() { ASSERT(s_the); diff --git a/Widgets/AbstractScreen.h b/Widgets/AbstractScreen.h index e881874732..0018a07319 100644 --- a/Widgets/AbstractScreen.h +++ b/Widgets/AbstractScreen.h @@ -16,6 +16,8 @@ public: Size size() const { return { width(), height() }; } Rect rect() const { return { 0, 0, width(), height() }; } + static void initialize(); + protected: AbstractScreen(unsigned width, unsigned height);