Especially on devices with small screens it can be very useful to be able to run the HTML5 client in fullscreen. Fullscreen is not supported in Safari on iOS. The only way to achieve this is through adding to homescreen and in that way run the page in WebApp mode. See bug 4583
Created attachment 608 [details] Adds the option to toggle fullscreen in the HTML5 client
Created attachment 609 [details] Image for the fullscreen button
(In reply to comment #0) > Fullscreen is not supported in Safari on iOS. The only way to achieve this is > through adding to homescreen and in that way run the page in WebApp mode. See > bug 4583 We need to investigate whether fullscreen is supported in Chrome on iOS.
I have created a pullrequest upstream to see if people have any comments: https://github.com/kanaka/noVNC/pull/499
(In reply to comment #3) > We need to investigate whether fullscreen is supported in Chrome on iOS. It is not. http://www.mobilexweb.com/blog/chrome-ios-android-4-1-jelly-bean-html5 I have verified through testing as well. Thus I think we should hide the toggle-button on iOS, no matter the browser.
It is possible to detect fullscreen support so that we don't have to specify which platform (user agent) we have to exclude. I have updated the PR to use this. However, there are issues with fullscreen which we can't solve atm: * Safari blocks access to keyboard events in fullscreen mode (they say it's a security measure). * IE 11 does not allow scrolling when in fullscreen (and the scrollbars are not shown). We should consider not allowing fullscreen in Safari. We should also consider forcing clipping mode in Internet Explorer (= you won't get scrollbars but the 'hand' instead). And lastly, to summarize, the only relevant browsers that doesn't support fullscreen seem to be: * Safari on iOS * Chrome on iOS * IE 10 on Windows
Comment on attachment 608 [details] Adds the option to toggle fullscreen in the HTML5 client obsoleted by the upstream PR
See: https://bugs.webkit.org/show_bug.cgi?id=121496 It seems it is "only" alphanumerical keyboard input that is blocked in Safari.
Fixed in r30543 The result is: * The fullscreen button is not shown when fullscreen support is detected missing. * The fullscreen button is not shown in Safari since fullscreen is supported but alphanumerical keyboard input is disabled in fullscreen. * Clipping mode is forced on IE when scaling is disabled and we are in fullscreen. A popup status message is shown when entering fullscreen mode in IE to clarify what is happening.
Something is broken, the HTML5 client in the nightly build is unusable. The session never loads and the web-console shows: Uncaught TypeError: Cannot read property 'style' of null
(In reply to comment #10) > Something is broken, the HTML5 client in the nightly build is unusable. The > session never loads and the web-console shows: > > Uncaught TypeError: Cannot read property 'style' of null Fixed in r30651.
Pressing Escape in Firefox brings you out of full screen. This makes the feature rather difficult to use. Any way of blocking that?
Firefox on Android doesn't go completely full screen. You still have the status and button bar. Not sure if that is a limitation in Firefox, or something we're doing incorrectly? Chrome gives us the entire screen.
(In reply to comment #12) > Pressing Escape in Firefox brings you out of full screen. This makes the > feature rather difficult to use. Any way of blocking that? The same happens in Chrome, IE and Safari and there is no way of blocking it. Additionally F11 has the same behavior in Chrome. The browser vendors want to make sure the user always has a way of exiting fullscreen. (In reply to comment #13) > Firefox on Android doesn't go completely full screen. You still have the status > and button bar. Not sure if that is a limitation in Firefox, or something we're > doing incorrectly? Chrome gives us the entire screen. It seems like this is a limitation in Firefox on Android.
We've decided to revert this feature for now and await investigation on bug 4583.
(In reply to comment #15) > We've decided to revert this feature for now and await investigation on bug > 4583. The button is not displayed anymore. Putting this bug on same milestone as bug 4583.
Verified that a upgrade from 4.4.0 build 4868 to build 4874 removed the fullscreen toggle button.
(In reply to comment #9) > * Clipping mode is forced on IE when scaling is disabled and we are in > fullscreen. A popup status message is shown when entering fullscreen mode in IE > to clarify what is happening. This is no longer true after r32206.
Fullscreen might also be interesting as it allows more use of the keyboard in some browsers (at least Chrome). I.e it partially solves bug 4755.
I retested full screen on Safari, I had to modify noVNC's full screen setting which is disabled on iOS and iPad OS. The behavior is better than historically but still not ideal. When in full screen and pressing the side-bar keyboard button full screen will exit in order for keyboard input to work. This might translate to an OK user experience if we can trigger to re-enable full screen automatically when the on screen keyboard is closed.