1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 12:48:10 +00:00

AK+WindowServer: Remove did_construct() framework used only once

There is also make_ref_counted(), which does not call did_construct(),
so the method was not guaranteed to be run. Since there is only a single
user, and `WindowServer::Window` is a final class anyway (so there is no
need to separate the constructor and post-constructor phases), let's get
rid of this concept.

(The following commits reduce the opportunities to call
make_ref_counted, but still.)
This commit is contained in:
Ben Wiederhake 2021-10-31 23:21:51 +01:00 committed by Andreas Kling
parent 68c8d23e39
commit 2e6bb987a3
3 changed files with 1 additions and 7 deletions

View file

@ -70,8 +70,6 @@ public: \
static inline NonnullRefPtr<klass> construct(Args&&... args) \
{ \
auto obj = adopt_ref(*new Klass(forward<Args>(args)...)); \
if constexpr (requires { declval<Klass>().did_construct(); }) \
obj->did_construct(); \
return obj; \
}

View file

@ -85,6 +85,7 @@ Window::Window(Core::Object& parent, WindowType type)
m_minimum_size = s_default_normal_minimum_size;
WindowManager::the().add_window(*this);
frame().window_was_constructed({});
}
Window::Window(ClientConnection& client, WindowType window_type, int window_id, bool modal, bool minimizable, bool closeable, bool frameless, bool resizable, bool fullscreen, bool accessory, Window* parent_window)

View file

@ -362,11 +362,6 @@ public:
const Vector<Screen*, default_screen_count>& screens() const { return m_screens; }
Vector<Screen*, default_screen_count>& screens() { return m_screens; }
void did_construct()
{
frame().window_was_constructed({});
}
void set_moving_to_another_stack(bool value) { m_moving_to_another_stack = value; }
bool is_moving_to_another_stack() const { return m_moving_to_another_stack; }