2
0
Эх сурвалжийг харах

Fixes button flashing when releasing mousebutton outside

fossegutten 5 жил өмнө
parent
commit
b728d3bd18

+ 9 - 1
scene/gui/base_button.cpp

@@ -171,9 +171,17 @@ void BaseButton::on_action_event(Ref<InputEvent> p_event) {
 		}
 		}
 	}
 	}
 
 
-	if (!p_event->is_pressed()) { // pressed state should be correct with button_up signal
+	if (!p_event->is_pressed()) {
+		Ref<InputEventMouseButton> mouse_button = p_event;
+		if (mouse_button.is_valid()) {
+			if (!has_point(mouse_button->get_position())) {
+				status.hovering = false;
+			}
+		}
+		// pressed state should be correct with button_up signal
 		emit_signal("button_up");
 		emit_signal("button_up");
 		status.press_attempt = false;
 		status.press_attempt = false;
+		status.pressing_inside = false;
 	}
 	}
 
 
 	update();
 	update();