Forráskód Böngészése

Merge pull request #61479 from kleonc/popupmenu-fix-hover-stylebox-overflow-3x

[3.x] `PopupMenu` Fix `hover` stylebox overflowing horizontally
Rémi Verschelde 3 éve
szülő
commit
b541b57fa0
1 módosított fájl, 2 hozzáadás és 1 törlés
  1. 2 1
      scene/gui/popup_menu.cpp

+ 2 - 1
scene/gui/popup_menu.cpp

@@ -499,7 +499,7 @@ void PopupMenu::_notification(int p_what) {
 			Ref<StyleBox> labeled_separator_left = get_stylebox("labeled_separator_left");
 			Ref<StyleBox> labeled_separator_right = get_stylebox("labeled_separator_right");
 
-			style->draw(ci, Rect2(Point2(), get_size()));
+			style->draw(ci, Rect2(Point2(), size));
 			Point2 ofs = style->get_offset();
 			int vseparation = get_constant("vseparation");
 			int hseparation = get_constant("hseparation");
@@ -552,6 +552,7 @@ void PopupMenu::_notification(int p_what) {
 
 				if (i == mouse_over) {
 					hover->draw(ci, Rect2(item_ofs + Point2(-hseparation, -vseparation / 2), Size2(get_size().width - style->get_minimum_size().width + hseparation * 2, h + vseparation)));
+					hover->draw(ci, Rect2(item_ofs + Point2(0, -vseparation / 2), Size2(size.width - style->get_minimum_size().width, h + vseparation)));
 				}
 
 				item_ofs.x += items[i].h_ofs;