Skip to content

Conversation

Visssarion
Copy link

A demo showing all Window classes and their use within the main window.

Preview:
screenshot

@Visssarion
Copy link
Author

Thanks @AThousandShips , your fixes of GDScript style has been commited.

@Visssarion
Copy link
Author

Noooooo there is more dialogue that i missed? ;-; Will look into it

@Calinou
Copy link
Member

Calinou commented Aug 15, 2024

Looks great so far!

I wonder if this demo should be used to showcase tray icons, or whether we should use the existing Operating System Testing demo for that instead.

@Visssarion
Copy link
Author

Looks great so far!

I wonder if this demo should be used to showcase tray icons, or whether we should use the existing Operating System Testing demo for that instead.

StatusIndicator is a separate class from OS, so I feel fine with adding it to this demo. Although that feature only working on Windows and MacOS does make it an OS specific thing.

Will make a commit later with adding tray functionality to this demo.

@Visssarion
Copy link
Author

Status Indicator Added to Demo
8S1wf2OVVP

@Visssarion Visssarion force-pushed the multiple-windows-demo branch from d4bf4eb to 9caa8e1 Compare August 15, 2024 10:58
@Visssarion
Copy link
Author

9 Commits were squashed into 1

@Visssarion
Copy link
Author

Fixed Draggable Window not receiving input when cursor doesn't overlap window.

@Visssarion Visssarion force-pushed the multiple-windows-demo branch from f196259 to dde8496 Compare August 18, 2024 15:49
Copy link
Member

@aaronfranke aaronfranke left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks pretty good! I think this demo is plenty sufficiently complex to justify it being separate from the OS testing demo.

Can you update this to Godot 4.5? It wouldn't be hard for others to do it but we will need to do it eventually.

@Visssarion
Copy link
Author

While i was migrating to 4.5 fixed a bug with FIleDialog not opening up

Co-Authored-By: A Thousand Ships <[email protected]>
Co-Authored-By: Aaron Franke <[email protected]>
@Visssarion Visssarion force-pushed the multiple-windows-demo branch from 24b8634 to 1255cc1 Compare October 2, 2025 21:27
@Visssarion
Copy link
Author

Visssarion commented Oct 2, 2025

Commits squashed! I'm pretty excited! 🎊
Also I committed all the code review changes, squashing the commits deleted that info from the GitHub logs

Copy link
Member

@aaronfranke aaronfranke left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When I try to drag an embedded subwindow, the rate does not match my cursor speed on my 200% scaled high-DPI screen:

subwindow.mp4

@Visssarion
Copy link
Author

When I try to drag an embedded subwindow, the rate does not match my cursor speed on my 200% scaled high-DPI screen:
subwindow.mp4

I honestly am not sure how to fix this problem? It seems that DisplayServer.mouse_get_position() returns an incorrect value for this under hugh-DPI. It also seems that the value is multiplied by scale, starting not from the (0, 0) of the window, but from the beginning of the mouse click. However, its not a variable that is saved in my code, so I am inclined to thing that something weird is happening in DisplayServer.mouse_get_position()

@deralmas
Copy link

deralmas commented Oct 4, 2025

I think that a better approach would be to use the new-ish Window.start_drag method, which asks the OS to start a drag directly :D

This should take care of everything and is also a requirement for Wayland dragging as it does not support window warping.

@Visssarion
Copy link
Author

Done! Did not know that function got added in 4.4

@aaronfranke
Copy link
Member

aaronfranke commented Oct 7, 2025

Weird, I think this was working before, but now when I uncheck "Embed Subwindows" on macOS, Godot half-freezes. Somehow I can click on text boxes, but not any other buttons. Also, right-clicking in a text box produces these errors:

Screenshot 2025-10-07 at 11 53 48 AM

I'm using Godot 4.5-stable on macOS.

Also, please update the project to Godot 4.5, there are diffs when opening because the project file says Godot 4.2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants