[browser] All restored tabs are loaded at startup
Bug #1358599 reported by
Olivier Tilloy
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu UX |
Fix Released
|
Medium
|
Unassigned | ||
webbrowser-app |
Fix Released
|
High
|
Olivier Tilloy | ||
webbrowser-app (Ubuntu) |
Fix Released
|
Undecided
|
Olivier Tilloy |
Bug Description
When restoring a previous browsing session, a new tab is restored for each previously open tab, and a webview is instantly instantiated and loaded. With a large number of open tabs, this probably makes the startup time of the application longer, consumes more memory right away, and if on mobile data consumes more MBs too.
Only the webview for the first tab should be instantiated at first, other tabs should be empty placeholders which trigger the instantiation of the corresponding webview on demand.
This means we’re going to need to save and restore the title for each open tab (we’re currently saving and restoring only the current URL).
Related branches
lp:~osomon/webbrowser-app/lazy-webviews
- PS Jenkins bot: Needs Fixing (continuous-integration)
- Michael Sheldon (community): Approve
-
Diff: 1200 lines (+314/-203)12 files modifiedpo/webbrowser-app.pot (+17/-13)
src/app/webbrowser/Browser.qml (+98/-41)
src/app/webbrowser/TabPreview.qml (+33/-9)
src/app/webbrowser/TabsView.qml (+11/-7)
src/app/webbrowser/tabs-model.cpp (+36/-36)
src/app/webbrowser/tabs-model.h (+7/-7)
src/app/webbrowser/webbrowser-app.qml (+2/-1)
tests/autopilot/webbrowser_app/emulators/browser.py (+3/-0)
tests/autopilot/webbrowser_app/tests/__init__.py (+6/-0)
tests/autopilot/webbrowser_app/tests/test_session_save_restore.py (+1/-0)
tests/autopilot/webbrowser_app/tests/test_tabs.py (+6/-1)
tests/unittests/tabs-model/tst_TabsModelTests.cpp (+94/-88)
lp:~osomon/webbrowser-app/rtm-trunk-sync-20140826
- Ubuntu Phablet Team: Pending requested
-
Diff: 1480 lines (+432/-252)17 files modifiedpo/webbrowser-app.pot (+17/-13)
src/app/WebViewImpl.qml (+2/-0)
src/app/webbrowser/BookmarksModel.qml (+24/-0)
src/app/webbrowser/Browser.qml (+156/-84)
src/app/webbrowser/HistoryModel.qml (+24/-0)
src/app/webbrowser/TabPreview.qml (+33/-9)
src/app/webbrowser/TabsView.qml (+11/-7)
src/app/webbrowser/tabs-model.cpp (+36/-36)
src/app/webbrowser/tabs-model.h (+7/-7)
src/app/webbrowser/webbrowser-app.qml (+2/-1)
src/app/webcontainer/WebApp.qml (+9/-6)
src/app/webcontainer/WebappContainerWebview.qml (+1/-0)
tests/autopilot/webbrowser_app/emulators/browser.py (+3/-0)
tests/autopilot/webbrowser_app/tests/__init__.py (+6/-0)
tests/autopilot/webbrowser_app/tests/test_session_save_restore.py (+1/-0)
tests/autopilot/webbrowser_app/tests/test_tabs.py (+6/-1)
tests/unittests/tabs-model/tst_TabsModelTests.cpp (+94/-88)
Changed in webbrowser-app: | |
status: | New → Triaged |
importance: | Undecided → High |
assignee: | nobody → Olivier Tilloy (osomon) |
tags: | added: rtm14 |
Changed in webbrowser-app: | |
status: | Triaged → In Progress |
Changed in webbrowser-app (Ubuntu): | |
status: | New → In Progress |
assignee: | nobody → Olivier Tilloy (osomon) |
Changed in webbrowser-app: | |
status: | In Progress → Fix Released |
Changed in webbrowser-app (Ubuntu): | |
status: | In Progress → Fix Released |
Changed in ubuntu-ux: | |
status: | Fix Committed → Fix Released |
status: | Fix Released → Fix Committed |
summary: |
- All restored tabs are loaded at startup + [browser] All restored tabs are loaded at startup |
Changed in ubuntu-ux: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
currently there is also one location popup request per tab ... i wondered why i get multiple ones for a day every time i opened a fresh browser page ... until i noticed that over the day all external links i had clicked in any open webapps resulted in a tab being kept open in the background ... consuming resources (often with embedded videos etc)
i think it would be helpful if:
a) we had the number of open tabs somewhere visible in the top bar (i could imagine just having a number left or right of the burger menu, though indeed i'm no designer :) )
b) the location request would be shown only once for the app and not per-tab (i heard there is work going on to use the trust store which will fix this)