1
0
mirror of https://github.com/emilk/egui.git synced 2026-08-30 05:10:03 -04:00

Fix precision issue in panel space allocation debug sanity check

Closes https://github.com/emilk/egui/issues/99
This commit is contained in:
Emil Ernerfeldt
2021-01-07 18:31:19 +01:00
parent 5ef9f35d1e
commit e413e5e3e9
2 changed files with 8 additions and 4 deletions

View File

@@ -13,6 +13,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
* Add `ui.allocate_at_least` and `ui.allocate_exact_size`.
### Fixed 🐛
* Fixed a bug that would sometimes trigger a "Mismatching panels" panic in debug builds.
## 0.7.0 - 2021-01-04
### Added ⭐

View File

@@ -93,8 +93,8 @@ impl FrameState {
/// Shrink `available_rect`.
pub(crate) fn allocate_left_panel(&mut self, panel_rect: Rect) {
debug_assert!(
panel_rect.min == self.available_rect.min,
"Mismatching panels. You must not create a panel from within another panel."
panel_rect.min.distance(self.available_rect.min) < 0.1,
"Mismatching left panel. You must not create a panel from within another panel."
);
self.available_rect.min.x = panel_rect.max.x;
self.unused_rect.min.x = panel_rect.max.x;
@@ -104,8 +104,8 @@ impl FrameState {
/// Shrink `available_rect`.
pub(crate) fn allocate_top_panel(&mut self, panel_rect: Rect) {
debug_assert!(
panel_rect.min == self.available_rect.min,
"Mismatching panels. You must not create a panel from within another panel."
panel_rect.min.distance(self.available_rect.min) < 0.1,
"Mismatching top panel. You must not create a panel from within another panel."
);
self.available_rect.min.y = panel_rect.max.y;
self.unused_rect.min.y = panel_rect.max.y;