MixedRealityToolkit-Unity icon indicating copy to clipboard operation
MixedRealityToolkit-Unity copied to clipboard

Keyboard not shown up when immersive app and a 2D app like edge are running

Open tletie opened this issue 3 years ago • 9 comments

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:

  1. Build and deploy the example app from the MRTK using "MRTKExamplesHub" as the stating scene
  2. Select "Hand Interaction Examples" scene => At "Keyboard Interaction" section => select "Open the native keyboard..." button
  3. Virtual Keyboard will be shown for user to input text
  4. Use "Home" gesture to bring up Home screen => launch "Edge". Leave Edge running and don't close it.
  5. 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.
  6. 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.

tletie avatar Nov 02 '21 21:11 tletie

Thanks for filing this @tletie. We need to do some investigation to determine if this is an MRTK bug or a Unity bug.

polar-kev avatar Nov 03 '21 19:11 polar-kev

@MaxWang-MS & @polar-kev any update on the issue?

tletie avatar Nov 12 '21 15:11 tletie

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 avatar Nov 20 '21 01:11 MaxWang-MS

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 avatar Nov 22 '21 18:11 keveleigh

@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.

MaxWang-MS avatar Nov 22 '21 19:11 MaxWang-MS

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?

tletie avatar Nov 22 '21 20:11 tletie

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 avatar Nov 22 '21 20:11 MaxWang-MS

@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.

tletie avatar Nov 22 '21 20:11 tletie

Ping @MaxWang-MS and @keveleigh ; any updates on this/is this still reproing?

Zee2 avatar Aug 31 '22 17:08 Zee2

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!

IssueSyncBot avatar Jan 13 '24 00:01 IssueSyncBot