Fix: resize handle positioning
This commit is contained in:
parent
17ddc75afe
commit
45016ebf53
1 changed files with 5 additions and 4 deletions
|
@ -166,7 +166,8 @@ impl Resize {
|
|||
if let Some(mouse_pos) = region.input().mouse_pos {
|
||||
// This is the desired size. We may not be able to achieve it.
|
||||
|
||||
state.size = mouse_pos - position + 0.5 * corner_interact.rect.size();
|
||||
state.size =
|
||||
mouse_pos - position + 0.5 * corner_interact.rect.size() - self.handle_offset;
|
||||
// We don't clamp to max size, because we want to be able to push against outer bounds.
|
||||
// For instance, if we are inside a bigger Resize region, we want to expand that.
|
||||
// state.size = state.size.clamp(self.min_size..=self.max_size);
|
||||
|
@ -226,7 +227,7 @@ impl Resize {
|
|||
|
||||
// ------------------------------
|
||||
|
||||
paint_resize_corner(region, &corner_rect, &corner_interact);
|
||||
paint_resize_corner(region, &corner_interact);
|
||||
|
||||
if corner_interact.hovered || corner_interact.active {
|
||||
region.ctx().output().cursor_icon = CursorIcon::ResizeNwSe;
|
||||
|
@ -236,11 +237,11 @@ impl Resize {
|
|||
}
|
||||
}
|
||||
|
||||
fn paint_resize_corner(region: &mut Region, rect: &Rect, interact: &InteractInfo) {
|
||||
fn paint_resize_corner(region: &mut Region, interact: &InteractInfo) {
|
||||
let color = region.style().interact_stroke_color(&interact);
|
||||
let width = region.style().interact_stroke_width(&interact);
|
||||
|
||||
let corner = rect.right_bottom().round(); // TODO: round to pixels
|
||||
let corner = interact.rect.right_bottom().round(); // TODO: round to pixels
|
||||
let mut w = 2.0;
|
||||
|
||||
while w < 12.0 {
|
||||
|
|
Loading…
Reference in a new issue