microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
162.57k stars 28.66k forks source link

iPadOS: can not go to full screen #106972

Open alefragnani opened 4 years ago

alefragnani commented 4 years ago

Steps to Reproduce:

  1. Open Codespaces
  2. Enter Zen Mode (Cmd K Z)
  3. Try using any keyboard shortcut like Cmd Shift P (Command Palette), Delete Line (Cmd Shift K)
  4. Result: Not working
  5. I didn’t test on Deskopt (yet)

Does this issue occur when all extensions are disabled?: Yes

isidorn commented 4 years ago

On desktop this just works. Forwarding to @bpasero as he knows what is the proper thing to do with Codespaces issues.

bpasero commented 4 years ago

@rebornix maybe has a clue

alefragnani commented 4 years ago

Yes, it works on Desktop 👍

But is it expected the ESC key, when pressed in Command Palette, to leave the full screen mode instead of simply cancel the Command Palette and return to the editor?

I'm on MacOS, btw.

bpasero commented 3 years ago

I cannot reproduce this. I added a Codespace to my homescreen and entering Zen mode seems to work fine and keys continue to work for me. Does it still fail?

alefragnani commented 3 years ago

I just tested, and it is not failing, but it is not entering Zen Mode too 😢 . At least not like it used to be, and like Desktop version does .

When activating Zen Mode now, it just removes the Side Bar and the Status Bar. It is not removing the Safari’s address bar and buttons, like it used to do. It misses the Full screen appearance.

Then, I decided to run View: Toggle Full Screen command, expecting it to merge the behavior, but the command fails. It starts to enter the mode, hiding Safari address bar/buttons and adding a floating Close button at left, but then it stops and returns to the previous state. This seems exactly the same behavior I saw on Zen Mode a couple of days after I filled this issue, which was apparently a workaround to avoid the issue, until being properly addressed.

After running View: Toggle Full Screen command, the Zen Mode command starts to fail just like before. It appears it is trying to enter Full Screen as well. Even if I open another Codespace, the issue remains.

Thank you

bpasero commented 3 years ago

Yeah I see the same when just trying in Safari without PWA mode, but can you please try PWA?

alefragnani commented 3 years ago

Using PWA it indeed work (first time using a PWA on iPad TBH 😬).

It’s a smart alternative, because in fact those Safari pieces are not there, already giving a full screen appearance. The downside, you end up with a PWA for each Codespace.

BTW, I just noted why you had to remove the Predictive Keyboard on #108111. It appears PWA works differently from the browser itself.

Thank you

alefragnani commented 3 years ago

Unfortunately, the problem remains, but I would say, it’s “unstable”.

I mean, most of the time it does not work, but sometimes (I couldn’t detect if there is a pattern), it works, just like in PWA.

I’ve attached a screen recording, so you could see exactly what happens.

https://user-images.githubusercontent.com/3781424/103790845-7b230400-5020-11eb-9889-9413d7ca1b61.MP4

Thank you

alefragnani commented 3 years ago

I just tested it again, and the problem remains.

I’m not sure what kind of information do you need.

Thank you

isidorn commented 3 years ago

Assigning to May to investigate

isidorn commented 3 years ago

Okey I just tried this out and the only problem I am seeing is that F1 > toggle full screen does not go into fullscreen

After I enter zen mode all the keyboard shortcuts work as expected and everything is fine. So the gist of the issue at least for me is that we are not going into full screen on safari on iPad properly. I am on latest Safari beta.

@alefragnani please let me know if there is something I am missing @bpasero I saw we have this custom code for going into full screen on Safari here I tried experimenting with those various go into full screen mode tricks from and none seem to work. Maybe some ideas?

bpasero commented 3 years ago

I think @rebornix added that fullscreen code.

isidorn commented 3 years ago

I just spent too much time on this without any results. It seems like as soon as we enter Full Screen mode we automatically exit it. I could not find out why, even though I commented out all the full screen "reaction code". The best I can do is create a bad issue on the webkit list hoping Safari folks might have an idea https://bugs.webkit.org/show_bug.cgi?id=226094

The best workaround I can offer for now is that I disable full screen mode, and that zen mode does not go into fullscreen.

alefragnani commented 3 years ago

@isidorn, nothing to add 👍. The behavior you experienced is exactly what I reported, as you can see in the video added in the comment above

Thank you

alefragnani commented 3 years ago

Just to let you know, I’ll try to reproduce another visual glitch I just found while playing it again to answer your question.

After playing a bit with Zen Mode, Full Screen and Showing/Hiding the Side Bar, and switching between apps, while returning to Codespaces PWA, this happened. It doesn’t seems to be the width of the Side Bar, but I’m not entirely sure.

IMG_0116

If I can detect the steps to reproduce the error, I’ll open a separate issue.

Thank you

isidorn commented 3 years ago

@alefragnani Okey so for now let's give the Safari people time to respond or maybe someone from the community. If there are no good ideas I will simply disable full screen mode on the ipad.

As for the layout issue I could not reproduce this. If you find steps please open a new issue and feel free to ping me @isidorn on it! Thanks a lot

isidorn commented 3 years ago

I have disabled the full screen on iOS. For now leaving this one open as upstream and assigning to backlog if Safari provides a programatic way to enter full screen mode.

butterflyhug commented 3 years ago

FYI #122319 was closed as a likely duplicate of this issue, but in that case the problem was reported when running VS Code as a PWA in Chrome for Mac.

hkhking commented 3 years ago

i get it 😄

IMG_06A1EE9671A8-1

os: ipados 15 device:ipad pro 2021

step: 1、 pin icon to desktop 2、open & reload