Browse Source

Fix mouse offset for unfocused popups

On Windows, the mouse was offset, when unfocused popups were used,
like the Editor menu.
Markus Sauermann 3 years ago
parent
commit
88feacdad5
1 changed files with 6 additions and 0 deletions
  1. 6 0
      platform/windows/display_server_windows.cpp

+ 6 - 0
platform/windows/display_server_windows.cpp

@@ -2882,6 +2882,12 @@ LRESULT DisplayServerWindows::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARA
 			old_x = mm->get_position().x;
 			old_y = mm->get_position().y;
 
+			if (!windows[receiving_window_id].window_has_focus) {
+				// In case of unfocused Popups, adjust event position.
+				Point2i pos = mm->get_position() - window_get_position(receiving_window_id) + window_get_position(window_id);
+				mm->set_position(pos);
+				mm->set_global_position(pos);
+			}
 			Input::get_singleton()->parse_input_event(mm);
 
 		} break;