ladybird/Userland
thislooksfun 4143f6f906 LibGUI: Make sure that children are actually widgets
Previously this section of code would blindly add *anything* as a child
as long as it has been registered as an object. Since there is no
guarentee that those objects are, in fact, Widgets, this feels like a
logical fallacy.

For example, up until this change, this is perfectly valid GML:

```
@GUI::Widget {
    layout: @GUI::VerticalBoxLayout {
    }

    @GUI::VerticalBoxLayout {
    }
}
```

What exactly does it do? Who knows! It doesn't seem to *break*, but I
think we can all agree it shouldn't be valid.

Instead, we now actually verify that the registered class inherets from
GUI::Widget before adding it as a child. We also error if it's not,
which should hopefully help new GML writers from forgetting to write
'layout: ' before the layout definition and being confused as to why
it's not working.
2021-11-02 17:53:22 +01:00
..
Applets Everywhere: Rename left/right-click to primary/secondary 2021-10-27 22:05:58 +03:00
Applications PixelPaint: Map color_distance_squared from 0 to 1 2021-11-02 12:20:48 +01:00
Demos Everywhere: Rename back-click to backward-click 2021-10-27 22:05:58 +03:00
DevTools LibGUI: Remove GUI::AutocompleteProvider::Entry::kind 2021-11-02 17:53:22 +01:00
DynamicLoader Toolchain+Meta: Update LLVM version to 13.0.0 2021-10-17 17:09:58 +01:00
Games Minesweeper: Set time label to a fixed width 2021-10-29 23:02:24 +03:00
Libraries LibGUI: Make sure that children are actually widgets 2021-11-02 17:53:22 +01:00
Services LibThreading: Remove redundant method 2021-11-02 11:07:26 +01:00
Shell Everywhere: Remove unused ArgsParser header 2021-11-01 21:12:58 +01:00
Utilities Utilities: Remove misbehaving-application 2021-11-02 11:07:07 +01:00
CMakeLists.txt Tests: Establish root Tests directory, move Userland/Tests there 2021-05-06 17:54:28 +02:00