Skip to content

Commit

Permalink
Fix Screen-Transform missing in Button Size in OptionButton::show_popup
Browse files Browse the repository at this point in the history
The button size is affected by the screen transform, which was previously
not taken into consideration.
  • Loading branch information
Sauermann committed Feb 6, 2023
1 parent bcc3dff commit 084a4ad
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions scene/gui/option_button.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -491,9 +491,11 @@ void OptionButton::show_popup() {
return;
}

Size2 button_size = get_global_transform_with_canvas().get_scale() * get_size();
popup->set_position(get_screen_position() + Size2(0, button_size.height));
popup->set_size(Size2i(button_size.width, 0));
Rect2 rect = get_screen_rect();
rect.position.y += rect.size.height;
rect.size.height = 0;
popup->set_position(rect.position);
popup->set_size(rect.size);

// If not triggered by the mouse, start the popup with the checked item (or the first enabled one) focused.
if (current != NONE_SELECTED && !popup->is_item_disabled(current)) {
Expand Down

0 comments on commit 084a4ad

Please sign in to comment.