- Google is working on changing the current Chrome-based PWAs restore session outcome.
- The aim is mainly to keep these apps separate from Chromium native ones.
- To this end, they proposed to separate PWAs from tabbed window browser session states.
- As a result, Chrome users should have more control over when or if they open PWAs.
Google is currently working on a project meant to change the restore session behavior of Chrome-based progressive web apps (PWAs) depending on several browser actions.
The idea isn’t new; Chrome developers started a debugging discussion thread back in 2019, after noticing that running PWAs are not restored when restarting Chrome. But when Chrome is quit, any running PWAs are also exited.
They also noted:
It probably makes sense to restore all running PWAs when Chrome is restarted.
On the other hand, in the current project, the developers will take into consideration several PWA behavior variables in an attempt to keep them separate from native apps:
In some circumstances, PWAs must be restored on browser restart. But PWA session state must be kept logically separate from tabbed window session state, to help maintain the illusion that PWAs are like native apps rather than part of the browser.
A separation between PWAs and browser tabs/windows
There’s much doubt about closing or restoring all open PWAs along with closing or restarting the Chrome browser. Similar discussions were around forced browser exits, crashes, shutdowns, or after browser updates.
The proposed and apparently accepted solution is a separate backend store, to separate PWAs and tabbed window session state. As a result, opening or closing PWAs should not impact browser restoration behavior:
When PWAs are restored attributes normally tracked for browser windows will be tracked and restored (e.g. window position, screen, dimension etc)
Opening a PWAs directly should not trigger restores like normal windows do. E.g. opening a Twitter PWA should do just that and nothing else; don’t restore PWAs, don’t open the browser (except on MacOS)
Opening a browser directly should behave as it does today – and still should not restore PWAs in most cases.
Consequently, after the fix is implemented, the user will control how or if PWAs are open if these were intentionally closed upon tab/browser exit.
Furthermore, the normal browser restoration and PWA restoration should not impact each other. Also, a session restoration might only restore either PWAs or browser tabs, separately.
PWAs on macOS will behave differently though, as stated, so the fix should only impact Windows and Linus systems.
According to the threads, the change is expected to be implement in Chromium 91.