[webapps-container] Add proper support for multiple windows
Bug #1411722 reported by
Alexandre Abreu
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
webbrowser-app |
Fix Released
|
High
|
Alexandre Abreu | ||
webbrowser-app (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Add proper support for external window requests triggered from the browsing session in the container in cases such as:
- window.open,
- a href w/ blank target,
Related branches
lp://staging/~abreu-alexandre/webbrowser-app/window-open-overlay
- Olivier Tilloy: Approve
- PS Jenkins bot: Needs Fixing (continuous-integration)
-
Diff: 1006 lines (+612/-253)9 files modifiedsrc/app/webcontainer/PopupWindowController.qml (+181/-0)
src/app/webcontainer/PopupWindowOverlay.qml (+199/-0)
src/app/webcontainer/WebViewImplOxide.qml (+13/-130)
src/app/webcontainer/WebappContainerWebview.qml (+11/-1)
tests/autopilot/webapp_container/tests/__init__.py (+6/-0)
tests/autopilot/webapp_container/tests/fake_servers.py (+32/-11)
tests/autopilot/webapp_container/tests/test_popup_webview_overlay.py (+170/-0)
tests/autopilot/webapp_container/tests/test_redirection_pattern.py (+0/-59)
tests/autopilot/webapp_container/tests/test_url_patterns.py (+0/-52)
Changed in webbrowser-app: | |
status: | New → In Progress |
importance: | Undecided → High |
assignee: | nobody → Alexandre Abreu (abreu-alexandre) |
Changed in webbrowser-app: | |
status: | In Progress → Fix Released |
Changed in webbrowser-app (Ubuntu): | |
status: | New → Fix Released |
To post a comment you must log in.
This is good in that it adds the ability to open third-party sites without falling back to the core browser app, but it's a bit awkward since it uses a mechanism totally different than how the browser handles it. Multiple tabs might be nicer, so that the user could switch back and forth between the original app and the site(s) they opened. I tend to use the primary browser instead of site-specific webapps because it gives me regular tab and browser functions instead of the more limited functionality in webapps.