Re: [w3c/manifest] Proposal: Display Mode 'standalone-no-ui' (#659)

@Malvoz I would note that it wouldn't be possible for a technically competent user to be trapped. This is because operating systems typically allow the user to close windows from the taskbar, and certainly from the task manager. Additionally, to my knowledge, it's not possible for an app to run from browser startup, and an app can be completely uninstalled at any time by the user.

The problem potentially lies with users who are not aware of the different ways that a window can be closed, which malicious apps might exploit. Of course, this can happen with any native app, but perhaps Web standards have to employ a higher safety threshold. If it meant that this proposal were not possible, that would be a real shame for the pursuit of building more native-looking Web apps.

The [Fullscreen API](https://developer.mozilla.org/en-US/docs/Web/API/Fullscreen_API) could provide inspiration here. It requires (1) permission from the user, (2) provides a keybind to exit fullscreen, and (3) displays a message each time fullscreen is activated, reminding the user of the exit keybinding.

Something like this could be provided for `standalone-no-ui`. The browser could confirm with the user when they hit the exit keybind, to prevent accidental window closure. Additionally, the browser message displayed each time the app window is opened could display educational information alongside the exit keybind. It could let the user know that they can always close the window from their taskbar, or uninstall the app in browser settings. So this would (1) provide a ‘last resort’ keybind to exit the window, and (2) educate the user as to the different ways that a window can be closed.

As an aside, I’d be curious to hear how the existing `fullscreen` display mode works in this regard. I haven’t used or made an app which employs it, so I haven’t seen it in action.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/manifest/issues/659#issuecomment-372117278

Received on Sunday, 11 March 2018 13:54:06 UTC