Sfoglia il codice sorgente

Update focus mask only if there is a focused control, fixes #26524

Juan Linietsky 6 anni fa
parent
commit
03cafd4895
1 ha cambiato i file con 3 aggiunte e 1 eliminazioni
  1. 3 1
      scene/main/viewport.cpp

+ 3 - 1
scene/main/viewport.cpp

@@ -1783,13 +1783,15 @@ void Viewport::_gui_input_event(Ref<InputEvent> p_event) {
 				*/
 
 				gui.mouse_focus = _gui_find_control(pos);
-				gui.mouse_focus_mask = 1 << (mb->get_button_index() - 1);
 				gui.last_mouse_focus = gui.mouse_focus;
 
 				if (!gui.mouse_focus) {
+					gui.mouse_focus_mask = 0;
 					return;
 				}
 
+				gui.mouse_focus_mask = 1 << (mb->get_button_index() - 1);
+
 				if (mb->get_button_index() == BUTTON_LEFT) {
 					gui.drag_accum = Vector2();
 					gui.drag_attempted = false;