MixedRealityToolkit-Unity
MixedRealityToolkit-Unity copied to clipboard
Keyboard not shown up when immersive app and a 2D app like edge are running
Describe the bug
When an immersive application is running and user is focusing on a text input field, the virtual keyboard is shown just fine. However, if we have Edge running together with the above immersive app, user focusing on text input field inside immersive => no virtual keyboard is shown up. Edge or any other 2D app that has text input field takes over the keyboard.
To reproduce
Steps to reproduce the behavior:
- Build and deploy the example app from the MRTK using "MRTKExamplesHub" as the stating scene
- Select "Hand Interaction Examples" scene => At "Keyboard Interaction" section => select "Open the native keyboard..." button
- Virtual Keyboard will be shown for user to input text
- Use "Home" gesture to bring up Home screen => launch "Edge". Leave Edge running and don't close it.
- Go back to the "Keyboard Interaction" section => try to select "Open native keyboard..." button=> we hear a sound but the keyboard is not shown up.
- Go back to Edge and select the address bar => keyboard show up. Here is the video
Expected behavior
It would be nice to have keyboard still show up in immersive application for user to input even though other 2D application is running like Edge
Screenshots
If applicable, add screenshots to help explain your problem.
Your setup (please complete the following information)
- Unity Version 2018.4.32f1, 2019.4.14f1, 2020.3.19f1
- MRTK Version v2.2.0, 2.6.1, 2.7.2
Target platform (please complete the following information)
- HoloLens 2
Additional context
Add any other context about the problem here.
Thanks for filing this @tletie. We need to do some investigation to determine if this is an MRTK bug or a Unity bug.
@MaxWang-MS & @polar-kev any update on the issue?
After some investigation and also bringing this issue up with Unity we believe this behavior is due to a flaw/restriction in the WinRT API Unity/MRTK is calling so unfortunately we cannot fix the issue.
After some investigation and also bringing this issue up with Unity we believe this behavior is due to a flaw/restriction in the WinRT API Unity/MRTK is calling so unfortunately we cannot fix the issue.
@MaxWang-MS Has this been reported/suggested to the platform team?
@keveleigh Not yet, but not sure whether we have a path there as to fully resolve the issue a breaking change may be needed at the WinRT API level.
Thank you @MaxWang-MS and @keveleigh for looking/reponses to this. Is there a workaround or something like that can be done to get this solve or nothing we can do for now?
Unfortunately, we are not aware of anything you could do to work around this at the moment. If the use case is really important to you, please share more information on the use case and we may be able to pass the information to some other teams. That said, there will be no guarantee on whether/when this will be fixed due to the fact that it's beyond our team and Unity's control.
@MaxWang-MS . Thank for the response. The use case is any immersive application that need to use the text input field. Then we are in the app and then we need to open Edge browser to browse internet for some information that support the immersive app, or open a pdf files etc. In these case, we need to leave Edge open for the documentation but want to interact with text input of immersive app. This case we can't do it.
Thank you again for looking into this.
Ping @MaxWang-MS and @keveleigh ; any updates on this/is this still reproing?
We appreciate your feedback and thank you for reporting this issue.
Microsoft Mixed Reality Toolkit version 2 (MRTK2) is currently in limited support. This means that Microsoft is only fixing high priority security issues. Unfortunately, this issue does not meet the necessary priority and will be closed. If you strongly feel that this issue deserves more attention, please open a new issue and explain why it is important.
Microsoft recommends that all new HoloLens 2 Unity applications use MRTK3 instead of MRTK2.
Please note that MRTK3 was released in August 2023. It features an all new architecture for developing rich mixed reality experiences and has a minimum requirement of Unity 2021.3 LTS. For more information about MRTK3, please visithttps://www.mixedrealitytoolkit.org.
Thank you for your continued support of the Mixed Reality Toolkit!