mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-05 06:32:30 +02:00
Applications: Fix visibility of Object-derivative constructors
Derivatives of Core::Object should be constructed through ClassName::construct(), to avoid handling ref-counted objects with refcount zero. Fixing the visibility means that misuses like this are more difficult.
This commit is contained in:
committed by
Andreas Kling
parent
6b75a4dfc3
commit
465af4c4d4
Notes:
sideshowbarker
2024-07-18 01:33:10 +09:00
Author: https://github.com/BenWiederhake Commit: https://github.com/SerenityOS/serenity/commit/465af4c4d4f Pull-request: https://github.com/SerenityOS/serenity/pull/10745 Reviewed-by: https://github.com/PeterBindels-TomTom Reviewed-by: https://github.com/sin-ack ✅
@@ -35,26 +35,6 @@ struct AppState {
|
||||
class ResultRow final : public GUI::Widget {
|
||||
C_OBJECT(ResultRow)
|
||||
public:
|
||||
ResultRow()
|
||||
{
|
||||
auto& layout = set_layout<GUI::HorizontalBoxLayout>();
|
||||
layout.set_spacing(12);
|
||||
layout.set_margins(4);
|
||||
|
||||
m_image = add<GUI::ImageWidget>();
|
||||
|
||||
m_label_container = add<GUI::Widget>();
|
||||
m_label_container->set_layout<GUI::VerticalBoxLayout>();
|
||||
m_label_container->set_fixed_height(30);
|
||||
|
||||
m_title = m_label_container->add<GUI::Label>();
|
||||
m_title->set_text_alignment(Gfx::TextAlignment::CenterLeft);
|
||||
|
||||
set_shrink_to_fit(true);
|
||||
set_fill_with_background_color(true);
|
||||
set_greedy_for_hits(true);
|
||||
}
|
||||
|
||||
void set_image(RefPtr<Gfx::Bitmap> bitmap)
|
||||
{
|
||||
m_image->set_bitmap(bitmap);
|
||||
@@ -89,6 +69,26 @@ public:
|
||||
Function<void()> on_selected;
|
||||
|
||||
private:
|
||||
ResultRow()
|
||||
{
|
||||
auto& layout = set_layout<GUI::HorizontalBoxLayout>();
|
||||
layout.set_spacing(12);
|
||||
layout.set_margins(4);
|
||||
|
||||
m_image = add<GUI::ImageWidget>();
|
||||
|
||||
m_label_container = add<GUI::Widget>();
|
||||
m_label_container->set_layout<GUI::VerticalBoxLayout>();
|
||||
m_label_container->set_fixed_height(30);
|
||||
|
||||
m_title = m_label_container->add<GUI::Label>();
|
||||
m_title->set_text_alignment(Gfx::TextAlignment::CenterLeft);
|
||||
|
||||
set_shrink_to_fit(true);
|
||||
set_fill_with_background_color(true);
|
||||
set_greedy_for_hits(true);
|
||||
}
|
||||
|
||||
void mousedown_event(GUI::MouseEvent&) override
|
||||
{
|
||||
set_background_role(ColorRole::MenuBase);
|
||||
|
||||
Reference in New Issue
Block a user