egui demo: Fix space reserved for source code link (#3983)

Clip the cell of the source code link to prevent the strip from growing
infinitely if the reserved size for the link is not sufficient.


![image](https://github.com/emilk/egui/assets/2380253/0cf214fc-addc-4212-90fc-d68834c1cfe7)

Closes <https://github.com/emilk/egui/issues/3980>.
This commit is contained in:
njust 2024-02-10 09:17:12 +01:00 committed by GitHub
parent 800eff6994
commit 310d85a7fa
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 3 deletions

View File

@ -1,4 +1,4 @@
use egui::Color32;
use egui::{Color32, TextStyle};
use egui_extras::{Size, StripBuilder};
/// Shows off a table with dynamic layout
@ -33,11 +33,12 @@ impl super::View for StripDemo {
egui::lerp(Rgba::from(color)..=Rgba::from(faded_color), t).into()
};
let body_text_size = TextStyle::Body.resolve(ui.style()).size;
StripBuilder::new(ui)
.size(Size::exact(50.0))
.size(Size::remainder())
.size(Size::relative(0.5).at_least(60.0))
.size(Size::exact(10.5))
.size(Size::exact(body_text_size))
.vertical(|mut strip| {
strip.cell(|ui| {
ui.painter().rect_filled(

View File

@ -1,3 +1,5 @@
use egui::TextStyle;
#[derive(PartialEq)]
#[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))]
enum DemoType {
@ -105,10 +107,11 @@ impl super::View for TableDemo {
ui.separator();
// Leave room for the source code link after the table demo:
let body_text_size = TextStyle::Body.resolve(ui.style()).size;
use egui_extras::{Size, StripBuilder};
StripBuilder::new(ui)
.size(Size::remainder().at_least(100.0)) // for the table
.size(Size::exact(10.5)) // for the source code link
.size(Size::exact(body_text_size)) // for the source code link
.vertical(|mut strip| {
strip.cell(|ui| {
egui::ScrollArea::horizontal().show(ui, |ui| {