diff --git a/CHANGELOG.md b/CHANGELOG.md index b5c892fdda7..0b49bad767c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ NOTE: [`epaint`](epaint/CHANGELOG.md), [`eframe`](eframe/CHANGELOG.md), [`egui-w ## Unreleased * Add `*_released` & `*_clicked` methods for `PointerState` ([#1582](https://github.com/emilk/egui/pull/1582)). * Optimize painting of filled circles (e.g. for scatter plots) by 10x or more ([#1616](https://github.com/emilk/egui/pull/1616)). - +* Fixed `ImageButton`'s changing background padding on hover ([#1595](https://github.com/emilk/egui/pull/1595)). ## 0.18.1 - 2022-05-01 * Change `Shape::Callback` from `&dyn Any` to `&mut dyn Any` to support more backends. diff --git a/egui/src/widgets/button.rs b/egui/src/widgets/button.rs index 9444c676c90..050bb48ac03 100644 --- a/egui/src/widgets/button.rs +++ b/egui/src/widgets/button.rs @@ -489,18 +489,14 @@ impl Widget for ImageButton { let (expansion, rounding, fill, stroke) = if selected { let selection = ui.visuals().selection; ( - -padding, + Vec2::ZERO, Rounding::none(), selection.bg_fill, selection.stroke, ) } else if frame { let visuals = ui.style().interact(&response); - let expansion = if response.hovered { - Vec2::splat(visuals.expansion) - padding - } else { - Vec2::splat(visuals.expansion) - }; + let expansion = Vec2::splat(visuals.expansion); ( expansion, visuals.rounding,