Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

[Editor] Re-introduce workaround for missing input while navigating #1897

Merged
merged 2 commits into from
Oct 29, 2023

Conversation

Eideren
Copy link
Collaborator

@Eideren Eideren commented Oct 6, 2023

PR Details

Looked into this issue for the past two weeks, and still no clue as to what the heck is going on here.
Right now the workaround is only active while right click is being held in the scene view, keeping drag and drop working as intended.

Microsoft Spy++ does show all key message as being received by the window, but the different WndProc and PeekMessage do not receive some of the key up and key down.

Also included a very small change to improve how fast the view is brought back when swapping between tabs. Detach occurs every time tabs are changed, there's no need to unparent the window at that time.

Related Issue

#94

Types of changes

  • Docs change / refactoring / dependency upgrade
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist

  • My change requires a change to the documentation.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

@Ethereal77
Copy link
Contributor

Ethereal77 commented Oct 6, 2023

As GameStudio is registering correctly all the input, maybe a possible solution is to create an editor service that registers all input that should be directed to a game or preview instance, and then passes those inputs "manually" (as custom messages, for example) via one of the hidden "editor game systems".

That way the GameStudio can use raw input or whatever it's more appropriate, filter and/or massage the received input as it pleases, then send the final input to the game window.

@Eideren
Copy link
Collaborator Author

Eideren commented Oct 6, 2023

That's what I intended to do initially, but if we were to implement something this involved I would much rather we have someone more knowledgeable about windows' internals fix this issue altogether as the bug here is likely not just affecting inputs. Or replace the entire windowing and input system in editor with a wpf surface or something similar.
It would also introduce some added input latency, and it feels like we already have more than enough of that as is on the editor side.

@Eideren
Copy link
Collaborator Author

Eideren commented Oct 16, 2023

This is still making it really hard for users to navigate around the scene view.
Will merge this in soon if there are no objections.

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

Successfully merging this pull request may close these issues.

2 participants