mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-01-24 02:03:06 -05:00
7dc5a3ead8
This patch removes size policies and preferred sizes, and replaces them with min-size and max-size for each widget. Box layout now works in 3 passes: 1) Set all items (widgets/spacers) to their min-size 2) Distribute remaining space evenly, respecting max-size 3) Place widgets one after the other, adding spacing in between I've also added convenience helpers for setting a fixed size (which is the same as setting min-size and max-size to the same value.) This significantly reduces the verbosity of widget layout and makes GML a bit more pleasant to write, too. :^)
53 lines
1 KiB
Text
53 lines
1 KiB
Text
@GUI::Widget {
|
|
fill_with_background_color: true
|
|
layout: @GUI::VerticalBoxLayout {
|
|
spacing: 2
|
|
}
|
|
|
|
@GUI::ToolBarContainer {
|
|
@GUI::ToolBar {
|
|
name: "main_toolbar"
|
|
}
|
|
@GUI::ToolBar {
|
|
name: "location_toolbar"
|
|
visible: false
|
|
|
|
@GUI::Label {
|
|
text: "Location: "
|
|
autosize: true
|
|
}
|
|
|
|
@GUI::TextBox {
|
|
name: "location_textbox"
|
|
fixed_height: 22
|
|
}
|
|
}
|
|
@GUI::ToolBar {
|
|
name: "breadcrumb_toolbar"
|
|
|
|
@GUI::BreadcrumbBar {
|
|
name: "breadcrumb_bar"
|
|
}
|
|
}
|
|
}
|
|
|
|
@GUI::HorizontalSplitter {
|
|
name: "splitter"
|
|
|
|
@GUI::TreeView {
|
|
name: "tree_view"
|
|
fixed_width: 175
|
|
}
|
|
|
|
}
|
|
|
|
@GUI::StatusBar {
|
|
name: "statusbar"
|
|
|
|
@GUI::ProgressBar {
|
|
name: "progressbar"
|
|
text: "Generating thumbnails: "
|
|
visible: false
|
|
}
|
|
}
|
|
}
|