Merge pull request #53419 from TechnoPorg/rework-subwindows
This commit is contained in:
commit
07d2dfef7b
2 changed files with 2 additions and 5 deletions
|
@ -372,8 +372,6 @@ void Viewport::_sub_window_remove(Window *p_window) {
|
||||||
void Viewport::_notification(int p_what) {
|
void Viewport::_notification(int p_what) {
|
||||||
switch (p_what) {
|
switch (p_what) {
|
||||||
case NOTIFICATION_ENTER_TREE: {
|
case NOTIFICATION_ENTER_TREE: {
|
||||||
gui.embedding_subwindows = gui.embed_subwindows_hint;
|
|
||||||
|
|
||||||
if (get_parent()) {
|
if (get_parent()) {
|
||||||
parent = get_parent()->get_viewport();
|
parent = get_parent()->get_viewport();
|
||||||
RenderingServer::get_singleton()->viewport_set_parent_viewport(viewport, parent->get_viewport_rid());
|
RenderingServer::get_singleton()->viewport_set_parent_viewport(viewport, parent->get_viewport_rid());
|
||||||
|
@ -2546,7 +2544,7 @@ bool Viewport::_sub_windows_forward_input(const Ref<InputEvent> &p_event) {
|
||||||
if (mb.is_valid() && mb->is_pressed() && mb->get_button_index() == MouseButton::LEFT) {
|
if (mb.is_valid() && mb->is_pressed() && mb->get_button_index() == MouseButton::LEFT) {
|
||||||
bool click_on_window = false;
|
bool click_on_window = false;
|
||||||
for (int i = gui.sub_windows.size() - 1; i >= 0; i--) {
|
for (int i = gui.sub_windows.size() - 1; i >= 0; i--) {
|
||||||
SubWindow &sw = gui.sub_windows.write[i];
|
SubWindow sw = gui.sub_windows.write[i];
|
||||||
|
|
||||||
// Clicked inside window?
|
// Clicked inside window?
|
||||||
|
|
||||||
|
|
|
@ -362,7 +362,6 @@ private:
|
||||||
bool dragging = false;
|
bool dragging = false;
|
||||||
bool drag_successful = false;
|
bool drag_successful = false;
|
||||||
bool embed_subwindows_hint = false;
|
bool embed_subwindows_hint = false;
|
||||||
bool embedding_subwindows = false;
|
|
||||||
|
|
||||||
Window *subwindow_focused = nullptr;
|
Window *subwindow_focused = nullptr;
|
||||||
SubWindowDrag subwindow_drag = SUB_WINDOW_DRAG_DISABLED;
|
SubWindowDrag subwindow_drag = SUB_WINDOW_DRAG_DISABLED;
|
||||||
|
@ -373,7 +372,7 @@ private:
|
||||||
SubWindowResize subwindow_resize_mode;
|
SubWindowResize subwindow_resize_mode;
|
||||||
Rect2i subwindow_resize_from_rect;
|
Rect2i subwindow_resize_from_rect;
|
||||||
|
|
||||||
Vector<SubWindow> sub_windows;
|
Vector<SubWindow> sub_windows; // Don't obtain references or pointers to the elements, as their location can change.
|
||||||
} gui;
|
} gui;
|
||||||
|
|
||||||
DefaultCanvasItemTextureFilter default_canvas_item_texture_filter = DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_LINEAR;
|
DefaultCanvasItemTextureFilter default_canvas_item_texture_filter = DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_LINEAR;
|
||||||
|
|
Loading…
Reference in a new issue