Add an API to signal the application that the renderer process crashed
Bug #1375272 reported by
Olivier Tilloy
This bug affects 5 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Oxide |
Fix Released
|
High
|
Olivier Tilloy | ||
webbrowser-app (Ubuntu) |
Fix Released
|
High
|
Olivier Tilloy |
Bug Description
It would be handy for applications to receive a signal from the WebView when the associated renderer process crashes.
This would allow e.g. the webbrowser application to display an error page and offer the user to try and reload the page that caused the crash.
Related branches
lp:~osomon/oxide/renderProcessGone
- Chris Coulson: Approve
-
Diff: 393 lines (+173/-2)12 files modifiedqt/core/browser/oxide_qt_web_view.cc (+21/-0)
qt/core/browser/oxide_qt_web_view.h (+4/-0)
qt/core/glue/oxide_qt_web_view_proxy.h (+8/-0)
qt/core/glue/oxide_qt_web_view_proxy_client.h (+2/-0)
qt/qmlplugin/oxide_qml_plugin.cc (+2/-0)
qt/quick/api/oxideqquickwebview.cc (+22/-0)
qt/quick/api/oxideqquickwebview_p.h (+12/-0)
qt/quick/api/oxideqquickwebview_p_p.h (+1/-0)
qt/tests/qmltests/api/tst_WebView_webProcessStatus.qml (+40/-0)
qt/tests/qmltests/oxide_qml_testing_plugin.cc (+49/-1)
shared/browser/oxide_web_view.cc (+9/-1)
shared/browser/oxide_web_view.h (+3/-0)
lp:~osomon/webbrowser-app/webProcessStatus
- PS Jenkins bot: Approve (continuous-integration)
- Riccardo Padovani (community): Approve
- Ubuntu Phablet Team: Pending requested
-
Diff: 650 lines (+460/-34)10 files modifieddebian/control (+1/-0)
src/app/WebProcessMonitor.qml (+79/-0)
src/app/webbrowser/Browser.qml (+40/-19)
src/app/webbrowser/SadTab.qml (+92/-0)
src/app/webbrowser/tabs-model.cpp (+4/-3)
tests/autopilot/webbrowser_app/emulators/browser.py (+16/-0)
tests/autopilot/webbrowser_app/tests/__init__.py (+11/-0)
tests/autopilot/webbrowser_app/tests/test_sad_tab.py (+74/-0)
tests/unittests/qml/tst_WebProcessMonitor.qml (+108/-0)
tests/unittests/tabs-model/tst_TabsModelTests.cpp (+35/-12)
Changed in oxide: | |
assignee: | nobody → Olivier Tilloy (osomon) |
importance: | Undecided → High |
status: | New → Confirmed |
Changed in oxide: | |
status: | Confirmed → In Progress |
Changed in oxide: | |
milestone: | none → branch-1.8 |
Changed in oxide: | |
status: | In Progress → Fix Released |
Changed in webbrowser-app: | |
status: | New → In Progress |
assignee: | nobody → Olivier Tilloy (osomon) |
importance: | Undecided → High |
Changed in webbrowser-app (Ubuntu): | |
status: | New → In Progress |
assignee: | nobody → Olivier Tilloy (osomon) |
importance: | Undecided → High |
no longer affects: | webbrowser-app |
To post a comment you must log in.
We can use observe NOTIFICATION_ RENDERER_ PROCESS_ CLOSED to get notified when a renderer process is closed (either because it was killed or because it crashed).
If the process was killed (most likely by the OOM killer), the embedder probably wants to try and reload the view automatically, whereas if it crashed some sort of visual feedback should be displayed to inform the user.